Linux下iptables安全配置

Linux下配置IPTables,只开放特定端口,禁用其他网络。

*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
#ssh端口
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT -A OUTPUT -p tcp -m tcp --sport 22 -j ACCEPT #Nginx/Apache端口 -A INPUT -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT -A OUTPUT -p tcp --sport 80 -m state --state NEW,ESTABLISHED -j ACCEPT #回环网卡配置,让php-fpm正常运行 -A INPUT -i lo -j ACCEPT #允许本机访问外网 -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT COMMIT

:INPUT ACCEPT [0:0]
# 该规则表示INPUT表默认策略是ACCEPT
:FORWARD ACCEPT [0:0]
# 该规则表示FORWARD表默认策略是ACCEPT
:OUTPUT ACCEPT [0:0]
# 该规则表示OUTPUT表默认策略是ACCEPT
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# 意思是允许进入的数据包只能是刚刚我发出去的数据包的回应,ESTABLISHED:已建立的链接状态。RELATED:该数据包与本机发出的数据包有关。
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
# 这两条的意思是在INPUT表和FORWARD表中拒绝所有其他不符合上述任何一条规则的数据包。并且发送一条host prohibited的消息给被拒绝的主机。

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

清空:iptables -F

查看:iptables -L -n

指定IP

iptables -I INPUT -s ip/32 -p tcp --dport 8000 -j ACCEPT
iptables -A INPUT -s ip -j ACCEPT
iptables -A INPUT -j DROP

猜你喜欢

转载自www.cnblogs.com/crxis/p/9222889.html