您的位置:首页 > 运维架构 > Linux

CentOS 5和 rhel 5系统中iptables的配置方法

2014-06-01 00:15 711 查看
设置防火墙对于你的Linux服务器来说非常重要。但是默认情况下CentOS的设置通常不能满足我们的需要。你可以通过如下步骤简单设置iptables防火墙:
首先要禁用掉SELinux,通常来说SELinux没有什么特别大的用处。用root用户打开/etc/selinux/config:

vi /etc/selinux/config

将其中的SELINUX=enforcing删除并用下面一行字替换:

SELINUX=disabled

之后我们来修改iptables的设置,打开iptables的配置文件:

vi /etc/sysconfig/iptables

下面是一个iptables的示例:

# http://www.ondev.net/post/show/749
*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

:RH-Firewall-1-INPUT - [0:0]

-A INPUT -j RH-Firewall-1-INPUT

-A FORWARD -j RH-Firewall-1-INPUT

-A RH-Firewall-1-INPUT -i lo -j ACCEPT

-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT

-A RH-Firewall-1-INPUT -p 50 -j ACCEPT

-A RH-Firewall-1-INPUT -p 51 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 53 -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 25 -j ACCEPT

-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 -j REJECT --reject-with icmp-host-prohibited

COMMIT

需要注意的是,你必须根据自己服务器的情况(比如开放哪些服务来修改这个文件)。举例来说,如果你不希望开放80端口提供web服务,那么应该相应的删除这一行:

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

全部修改完之后重启iptables:

service iptables restart

你可以验证一下是否规则都已经生效:

iptables -L

系统会打印出目前已经生效的规则
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: