ubuntu 安装和配置 iptables 防火墙
启动iptables
1 | modprobe ip_tables |
关闭iptables(关闭命令要比启动复杂)
1 | iptalbes -F |
依次执行以上命令即可关闭iptables,否则在执行modproble -r ip_tables时将会提示FATAL: Module ip_tables is in use.
清除预设表filter中的所有规则链的规则
1 | iptables -F |
清除预设表filter中使用者自定链中的规则
1 | iptables -X |
以数字形式查看iptables规则
1 | iptables -L -n |
抛弃所有不符合三种链规则的数据包
1 | iptables -P INPUT DROP |
设置 本地进程 lo 的 INPUT 和 OUTPUT 链接,eth0 的 INPUT 链
1 | iptables -A INPUT -i lo -j ACCEPT |
开放SSH端口22
1 | iptables -A INPUT -p tcp -i eth0 --dport ssh -j ACCEPT |
开放Web端口80
1 | iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT |
开放FTP端口21、20
1 | iptables -A INPUT -p tcp --dport 20 -j ACCEPT |
删除FTP端口21、20
1 | iptables -D INPUT -p tcp --dport 20 -j ACCEPT |
允许loopback(不然会导致DNS无法正常关闭等问题)
1 | IPTABLES -A INPUT -i lo -p all -j ACCEPT (如果是INPUT DROP) |
保存iptables规则
1 | iptables-save > /etc/network/iptables.up.rules |
iptables规则自动保存与自动加载
1 | nano /etc/network/interfaces |
修改 /etc/network/interfaces ,添加下面末尾2行脚本
1 | auto eth0 |
关闭防火墙才可以,可以使用以下代码.
1 | sudo iptables -P INPUT ACCEPT |
或者开通必要端口
1 | sudo iptables -I INPUT -s 0.0.0.0/0 -p tcp –dport 8888 -j ACCEPT |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 赛博空间!
评论