CentOS 上的基本 iptables

CentOS 上的基本 iptables

我想执行以下操作,但在 CentOS 中使用 iptables 时遇到困难:

  1. 我愿意接受入站仅端口 80,443,22, snmp, 3306到我的服务器
  2. 我希望能够允许所有出站端口
  3. 我希望全部其他入站连接将被丢弃

答案1

-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT打开你的 iptables(/etc/sysconfig/iptables) 并在 ( ) 行下面添加以下几行:

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 161 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 161 -j ACCEPT

重新启动 iptables:

service iptables restart

默认情况下,您的 iptables 允许所有出站端口。

答案2

lokkit将为您提供一个用于配置 iptables 的简单界面。

答案3

  1. 我想仅接受到我的服务器的入站端口 80,443,22、snmp、3306。
  2. 我希望能够允许所有出站端口
  3. 我希望所有其他入站连接都被断开。

把这个规则放入 shell 脚本中....

#!/bin/bash

# 3

iptables -P INPUT DROP

iptables -P FORWARD DROP

# 2

iptables -P OUTPUT ACCEPT

iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED

iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED

# 1 (change eth0 for your interface)

iptables -A INPUT -j ACCEPT -i eth0 -p tcp -m multiport --dport 80,443,22,161,3306

答案4

已经给出的答案肯定能满足您的需要。但实际上,你应该理解如果您要管理防火墙,则需要了解防火墙的工作原理。令人惊讶的是,CentOS 中有关设置 IPTABLES 的文档很容易理解,并为设置它提供了良好的基础。因此,不要只听信这些人的话并坚持这些防火墙规则,而是阅读一些内容并了解他们在做什么。

http://wiki.centos.org/HowTos/Network/IPTables

相关内容