在 CentOS 上开启并使用 iptables,不同版本差别较大,下面按 CentOS 6 / CentOS 7 / CentOS 8 分别说明(CentOS 8 已不再支持 iptables 作为默认防火墙)。
service iptables status
service iptables start
chkconfig iptables on
service iptables save
systemctl start firewalld
systemctl enable firewalld
systemctl stop firewalld
systemctl disable firewalld
yum install -y iptables-services
systemctl start iptables
systemctl enable iptables
systemctl status iptables
service iptables save
# 或
/usr/libexec/iptables/iptables.init save
CentOS 8 默认使用 nftables,iptables 只是兼容层。
iptables -V
yum install -y iptables-services
systemctl stop firewalld
systemctl disable firewalld
systemctl start iptables
systemctl enable iptables
⚠️ 建议直接使用 firewalld 或 nftables
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
service iptables save
systemctl status firewalld
systemctl status iptables
如果你愿意,可以告诉我:
我可以给你一套 完整可用的 iptables 规则。