iptables常用 *** 作

iptables常用 *** 作,第1张

iptables命令Usages可以直接通过-h查看

最简单的命令就是iptables -L

如果想更多详细信息可以使用如下命令

iptables -nL -v --line-numbers

如果需要查询指定的table,需要使用-t(默认是filter表)

如查询nat表中的规则

iptables -t nat -nL -v --line-numbers

使用-A添加规则

iptables -A DOCKER -t nat -p udp -m udp ! -i docker0 --dport 60535:65535 -j DNAT --to-destination 172.17.0.2:60535-65535

添加一个名字叫DOCKER的chain,在表nat中,映射的protocol为udp,-m表示扩展匹配:

!表示取非:非docker0入口的包,60535:65535端口,映射到172.17.0.2:60535-65535

举例:

Freeswitch-container的docker需要配置iptables,如下

添加完成后,效果如下:

查看chain的时候把--line-numbers参数带上,删除的时候指定好表(默认filter不需要),指定好Chain的名字,指定好number就可以了。

如上filter表里的DOCKER,删除命令如下

iptables -D DOCKER 1

首先要说明的是IPTables命令必需以root权限运行,这意味着你需要使用root身份登录或者能够有权限使用su或sudo -i取得root Shell。下面的内容中我们都使用sudo,这也是Ubuntu系统上的首选方法。

最好的起点就是先通过“-L”参数来查看下当前系统的所有IPTables规则:

sudo iptables -L

我们可以看到Linux中都有的3个常用默认链(INPUT、OUTPUT和FORWARD),同时也可以看到每个链的缺省策略(每个链对默认策略都是接受),在此我们可以看到Ubuntu中并没有添加任何默认规则集。

你是在弄防火墙吧,

1,添加filter表

[root@linux ~]# iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT //开放21端口

出口我都是开放的iptables -P OUTPUT ACCEPT,所以出口就没必要在去开放端口了。

2,添加nat表

[root@linux ~]# iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j MASQUERADE

将源地址是 192.168.10.0/24 的数据包进行地址伪装,可根据自己实际IP修改

3,以下实例 :-A默认是插入到尾部的,可以-I来插入到指定位置

[root@linux ~]# iptables -I INPUT 3 -p tcp -m tcp --dport 20 -j ACCEPT

[root@linux ~]# iptables -L -n --line-number

三,查下iptable规则

1,查看filter表

[root@linux ~]# iptables -L -n --line-number |grep 21 //--line-number可以显示规则序号,在删除的时候比较方便

5ACCEPT tcp -- 192.168.1.0/24 0.0.0.0/0 tcp dpt:21

如果不加-t的话,默认就是filter表,查看,添加,删除都是的

2,查看nat表

[root@linux ~]# iptables -t nat -vnL POSTROUTING --line-number

四,修改规则

[root@linux ~]# iptables -R INPUT 3 -j DROP//将规则3改成DROP

五,删除iptables规则

[root@linux ~]# iptables -D INPUT 3 //删除input的第3条规则

[root@linux ~]# iptables -t nat -D POSTROUTING 1 //删除nat表中postrouting的第一条规则

[root@linux ~]# iptables -F INPUT //清空 filter表INPUT所有规则

[root@linux ~]# iptables -F//清空所有规则

[root@linux ~]# iptables -t nat -F POSTROUTING //清空nat表POSTROUTING所有规则

六,设置默认规则

[root@linux ~]# iptables -P INPUT DROP //设置filter表INPUT默认规则是 DROP


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11877629.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存