第四个命令:NAT 与GLOBAL、STATIC命令
使用NAT(网络地址转换)命令,网络管理员可以将内部的一组IP地址转换成为外部的公网地址;而global命令则用于定义用网络地址转换命令NAT转换成的地址或者地址的范围。简单的说,利用NAT命令与GLOBAL命令,能够实现IP地址之间的转换,还可以实现IP地址到端口的映射。
这个网络地址转换命令在实际工作中非常的有用。我们都知道,现在公网IP地址非常的缺乏,基本上,一家企业只有一到两个公网地址。而对于企业来说,他们的文件服务器、OA系统、邮件服务器等等可能都需要外部访问,而如果没有NAT技术的话 ,则在公网中要进行访问的话,必须具有公网的IP地址。这就大大限制了企业内部信息化系统的外部访问,家庭办公、出差时访问企业内部网络等等,变的无法实现。而现在网络地址转换技术,就是为解决这个问题而产生的。在网络地址转换技术的帮助下,可以把企业内部的IP地址跟端口唯一的映射到外部公网的IP地址。如此的话,内网的IP地址就有了一个合法的公网IP地址,则在公司外面的员工就可以通过互联网访问企业内部的信息化系统。
在实际工作中,用的最多的就是将本地地址转换为一个担搁的全局地址,而不是一个地址范围。如公司内部的ERP服务器IP地址为192.168.0.6,此时,若我们希望,外部的员工,如在其他城市的一个销售办事处,他们能够利用202.96.96.240这个公网地址访问这台服务器。若要实现这个需求,该如何配置呢?
Static (inside,outside) 192.168.0.6 202.96.96.236
此时,外部用户就可以利用这个202.96.96.236公网IP地址,来访问企业内部的ERP系统。
其实,配置了这条命令之后,在防火墙服务器中,就有了这个一一对应的关系。当外部网络通过访问202.96.96.236这个IP地址时,在防火墙服务器中,就会把这个IP地址转换为192.268.0.6,如此就实现了外部网络访问企业的内部信息化系统。
不过,此时若不止这么一个信息化系统,现在OA系统(192.168.0.5)与ERP系统(192.168.0.6),在家办公的人或者出差在外的人都需要能够访问这两个服务器,此时,该如何处理呢?
如企业有两个公网IP地址,那也好办,只需要把OA系统与ERP系统分别对应到一个公网IP地址即可。但是,现在的问题是,企业只有一个IP地址,此时,该如何处理呢?为此,我们可以利用static命令,实现端口的重定向。简单的说,端口重定向,允许外部的用户连接一个内部特定的IP地址与端口,并且让防火墙将这个数据流量重定向到合适的内部地址中去。
作者提醒
1、 应该有足够的全局IP地址去匹配NAT命令指定的本机IP地址。否则的话,可以结合使用PAT(根据端口对应IP地址)来解决全局地址的短缺问题。而对于绝大部分中国企业来说,基本上地址都是不够的,要采用PAT技术来解决地址短缺问题。PAT技术,最多允许64000个客户端(内部IP地址)使用同一个公网的IP地址。
2、 网络地址转换除了可以解决公网ID地址短缺问题的话,还有一个很好的副作用。就是可以把内部的主机隐藏起来,从而实现内部主机的安全性。如上面的例子中,如外面的用户需要访问企业内部的ERP服务器的话,则他们只需要知道公网地址就可以了,不需要知道到底他们访问的是内部的那台服务器,这台服务器的IP地址是多少。如此的话,就可以最大限度的保护企业内部服务器的安全。
第五个命令:ICMP命令
当我们做好相关的配置之后,接下去的工作我们就需要利用测试命令,来判断我们所配置的准确性。最基本的两个测试命令,就是PING与DEBUG命令。
Ping 命令我们网络管理员都是很熟悉的了。但是,在防火墙中有一个比较特殊的地方,就是在默认情况下,防火墙会拒绝所有来自于外部接口的ICMP输入流量。当我们PING 一个外网的IP地址时,若跟对方连接通畅的话,则对方会返回一个ICMP响应的回答。而防火墙默认的情况下,是会拒绝这个ICMP流量的。这主要是出于安全方面的考虑。但是,在我们进行测试的时候,我们不喜欢防火墙禁止接收这个ICMP响应回答,不然的话,我们就无法进行测试工作了。
所以,在防火墙刚刚开始配置的时候,我们往往需要让防火墙允许接收这个流量,我们需要利用permit命令来让防火墙通过这个流量。
我们可以利用这条命令来实现这个需求:icmp permit any any outside。这个命令的意识就是允许ICMP协议在防火墙上畅通无阻的运行,允许防火墙接收来自外部的ICMP流量。
笔者提醒
不过,在测试完以后,最好还是能够还原原先的设置,即让防火墙拒绝接收这个来自外部接口ICMP流量,这对于提高企业内部的安全性,非常有帮助,如可以很好的防止DOS攻击,等等。
第六个命令:write memory.
一般来说,我们在对防火墙配置所做的更改,是不会直接写入当防火墙的闪存中的。防火墙如此的设计,是为了防止网络管理员万一不小心,做了一些难以恢复的设置时,只需要重新启动一下防火墙,就可以恢复以前的设置了。也就是说在,对防火墙的更新配置,在没有应该命令把他写入到闪存中,防火墙一般都是先把它存放在RAM 中。而RAM中的数据,当防火墙重新启动后,都会丢失。
所以,当配置测试完成之后,千万要记住,要利用write memory命令,把相关的更改配置写入到闪存中。如此的话,才能够在防火墙重新启动后,这些相关的配置仍然能够起作用。
笔者提醒
在没有测试之前,最好不要把更改配置写入到闪存中。因为一旦写入到闪存中,你若做了一些难以恢复的配置,而在测试的时候出现了问题,此时,你只能够重置防火墙,以前的配置将会全部丢失,回复到出厂状态,那对于我们网络管理员来说,是个很大的打击。所以,一般需要对相关的配置测试无误后,才能够利用这个命令,永久的保存配置。
不过,在防火墙配置的时候,要注意不要断电,否则的话,你做的配置将会全功尽弃。不过,若在防火墙一端,接上UPS电源,是一个比较明智的做法。