linux

Linux的iptables如何设置防火墙规则

小樊
82
2024-09-30 09:25:30
栏目: 智能运维

在Linux中,iptables是一个功能强大的防火墙工具,用于配置内核级的网络防火墙规则。以下是一些基本的iptables规则设置方法:

  1. 查看当前防火墙规则

    sudo iptables -L -n -v
    
  2. 清空所有规则链

    sudo iptables -F
    sudo iptables -X
    
  3. 设置默认策略

    • 默认拒绝所有传入连接:
      sudo iptables -P INPUT DROP
      sudo iptables -P OUTPUT DROP
      sudo iptables -P FORWARD DROP
      
    • 默认允许所有传出连接:
      sudo iptables -P OUTPUT ACCEPT
      
  4. 允许特定端口的连接

    • 允许TCP端口80(HTTP)的传入连接:
      sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
      
    • 允许UDP端口53(DNS)的传入连接:
      sudo iptables -A INPUT -p udp --dport 53 -j ACCEPT
      
  5. 允许特定IP的连接

    • 允许IP地址192.168.1.100的传入连接:
      sudo iptables -A INPUT -s 192.168.1.100 -j ACCEPT
      
  6. 拒绝特定端口的连接

    • 拒绝TCP端口22(SSH)的传入连接:
      sudo iptables -A INPUT -p tcp --dport 22 -j DROP
      
  7. 保存iptables规则

    • 对于基于Debian的系统(如Ubuntu):
      sudo apt-get install iptables-persistent
      sudo netfilter-persistent save
      
    • 对于基于RHEL的系统(如CentOS):
      sudo service iptables save
      
  8. 重启iptables服务

    • 对于基于Debian的系统:
      sudo systemctl restart netfilter-persistent
      
    • 对于基于RHEL的系统:
      sudo systemctl restart iptables
      

请注意,这些命令可能需要root权限才能执行。另外,根据您的具体需求和网络环境,您可能需要调整这些规则。在修改防火墙规则之前,请确保您了解每个规则的作用,并谨慎操作,以免意外阻止重要服务或连接。

0
看了该问题的人还看了