Linux实用的防火墙iptables命令

1. 小声哔哔

    如果你想看iptables命令的核心原理等,那么请不要浪费时间往下看了,这篇文章是我在做了devops一段时间后总结的一些基本命令和稍微深入一点的解析。对于大神来说是小儿科,但是对于我这种开发为主的同学应该还是比较实用的。

2. 开胃菜

  • 安装iptables:yum install iptables-services
  • 查看防火墙状态:service iptables status或systemctl status iptables

    防火墙启动时如下图:

    防火墙停止时如下图:

  • 停止防火墙命令:service iptables stop或systemctl stop iptables
  • 开启防火墙命令:service iptables start或systemctl start iptables
  • 重启防火墙命令:service iptables restart或systemctl restart iptables
  • 查看防火墙规则:iptables -L -n
  • 保存设置的防火墙规则(很重要,不保存重启后之前设置的策略就全部失效):service iptables save
  • 清空所有默认规则:iptables -F
  • 清空所有自定义规则:iptables -X
  • 清空计数器:iptables -Z

    注意,上面三个命令是会清除所有的防火墙规则,但是不会改变默认策略(policy后面对应的策略),执行前最好确认默认策略是什么,否则可能会将自己也挡住,可以在执行前设置默认策略为ACCEPT

  • 开放端口命令:iptables -A INPUT -p tcp --dport 端口号 -j ACCEPT

       示例:iptables -A INPUT -p tcp --dport 22 -j ACCEPT

  • 允许来自于lo接口的数据包(本地访问):iptables -A INPUT -i lo -j ACCEPT
  • 设置入口默认策略:iptables -P INPUT DROP(拒绝)或ACCEPT(接受)
  • 设置出口默认策略:iptables -P OUTPUT DROP或ACCEPT
  • 设置转发默认策略:iptables -P FORWARD DROP或ACCEPT
  • 允许ping: iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
  • 允许来自于lo接口的数据包(本地访问):iptables -A INPUT -i lo -j ACCEPT
  • iptables删除某条规则

     先查看input规则:iptables -L INPUT --line-numbers -n

     删除规则的命令:iptables -D INPUT 行号

     就先写到这里了,这些是我用的比较多的命令,以后要是有新的心得再补充吧,也欢迎大家留言指导。

猜你喜欢

转载自blog.csdn.net/u011294519/article/details/89340367