【原创】CENTOS之WEB常见的iptables防火墙规则

blogdaren 2016-10-19 抢沙发 1488人次

版本一:

规则:

iptables --delete-chain
iptables  --flush
iptables  -P INPUT DROP    #1
iptables  -P FORWARD DROP  #1
iptables  -P OUTPUT DROP   #1
iptables  -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #2
iptables  -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT #3
iptables  -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT #3
iptables  -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT  #3
iptables  -A INPUT -p tcp -m tcp --dport 873 -j ACCEPT #3
iptables  -A INPUT -i lo -j ACCEPT #4
iptables  -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT  #5
iptables  -A INPUT -p icmp -m icmp --icmp-type 11 -j ACCEPT #5
iptables  -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #6
iptables  -A OUTPUT -p udp -m udp --dport 53 -j ACCEPT #7
iptables  -A OUTPUT -o lo -j ACCEPT #4
iptables  -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT #8
iptables  -A OUTPUT -p tcp -m tcp --dport 25 -j ACCEPT #9
iptables  -A OUTPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT  #10
iptables  -A OUTPUT -p icmp -m icmp --icmp-type 11 -j ACCEPT #10
service iptables save 
service iptables restart

说明:

#1、设置INPUT,FORWARD,OUTPUT链默认target为DROP,也就是禁止外部与服务器进行通信
#2、设置当连接状态为RELATED和ESTABLISHED时,允许数据进入服务器
#3、允许外部客户端连接本服务器端口80,22,21,873
#4、允许内部数据循回
#5、允许外部ping服务器 
#6、设置状态为RELATED和ESTABLISHED的数据可以从服务器发送到外部
#7、允许服务器使用外部DNS解析域名
#8、允许服务器访问外部服务器端口80
#9、允许服务器发送邮件
#10、允许从服务器ping外部服务器

版本二:

#清空历史策略
iptables -F && iptables -X && iptables -Z 

#允许本地回环接口(即允许访问本地服务) 
sudo iptables -A INPUT -i lo -j ACCEPT 

#允许你本机主动连接到外网的请求,而且允许从外网再连接进来的请求
sudo iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#允许所有本机向外的访问 
sudo iptables -A OUTPUT -j ACCEPT

#SSH
sudo iptables -A INPUT  -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
#sudo iptables -A OUTPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT

#DNS
sudo iptables -A INPUT  -p tcp --dport 53 -j ACCEPT
#sudo iptables -A OUTPUT -p tcp --sport 53 -j ACCEPT
#sudo iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT
sudo iptables -A INPUT  -p tcp --sport 53 -j ACCEPT

sudo iptables -A INPUT  -p udp --dport 53 -j ACCEPT
#sudo iptables -A OUTPUT -p udp --sport 53 -j ACCEPT
#sudo iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
sudo iptables -A INPUT  -p udp --sport 53 -j ACCEPT

#http
sudo iptables -A INPUT  -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
#sudo iptables -A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT

#https
sudo iptables -A INPUT  -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
#sudo iptables -A OUTPUT -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT

#ICMP
sudo iptables -A INPUT  -p icmp  -j ACCEPT
#sudo iptables -A OUTPUT -p icmp  -j ACCEPT

#VPN
sudo iptables -A INPUT   -p tcp --dport 9930 -j ACCEPT
#sudo iptables -A OUTPUT  -p tcp --sport 9930 -j ACCEPT

#如果服务器本身也需要访问其他网站,则还需要增加以下配置:
#sudo iptables -A OUTPUT -p tcp --dport 80  -m state --state NEW,ESTABLISHED -j ACCEPT
sudo iptables -A INPUT  -p tcp --sport 80  -m state --state NEW,ESTABLISHED -j ACCEPT
#sudo iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
sudo iptables -A INPUT  -p tcp --sport 443 -m state --state NEW,ESTABLISHED -j ACCEPT



版权声明:除非注明,本文由( blogdaren )原创,转载请保留文章出处。

本文链接:【原创】CENTOS之WEB常见的iptables防火墙规则

发表评论:

您的昵称:
电子邮件:
个人主页: