iptables基本命令
# 放行指定端口:22
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables白名单模式(CentOS)
# 清空所有默认规则
iptables -F
# 清空所有自定义规则
iptables -X
# 所有计数器归0
iptables -Z
# 重新设置iptables
# 设置iptables白名单开始
# 允许icmp
iptables -A INPUT -p icmp -j ACCEPT
# 放行端口:8080,放行IP:123.123.56.56
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -s 123.123.56.56 -j ACCEPT
# 禁止其他不匹配的规则访问本机
iptables -P INPUT DROP
#配置写入文件,重启也生效。
service iptables save
#重启iptables服务
systemctl restart iptables.service
Ubuntu iptables规则生效,支持重启生效
iptables规则设置后都是即时生效的,在机器重启后,iptables中的配置信息会被清空.
您可以将这些配置保存下来,让iptables在启动时自动加载,省得每次都得重新输入.
iptables-save和iptables-restore就是用来保存和恢复设置的.
先将防火墙规则保存到/etc/iptables.up.rules文件中:
iptables-save > /etc/iptables.up.rules
然后修改脚本/etc/network/interfaces,在末尾添加一行,在网络启动时应用防火墙规则。
iptables-save > /etc/iptables.up.rules
vi /etc/network/interfaces
pre-up iptables-restore < /etc/iptables.up.rules
# 重启测试
reboot
CentOS 7 卸载firewalld防火墙
systemctl disable firewalld
systemctl stop firewalld
systemctl mask firewalld
systemctl disable firewalld.service
CentOS 7 安装iptables防火墙
yum install iptables -y
yum install iptables-services -y
systemctl enable iptables
systemctl enable iptables.service