网络防火墙

在设置过滤规则时,应当注意以下问题:
第一,如果只是禁止某些协议和应用时,当前面规则一一列出“个别禁止”,并在最后规则中应当设置“全部允许”。例如,除了 ICMP 和蠕虫病毒所使用的端口外,允许其他所有网络应用,则键入下述规则:
admin@NetST> add rule any any 134:139 any drop any
admin@NetST> add rule any any 445 any drop any
admin@NetST> add rule any any 9995:9996 any drop any
admin@NetST> add rule any any 4444 any drop any
admin@NetST> add rule any any 5554 any drop any
admin@NetST> add rule icmp any any any drop any
admin@NetST> add rule any any any any accept any
第二,如果只是允许某些协议和应用时,当前面规则一一列出“个别允许”,并在最后规则中应当设置“全部禁止”。例如,除了常用的网络服务外,禁止其他所有的网络应用,则键入下述规则:
admin@NetST> add rule any any 80 any accept any
admin@NetST> add rule any any 21 any accept any
admin@NetST> add rule any any 110 any accept any
admin@NetST> add rule any any 25 any accept any
admin@NetST> add rule any any 8000 any accept any
admin@NetST> add rule any any 554 any accept any
admin@NetST> add rule icmp any any any accept any
admin@NetST> add rule any any any any drop any
第三,过滤规则通常设置在内网端口,因为默认情况下,所有端口都是拒绝的。

6. 网络地址转换配置

网络地址转换( NAT Network Address Translation )是在 IP 地址资源日趋紧张的情况下出现的一种技术,可以将网络内部的 IP 地址映射为一个合法的 IP 地址,实现 Internet 连接共享,甚至可以借助端口映射实现对内部服务器的访问。 NAT 不仅完美地解决 IP 地址不足的问题,而且还能有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。
NAT 分为源 NAT 和目的 NAT 两种。源 NAT 是指,转换前源 IP 地址和转换后源 IP 地址不同,数据进入防火墙后,防火墙将其源地址进行转换后再将其发出,使外部看不到数据包原来的源地址。目的 NAT 是指,转换前目的 IP 地址和转换后目的 IP 地址不同(对于 TCP/UDP 协议,也可以改变端口号),数据进入防火墙后,防火墙将其目的 IP 地址进行转换后再将其发出,使看不到数据包原来的目的地址。在进行 NAT 时,如果是一个地址到一个地址的转换,称为一对一模式;如果是一个网段地址对到一个地址的转换,称为多对一的转换;如果是一个网段地址到一个网段地址的转换,称为多对多的转换。 IP 伪装就属于源 ANT ,而端口映射和透明代理等属于目的 NAT
NAT 从另一个角度也可分为静态和动态两种。静态方式是明确指定了转换前后的地址和端口的情况,可以有一对一、多对一、多对多等方式。如果实际地址发生变化, NAT 规则必须相应改变;而动态方式也就是 IP 伪装方式,是一种多到一的源 NAT 转换模式,一般只需指定转换前的地址,转换后的地址则是防火墙的 IP 地址,此地址是可以动态改变的,而 NAT 规则可以不变。静态 NAT 一般用在防火墙拥有固定 IP 地址的情况,而动态 NAT 则用于防火墙拥有动态 IP 地址的情况。
一般来说,源 NAT 多用于从内部网络到外部网络的访问,内部网络地址可以是保留 IP 地址;目的 NAT 多用于外部网络到内部服务器的访问,内部服务器可使用保留 IP 地址。当使用透明模式时,由内到外的访问实际上是一种目的 NAT ,是将访问的目的 IP 和目的端口转换为代理服务器的 IP 和代理端口。
使用目的 NAT 功能时,可实现负载均衡( Load Balance LB )功能,假设防火墙外网接口上有一个合法 IP 地址,内部有多个服务器同时提供服务,当将访问防火墙外部接口 IP 的访问请求转换为这一组内部服务器的 IP 地址时,访问请求就可以在这一组服务器进行均衡。
1)增加NAT规则
若欲将 NAT 规则增加到 NAT 规则表的最后,可使用下述命令:
add nat type ori_src_ip ori_dst_ip ori_port trans_src_ip trans_dst_ip trans_port
命令参数包括 NAT 类型( type )、转换前源 IP 地址( ori_src_ip )、转换前目的 IP 地址( ori_dst_ip )、转换前端口( ori_port )、转换后源 IP 地址( trans_src_ip )、转换后目的 IP 地址( trans_dst_ip )和转换后端口( trans_port )。 NAT 类型可以是静态 NAT static )或动态 NAT dynamic )。
转换前 IP 地址格式为带掩码的点分格式“ xxx.xxx.xxx.xxx/xx ”,如果是一个网络,必须带“ /xx ”掩码位,否则,就被认为是一台主机,或者用“ any ”表示任意 IP 地址。转换后 IP 地址不带掩码位,若是网络,则采用“ xxx.xxx.xxx.xxx - xxx.xxx.xxx.xxx ”形式。端口主要针对 TCP 协议或 UDP 协议而言,如 http (80) ftp (21) smtp (25) POP3 (110) 等。在输入时,既可以采用名称方式,也可以采用数字方式,用“ any ”表示任意端口,也可用“ xx:xx ”方式表示端口段。在 IP 地址和服务类型前加“ ~ ”表示取反,即表示除此地址或服务之外的所有其他地址或服务,“ any ”无取反意义。缺省情况下,端口指的是 TCP 协议端口,当端口名或端口号前加大写字母“ U ”时,表示是 UDP 协议端口。
需要注意的是,源 NAT 和目的 NAT 不能同时使用。当转换前端口与转换后端口不同时,就为端口转发。与过滤规则一样, NAT 规则中的地址 / 服务设置也支持取反( ~ )。
例如,网络防火墙采用静态 IP 地址。若欲将网段 192.168.10.0 映射为 61.159.62.158 ,以实现 Internet 连接共享,则执行下述操作:
admin@NetST> add nat
Enter NAT type (static-s, dynamic-d): static
Enter original source IP address (xxx.xxx.xxx.xxx): 192.168.10.0/24
Enter original destination IP address (xxx.xxx.xxx.xxx): any
Enter original port: any
Enter translated source IP address (xxx.xxx.xxx.xxx): 61.159.62.158
Enter translated destination IP address (xxx.xxx.xxx.xxx): any
Enter translated port: any
Add NAT item success!
2)修改NAT规则
若欲修改在 NAT 规则表的指定位置处的 NAT 地址,键入下述命令:
modify nat number type ori_src_ip ori_dst_ip ori_port trans_src_ip trans_dst_ip trans_port
序号参数“ number ”用于指定欲修改 NAT 规则,其他参数与增加 NAT 规则命令完全相同。当有参数不变时,用“ * ”代替,或者在分段输入时直接敲回车。
例如,若欲修改第 5 条规则,将转换后源 IP 地址设置为 61.159.62.169 ,则执行操作如下:
admin@NetST> modify nat
Enter NAT item number: 5
Enter NAT type (static-s, dynamic-d):
Enter original source IP address (xxx.xxx.xxx.xxx):
Enter original destination IP address (xxx.xxx.xxx.xxx):
Enter original port:
Enter translated source IP address (xxx.xxx.xxx.xxx):
Enter translated destination IP address (xxx.xxx.xxx.xxx): 61.159.62.169
Enter translated port:
Add NAT item success!
3)插入NAT规则
若欲在 NAT 规则表中的指定位置插入 NAT 规则,键入下述命令:
insert nat number type ori_src_ip ori_dst_ip ori_port trans_src_ip trans_dst_ip trans_port
序号参数“ number ”用于指定欲插入的位置,插入的 NAT 规则即成为第 number NAT 规则,其他参数与增加 NAT 规则命令完全相同。
例如,若欲插入第 2 条规则,并且将内部服务器 192.168.100.10 转换为合法 IP 地址 61.159.62.160 ,则执行下述操作:
admin@NetST> insert nat
Enter NAT item number: 2
Enter NAT type (static-s, dynamic-d): static
Enter original source IP address (xxx.xxx.xxx.xxx): any
Enter original destination IP address (xxx.xxx.xxx.xxx): 192.168.100.10
Enter original port: any
Enter translated source IP address (xxx.xxx.xxx.xxx): any
Enter translated destination IP address (xxx.xxx.xxx.xxx): 61.159.62.160
Enter translated port: any
Add NAT item success!
4)移动NAT规则
若欲移动 NAT 规则中的规则,执行下述命令:
move nat number step
参数包括 NAT 序号( number )和移动步数( step )。命令将 NAT 的第 number 条规则移动 step 位, step 为正是后移,为负是前移。如果移动步数超过了第一条或最后一条规则,就将该规则设置为第一条或最后一条规则。
例如,将第 5 条规则向前移动两步,则执行下述操作:
admin@NetST> move nat
Enter nat number: 5
Enter step: -2
Move nat sueecss!
5)显示NAT规则
若欲显示 NAT 规则表,可执行下述命令:
Show nat [ number ]
参数“ number ”用于指定显示的 NAT 规则号或范围(使用“ - ”分隔)。若指定 NAT 规则号,则只显示指定的 NAT 规则信息;若不具体指定规则号,则显示所有 NAT 规则信息。
例如,若欲查看第 3 条规则,可执行下述命令:
admin@NetST> show nat 3
No.      Type     Original_src_IP/Mask      Trans_src_IP/Mask
                  Original_dst_IP/Mask      Trans_dst_IP/Mask
                  Original_port             Trans_ port
3       STATIC    10.10.0 .0/24             192.168.1.100
                  ANY                    ANY
                  ANY                    ANY
6)删除NAT规则
若欲删除某条 NAT 规则,可执行下述命令:
delete nat number
其中,参数“ number ”用于指定删除的规则。若欲删除多个 NAT 规则,可以使用“ - ”指定范围,或使用空格指定若干规则。
例如,若欲删除第 3 条规则,可执行下述操作:
admin@NetST> delete nat
Enter NAT item number: 3
It will delete NAT item 3. Are you sure (y/n) ? y
Delete NAT item success!
又如,若欲删除第 1~3 条规则,可执行下述操作:
admin@NetST> delete nat 1-3
It will delete NAT item 1-3. Are you sure (y/n) ? y
Delete NAT item success!
再如,若欲删除第 1 3 条规则,可执行下述操作:
admin@NetST> delete nat 1 3
It will delete NAT item 1 3. Are you sure (y/n) ? y
Delete NAT item success!
7)删除全部NAT规则
若欲删除所有的 NAT 规则,使用下述命令:
Delall nat
例如,若欲删除所有规则,可执行下述操作:
admin@NetST> delall nat
It will delete all NAT item. Are you sure (y/n) ? y
Delete all NAT item success!
admin@NetST> show nat
Error: No any NAT item!
8)使NAT规则起作用
若欲启用某条 NAT 规则,使用下述命令:
enable nat number
例如,若欲启用第 5 条规则,可执行下述操作:
admin@NetST> enable nat
Enter number: 5
Enable nat success!
9)使NAT规则不起作用
若欲禁用某条 NAT 规则,使用下述命令:
disable nat number
使用“ show nat ”命令时,在不起作用的规则前有“ * ”号标记。
例如,若欲禁用第 2~5 条和第 7 条规则,可执行下述操作:
admin@NetST> disable nat 2-5 7
Disable nat success!
10)使用NAT实现负载均衡
只需将外网接口的地址转换为不同内部服务器的地址,即可实现简单的负载均衡。
例如,网络的合法 IP 地址为“ 61.159. 62.163 Web 服务端口号为默认的“ 80 ”,提供 Web 服务的服务器的内部 IP 地址为 192.168.100.10 192.168.100.20 ,端口号均为 8000 。若欲借助防火墙实现负载均衡,执行下述操作:
admin@NetST> add nat
Enter NAT type (static-s, dynamic-d): static
Enter original source IP address (xxx.xxx.xxx.xxx/xx): any
Enter original destination IP address (xxx.xxx.xxx.xxx/xx): 61.159.62.163
Enter original port: 80
Enter translated source IP address (xxx.xxx.xxx.xxx/xx): any
Enter translated destination IP address (xxx.xxx.xxx.xxx/xx): 192.168.100.10 192.168.100.20
Enter translated port: 8000
Add NAT item success!
11)常见问题
如何配 NAT 规则使内网可以访问外部 Internet
要由内网访问外网,在 NAT 情况下由于发起方是内部机器,需要修改数据包中的源地址,因此称为源 NAT ,配置 NAT 规则时需要改变源地址,目的地址不变,假设内网 IP 192.168.1.0/24 ,防火墙外部地址为 10.0.0 .1 (这也是一个保留地址,在实际中根据实际情况取实际值),如用以下命令:
“add nat static 192.168.1.0/24 any any 10.0.0 .1 any any”
即可实现。
 
如何配 NAT 规则使外网可以访问 DMZ 上的 Internet 服务器?
要由外网访问 DMZ 区,在 NAT 情况下由于发起方是外部机器,而 DMZ 区服务器的地址往往是保留地址,因此需要修改数据包中的目的地址,因此称为目的 NAT ,配置 NAT 规则时需要改变目的地址,源地址不变,假设 DMZ 服务器 IP 172.16.0.2 ,防火墙外部地址为 10.0.0 .1 (这也是一个保留地址,在实际中根据实际情况取实际值),如用以下命令:
“add nat static any 172.16.0.2 80 any 10.0.0 .1 80”
即可实现外网访问 DMZ WWW 服务器,如果端口不同,称为端口映射,如用以下命令:
“add nat static any 172.16.0.2 8080 any 10.0.0 .1 80”
则将对 8080 端口的访问转到 80 端口上。
当然,在过滤规则中还要增加允许访问 DMZ 服务器的相应规则,如:
“add rule tcp any 172.16.0.2 80 external accept”
注意:在指定目的 NAT 规则时,端口一般不要设置为 “any” ,而必须明确指定,否则外界就可能访问到内部服务器开的一些危险端口从而取得服务器的控制权。如果只允许某些外部 IP 访问 DMZ 服务器, NAT 规则也应该按所述 NAT 规则形式设置,然后在过滤规则表中进行过滤处理,以免和下面的情况冲突。
 
如何配 NAT 规则使内网可以访问 DMZ 上的 Internet 服务器?
要由内网访问 DMZ 网,在 NAT 情况下由于发起方是内部机器,地址范围可以确定,而 DMZ 服务器的地址往往是保留地址,因此需要修改数据包中的目的地址,因此称为目的 NAT ,配置 NAT 规则时需要改变目的地址,源地址不变,假设内部机器地址范围为: 192.168.1.0/24 DMZ 服务器 IP 172.16.0.2 ,防火墙 DMZ 网卡地址为 172.16.0.1 如用以下命令:
“add nat static 192.168.1.0/24 172.16.0.2 80 192.168.1.0/24 172.16.0.1 80”
即可实现内网访问 DMZ 区的 WWW 服务器,注意此规则中的倒数第二个参数可以使用防火墙的外网卡、 DMZ 网卡地址,但不要用内网卡地址,否则 Java 控制台有可能不能连接防火墙,因为这样会使防火墙不能区分 Java 控制台是要连接防火墙还是 DMZ 服务器。
如果端口不同,称为端口映射,如用以下命令:
“add nat static 192.168.1.0/24 172.16.0.2 8080 192.168.1.0/24 172.16.0.1 80”
则将对 8080 端口的访问转到 80 端口上。
当然,在过滤规则中还要增加允许访问 DMZ 服务器的相应规则,如:
“add rule tcp 192.168.1.0/24 172.16.0.2 80 internal accept”
注意:此规则与问题 14 中的规则的差异在于源地址是有范围的,而不是 any ,两种情况下防火墙的处理是有较大差别的,在配置规则时必须注意。
 
由外网访问内部服务器的 NAT 规则已经配置正确,为什么还不能访问?
请检查在过滤规则表中是否已经加入允许接受目的地址为服务器内部地址,端口为相关服务的规则;另外检查安全选项中是否设置了 “SYN” 项,此项设置是禁止外部机器向内部机器连接,在向外提供服务的情况下需要删除。

7. MAC/IP地址绑定配置

在网络防火墙上,将拥有特殊权限的 IP 地址与其网卡的 MAC 地址进行绑定,即可有效地控制对 IP 地址的盗用。由于网卡的 MAC 地址具有唯一性,也就是说,即使恶意用户盗用了其他用户的 IP 地址,但由于其网卡的 MAC 地址与访问列表并不相符,因此,仍然无法实现对其他网络的访问,自然也就无法享有合法用户的特殊权益,从而保障网络访问安全。
1)增加MAC/IP地址绑定项
若欲将 MAC/IP 绑定项添加到 MAC/IP 绑定表的最后,使用下述命令:
add mac MAC_addr IP_addr
其中,参数“ MAC_addr ”表示 MAC 地址,格式为“ xx:xx:xx:xx:xx:xx ”。参数“ IP_addr ”表示 IP 地址,格式为点分格式“ xxx.xxx.xxx.xxx ”,不带“ /xx ”掩码位。
例如,若欲在防火墙上绑定 IP 地址 192.168.100.10 MAC 地址 00:11:22:33:44:55 ,则执行下述操作:
admin@NetST> add mac
Enter MAC address (xx:xx:xx:xx:xx:xx): 00:11:22:33:44:55
Enter IP address (xxx.xxx.xxx.xxx): 192.168.100.10
Add MAC-IP item success!
需要注意的是,以上操作只在系统数据库里增加 MAC/IP 绑定信息,若欲使 MAC/IP 绑定实际生效,还必须在安全选项“ MAC/IP ”中设置。
 
2)显示MAC/IP绑定项
若欲显示已经绑定的 MAC/IP 绑定表,使用下述命令:
show mac [ number ]
参数“ number ”用于指定欲显示的 MAC/IP 绑定项序号或序号范围(用“ - ”分隔)。若指定序号,只显示指定的 MAC/IP 绑定项;若不指定序号,则显示所有 MAC/IP 绑定项信息。
例如,若欲显示所有绑定的 MAC/IP 绑定表,可执行下述操作:
admin@NetST> show mac
No.    MAC               IP
1      00:11:22:33:44:11     192.168.100.10
2      00:11:22:33:44:22     192.168.100.20
3      00:11:22:33:44:33     192.168.100.30
4      00:11:22:33:44:44     192.168.100.40
 
3)删除MAC/IP绑定项
若欲删除指定的 MACIP 绑定项,使用下述命令:
delete mac number/IP/MAC
可以使用序号、 IP 地址或 MAC 地址指定欲删除的 MAC/IP 绑定项。
例如,若欲删除对 IP 地址 192.168.100.10 的绑定,可执行下述操作:
admin@NetST> delete mac
Enter MAC or IP address or number: 192.168.100.10
It will delete MAC-IP item 192.168.100.10. Are you sure (y/n)? y
Delete MAC-IP item success!
 
4)删除全部MAC/IP绑定项
若欲删除所有 MAC/IP 绑定项,使用下述命令:
delall mac
例如,若欲删除所有 MAC/IP 地址绑定项,可执行下述操作:
admin@NetST> delall mac
It will delete all MAC-IP item. Are you sure (y/n)? y
Delete all MAC-IP item success!
admin@NetST> show mac
Error: No items!

本文出自 “刘晓辉” 博客,谢绝转载!

你可能感兴趣的:(职场,休闲,网络防火墙)