赞
踩
以Centos7为例,iptables默认情况并没有systemd服务因此需要手动安装:
安装防火墙
yum install -y iptables
开机自启,并启动防火墙
systemctl stop firewalld
systemctl disable firewalld
清空所有规则,禁止输入、允许转发和输出,打开关键端口。
iptables -t filter -F iptables -t filter -X iptables -t nat -F iptables -t nat -X iptables -t filter -A INPUT -p tcp --dport 22 -j ACCEPT iptables -t filter -A INPUT -p icmp --icmp-type any -j ACCEPT iptables -t filter -A INPUT -p udp --dport 53 -j ACCEPT iptables -t filter -A INPUT -p udp --sport 53 -j ACCEPT iptables -t filter -A INPUT -p tcp --dport 53 -j ACCEPT iptables -t filter -A INPUT -p tcp --sport 53 -j ACCEPT iptables -t filter -A INPUT -p tcp --dport 443 -j ACCEPT iptables -t filter -A INPUT -p tcp --dport 3306 -j ACCEPT iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -P FORWARD ACCEPT iptables -P OUTPUT ACCEPT iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -j DROP
保存配置(持久化)
iptables-save > /etc/sysconfig/iptables
创建自启配置恢复服务:
vi /lib/systemd/system/iptables-restore.service
内容如下:
[Unit]
Description=Restore iptables firewall rules
Before=network.target
Conflicts=shutdown.target
[Service]
Type=oneshot
User=root
ExecStart=/usr/sbin/iptables-restore /etc/sysconfig/iptables
[Install]
WantedBy=basic.target
设置应用服务,设置开机启动
systemctl daemon-reload
systemctl enable iptables-restore.service
systemctl start iptables-restore
systemctl status iptables-restore
查看配置当前防火墙配置情况
iptables -nvL
如果需要可以使用下面命令删除已经开放的端口
iptables -t filter -D INPUT -p tcp --dport 3306 -j ACCEPT
如果需要可以使用下面命令删除已经开放的端口
iptables -t filter -D INPUT -p tcp --dport 3306 -j ACCEPT
[2]. linux-training.be . Chapter 14. iptables firewall . http://linux-training.be/networking/ch14.html
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。