企业级iptalbes防火墙(3)

it2024-04-13  47

六、iptablesNAT模式-网络地址转换(企业级应用)

网络地址转换NAT(企业应用,虚拟机做实验效果不佳)

1.SNAT:把内网地址转换成公网地址(源地址转换)

一个数据包在经过路由之后(或者说在通过防火墙的过滤之后)才被知道他的源IP是谁,在路由之前只能看到目标IP,如果我看不到你的源IP,那怎么匹配想过滤的数据包并进行源地址转换?我防火墙根本就不能确定你是否是符合匹配条件的IP,所以只能使用POSTROUTING iptables -t nat -A POSTROUTING -s 192.168.123.0/24 -d 192.168.122.0/24 -j SNAT --to-source 192.168.2.1

注释:在路由之后将原地址123.0访问你的目标地址122.0,通过SNAT转换将源地址123.0,转换成了2.1.为什么这样做呢? 因为数据在回包的时候要知道源地址是谁, 要不然回不去。

2.DNAT:要把公网ip换到内网IP -----公网ip只有一个, 内网ip有多个。(目标地址转换)

如果我不在路由之前就把目标地址转换完成,很显然当数据包到达入口IP之后,他的目的已经达到了,因为他本来的目标IP就是防火墙的对外公网IP,那么数据包还会往里面走吗?显然不可能了,所以只能使用PREROUTING 1.1 1.2 2.1 2.2 C---------------------B---------------------A client 转发 web-server

iptables -t nat -A PREROUTING -d 192.168.1.2 -j DNAT --to-destination 192.168.2.2

七、企业级防火墙配置

1、清除防火墙规则

# iptables -F

2、修改默认规则为拒绝(修改前先放行22端口,保证自己能够连上主机)

[root@iptables-server ~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT #放开22号端口 [root@iptables-server ~]# iptables -P INPUT DROP #将默认所有进来的请求设置为全部拒绝掉 [root@iptables-server ~]# iptables -P FORWARD DROP #将默认所有的转发的规则设置为全部拒绝掉 注意:修改默认规则: 只能使用ACCEPT和DROP # iptables -P INPUT DROP ----拒绝 # iptables -P INPUT ACCEPT ----允许

3、放行指定的端口

[root@iptables-server ~]# iptables -A INPUT -i lo -j ACCEPT #允许通过lo网卡进入的请求 [root@iptables-server ~]# iptables -A INPUT -p tcp -m multiport --dport 80,443 -j ACCEPT #允许访问80和443端口 [root@iptables-server ~]# iptables -A INPUT -s 192.168.246.0/24 -j ACCEPT #允许这个内网网段连接服务器

4、保存iptables配置

[root@iptables-server ~]# service iptables save iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ] 或者 [root@iptables-server ~]# iptables-save > /etc/sysconfig/iptables

最新回复(0)