> CentOS > CentOS入门 >

centos服务器里禁止ping和iptables正确的配置方法

引子:centos一般本身就带有iptables防火墙,一hyper-v架构centos系统的VPS由于采用网上广为流传的IPTABLES设置方法,导致无法修改ssh的22端口,如果你修改ssh端口无效,那么也可以参考本文。之前的一些centos iptables教程设置有问题,不正确的设置也许可以起到作用,但是却会增加系统的负载,不能最优的iptables配置方法,然后被各网站抄来抄去,最终就会给linux新人带来一些困扰。强烈建议采用本文的配置方法重新配置centos的iptables。

一:centos iptables的正确设置方法和禁止PING

1.清除已有iptables规则

iptables -F iptables -X iptables -Z

2.iptables的配置,这里张小三资源网采用centos官方给出的默认的防火墙规则,我们只需要添加或删除不用的端口就可以了,这样才能最大化的兼容各种环境,降低防火墙不兼容造成的负载等问题。

首先运行命令:vi /etc/sysconfig/iptables添加如下内容。

# Firewall configuration written by system-config-securitylevel

# Manual customization of this file is not recommended.

*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

#准许本机localhost访问

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

#是否禁止ping,禁止的话可以在下面这句的开头加#号。

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

#允许已建立的或相关连的通行

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

#开放s.s.h的22端口(开放其它端口可以按照下面规则自己添加)

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

#开放80端口

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

#开放ftp的21端口

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

#除放开的端口外禁止其它端口

-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited

COMMIT

3.最后保存一下

service iptables save

#防止iptables机器重启失效,重启iptables自动生效,运行如下命令 chkconfig --level 345 iptables on service iptables restart

二:iptables应用

1.查看已添加的iptables规则:

iptables -L

2.删除已添加的iptables规则:

将所有iptables规则按照1.2.3....进行排序,执行: iptables -L -n --line-numbers 如果要删除INPUT里序号为5的规则,执行: iptables -D INPUT 5

3.利用iptables屏蔽指定的IP:

#屏蔽单个IP的命令是 iptables -I INPUT -s 123.45.6.7 -j DROP

#封整个段即从123.0.0.1到123.255.255.254的命令

iptables -I INPUT -s 123.0.0.0/8 -j DROP

#封IP段即从123.45.0.1到123.45.255.254的命令

iptables -I INPUT -s 124.45.0.0/16 -j DROP

#封IP段即从123.45.6.1到123.45.6.254的命令是

iptables -I INPUT -s 123.45.6.0/24 -j DROP

(责任编辑:IT)