Centos6.3利用iptables配置网关防火墙

系统环境:centos6.3 x64

IPTABLES:系统自带


<强>一。部署环境:


1。关闭SELINUX

# setenforce 0

# vi/etc/sysconfig/selinux

- - - - - - - - - - - - - - - - - -

禁用SELINUX=

- - - - - - - - - - - - - - - - - -


2。清空默认策略并重启iptables

# iptables - t NAT - f

# iptables - f

#服务iptables保存

#服务iptables重启


3。开启服务器端路由转发功能# vi/etc/sysctl.conf

- - - - - - - - - - - - - - - - - - - - - - - -

net.ipv4。ip_forward=1

- - - - - - - - - - - - - - - - - - - - - - - -

# sysctl - p


本例我们模拟一个WEB站点,只在防火墙处开启SSH: 22和网络:80端口,并配置防火墙到内网服务器22与80的端口映射,若开启其他端口服务,请自行修改


 Centos6.3利用iptables配置网关防火墙


<强>二。网关防火墙iptables配置:


1。内部回环网络永远打开。

# iptables -输入- lo - s 127.0.0.1 - j接受

# iptables -输出- o lo - s 127.0.0.1 - j接受

2。用DNAT做端口映射:

# iptables - t nat - PREROUTING - d为1.2.3.4 - p tcp——dport 22 - j DNAT 192.168.100.10

# iptables - t nat - PREROUTING - d为1.2.3.4 - p tcp——dport 80 - j DNAT——192.168.100.10

#用SNAT作源地址转换(关键),以使回应包能正确返回

# iptables - t nat - POSTROUTING - d 192.168.100.10 - p tcp——dport 22, - j SNAT——192.168.100.1

# iptables - t nat - POSTROUTING - d 192.168.100.10 - p tcp——dport 80, - j SNAT——192.168.100.1

3。打向前开链的相关端口(路由转发)

#向前iptables - a - o eth2 - d 192.168.100.10 - p tcp——dport 22 - j接受

# iptables -向前我eth2 - s 192.168.100.10 tcp -运动22 - m - p状态——

建立,相关- j接受

#向前iptables - a - o eth2 - d 192.168.100.10 - p tcp——dport 80 - j接受

# iptables -向前我eth2 - s 192.168.100.10 tcp——运动80 - p - m状态——

建立,相关- j接受

4。子网接受其他的tcp包。

# tcp -我eth2向前iptables - a - p - o eth0 - j接受

5。子网可以访问其他UDP协议的公网服务。

#向前iptables - a - p udp - eth0 - s 192.168.0.0/24 - o eth2, - j接受

#向前iptables - a - p udp - eth2 - d 192.168.0.0/24 - o eth0 - m状态,状态建立- j接受

6。子网访问公网的模式是伪装成网关的地址,使内网用户可路由出外网

# iptables - t nat - POSTROUTING - s 192.168.100.0/24 - o eth0 - j化装

7。拒绝其他所有策略:

# iptables - p拒绝转发

# iptables -输入- j拒绝

# iptables - p输出拒绝

8。保存并重启服务:

#服务iptables保存

#服务iptables重启


- - - - - - - - - - -配置完毕- - - - - - - - - - - -


Centos6.3利用iptables配置网关防火墙