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

本文发布时间: 2019-Mar-21
系统环境:centos6.3 x64IPTABLES:系统自带一.部署环境:1.关闭SELINUX# setenforce 0# vi /etc/sysconfig/selinux---------------SELINUX=disabled---------------2.清空默认策略并重启iptables# iptables -t NAT -F# iptables -F# service iptables save# service iptables restart3.开启服务器端路由转发功能# vi /etc/sysctl.conf---------------------net.ipv4.ip_forward = 1---------------------# sysctl -p本例我们模拟一个WEB站点,只在防火墙处开启SSH:22和WEB:80端口,并配置防火墙到内网服务器22与80的端口映射,若开启其他端口服务,请自行修改二.网关防火墙iptables配置:1.内部回环网络永远打开.# iptables -A INPUT -i lo -s 127.0.0.1 -j ACCEPT# iptables -A OUTPUT -o lo -s 127.0.0.1 -j ACCEPT2.用DNAT做端口映射:# iptables -t nat -A PREROUTING -d 1.2.3.4 -p tcp --dport 22 -j DNAT --to 192.168.100.10# iptables -t nat -A PREROUTING -d 1.2.3.4 -p tcp --dport 80 -j DNAT --to 192.168.100.10# 用SNAT作源地址转换(关键),以使回应包能正确返回# iptables -t nat -A POSTROUTING -d 192.168.100.10 -p tcp --dport 22 -j SNAT --to 192.168.100.1# iptables -t nat -A POSTROUTING -d 192.168.100.10 -p tcp --dport 80 -j SNAT --to 192.168.100.13.打开FORWARD链的相关端口(路由转发)# iptables -A FORWARD -o eth1 -d 192.168.100.10 -p tcp --dport 22 -j ACCEPT# iptables -A FORWARD -i eth1 -s 192.168.100.10 -p tcp --sport 22 -m state --stateESTABLISHED,RELATED -j ACCEPT# iptables -A FORWARD -o eth1 -d 192.168.100.10 -p tcp --dport 80 -j ACCEPT# iptables -A FORWARD -i eth1 -s 192.168.100.10 -p tcp --sport 80 -m state --stateESTABLISHED,RELATED -j ACCEPT4.子网接受其他的tcp包.# iptables -A FORWARD -p tcp -i eth1 -o eth0 -j ACCEPT5.子网可以访问其他UDP协议的公网服务.# iptables -A FORWARD -p udp -i eth0 -s 192.168.0.0/24 -o eth1 -j ACCEPT# iptables -A FORWARD -p udp -i eth1 -d 192.168.0.0/24 -o eth0 -m state --state ESTABLISHED -j ACCEPT6.子网访问公网的模式是伪装成网关的地址,使内网用户可路由出外网# iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o eth0 -j MASQUERADE7.拒绝其他所有策略:iptables -P FORWARD REJECTiptables -A INPUT -j REJECTiptables -P OUTPUT REJECT8.保存并重启服务:# service iptables save# service iptables restart----------配置完毕-----------


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2024-Mar-04 02:08pm
栏目列表