海天无影's Blog

iptables基本命令

/ 1评 / 0

iptables常用命令

# 开启防火墙
/etc/init.d/iptables start
或
service iptables start

# 停止防火墙
/etc/init.d/iptables stop
或
service iptables stop

# 重启防火墙
/etc/init.d/iptables restart
或
service iptables restart

# 查看端口状态
/etc/init.d/iptables status
或
service iptables status

# 保存配置
/etc/init.d/iptables save
或
service iptables save

chkconfig iptables off         # 永久关闭防火墙
chkconfig iptables on          # 永久关闭后启用

iptables开启端口

以下举例开启8080端口

iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
或
iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

然后记得保存规则,并重启服务。

如果需要打开个端口段落,则用 : 连接,比如将上面的8080换成“49152:65534”即可。

以下是在开启端口中会碰到的一些问题:

有的时候iptables开放端口没有成功的原因是iptables是由上而下进行规则的匹配,所以放行规则需在禁行规则之前才能生效。使用-A的参数是添加在进行之后,所以打开并没有成功,这里需要是-I。

iptables开放端口不成功的原因

iptables的规则里开放或禁用端口的时候,会看到有dport和sport,dport表示目的端口 ,sport表示来源端口。 
但是在使用的时候要看到底是INPUT还是OUTPUT,因为进出的方向不一样,目的和来源也不一样。

iptables规则中端口dport和sport的区别

iptables禁止端口或IP

#关闭端口
ptables -A  INPUT -p tcp --dport 7777 -j DROP

#禁止IP
iptables -A INPUT -p tcp -s 192.168.1.2 -j DROP

记得同样样保存规则,并重启服务。

iptables查看规则

可以直接使用vi查看文件

/etc/sysconfig/iptables

也可以使用代码来查看

iptables -nv -L

iptables删除规则

先使用代码

iptables -nv --line-number

查所有规则前面的编号,按编号进行删除,例如删除2号规则。

iptables -D INPUT 2

一条回应:“iptables基本命令”

  1. […] 开放iptables端口的方法很简单,网上有很多的例子,上一篇文章《iptables基本命令》也有介绍过,但有的时候添加好后,在规则里也能看到,端口却还是开放不成功,后来发现只是一个字母,插入规则-I和追加规则-A的问题。 […]

发表评论

电子邮件地址不会被公开。 必填项已用*标注