LAMP之路

不积跬步,无以至千里!

linux防火墙iptables封IP,拒绝指定IP和网段的办法

2012-10-18 一抹阳光 操作系统

封IP

service iptables status可以查看到iptables服务的当前状态
/etc/init.d/iptables stop
/etc/init.d/iptables start

单个IP的命令是
iptables -I INPUT -s 211.1.0.0 -j DROP

封IP段的命令是
iptables -I INPUT -s 211.1.0.0/16 -j DROP
iptables -I INPUT -s 211.2.0.0/16 -j DROP
iptables -I INPUT -s 211.3.0.0/16 -j DROP

封整个段的命令是
iptables -I INPUT -s 211.0.0.0/8 -j DROP

封几个段的命令是
iptables -I INPUT -s 61.37.80.0/24 -j DROP
iptables -I INPUT -s 61.37.81.0/24 -j DROP

服务器启动自运行
有三个方法:
1、把它加到/etc/rc.local中
2、iptables-save >;/etc/sysconfig/iptables可以把你当前的iptables规则放到/etc/sysconfig/iptables中,系统启动iptables时自动执行。
3、service   iptables   save 也可以把你当前的iptables规则放/etc/sysconfig/iptables中,系统启动iptables时自动执行。
后两种更好此,一般iptables服务会在network服务之前启来,更安全

 

解封:

iptables -L INPUT

iptables -L --line-numbers 然后iptables -D INPUT 序号

 

----------------------------------------------------

 

防火墙端口操作

开启端口:

#/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT

#/sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT

然后保存:

#/etc/rc.d/init.d/iptables save

 

 

关闭端口:

#/sbin/iptables -I INPUT -p tcp --dport 80 -j DROP

#/sbin/iptables -I INPUT -p tcp --dport 22 -j DROP

然后保存:

#/etc/rc.d/init.d/iptables save



-------------------------


 

iptables -F /* 清除所有规则 */
 iptables -A INPUT -p tcp --dport 22 -j ACCEPT /*允许包从22端口进入*/
 iptables -A OUTPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT /*允许从22端口进入的包返回*/
 iptables -A OUTPUT -p udp --dport 53 -j ACCEPT /* 域名解析端口,一般不开 */
 iptables -A INPUT -p udp --sport 53 -j ACCEPT /* 域名解析端口,一般不开 */
 iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT /*允许本机访问本机*/
 iptables -A OUTPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
 iptables -A INPUT -p tcp -s 0/0 --dport 80 -j ACCEPT /*允许所有IP访问80端口*/
 iptables -A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
 iptables-save > /etc/sysconfig/iptables /*保存配置*/
 iptables -L /* 显示iptables列表 */

 附一键设置脚本:

firewall-web.rar