第一步:查看防火墙规则
sudo iptables -L
第二步:新建文件 /etc/network/iptables.up.rules 加入规则
内容如下:
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [151:16324]
-A INPUT -m state –-state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -s 192.168.1.222 -p tp -m tcp –-dport 8080 -jACCEPT (白名单:开放指定端口给指定IP)
-A INPUT -m state –-state NEW -m tcp -p tcp –-dport 80 -j ACCEPT (开放指定端口)
-A INPUT -s 192.168.1.222 -m state –-state NEW -m tcp -p tcp –-dport 80 -j ACCEPT (将上一行注释,此行意思:开放http协议给指定IP)
-A INPUT -m state –-state NEW -m tcp -p tcp –-dport 443 -j ACCEPT
-A INPUT -j REJECT –-reject-with icmp-host-prohibited
-A INPUT -j REJECT --reject-with icmp-host-prohibited
第三步:开启iptables防火墙
sudo iptables-apply
此时,如果重启系统,防火墙不会自动重启,因此必须设置自动重启。
第四步:重启系统自动启动防火墙
vim /etc/network/interfaces
最后加入一行: pre-up iptables-restore < /etc/network/iptables.up.rules(重启时,重新加载iptables.up.rules文件)