如何在Linux上的iptables规则中添加注释

时间:2020-01-09 14:16:48  来源:igfitidea点击:

如何使用iptables命令在Linux上的iptables规则中添加注释?

说明:iptables和ip6tables命令用于在Linux上设置,维护和防火墙规则。
您可以定义各种表。
每个表还包含许多内置链,也可能包含用户定义的链。
您可以向iptables添加注释。
它们有助于理解防火墙规则。
本教程显示如何向iptables规则添加注释。

如何在Linux上的iptables规则中添加注释

语法如下:

iptables -m comment --comment "comment here"
iptables -A INPUT -i eth1 -m comment --comment "my LAN - " -j DROP

您可以在任何规则中添加最多256个字符的注释。
让我们看一些例子。

如何显示注释?

当您尝试使用以下语法列出iptables规则时,将显示iptables注释:

iptables -L
iptables -t filter -L FORWARD
iptables -t nat -L
iptables -t nat -L -n -v | more
iptables -t nat -L PREROUTING
iptables -t nat -L PREROUTING -n -v --line-number

向iptables规则添加注释

让我们使用iptables删除或阻止垃圾邮件发送者的IP地址,并添加注释:

# iptables -A INPUT -s 192.54.1.1 -j DROP -m comment --comment "DROP spam IP address - "

还要阻止端口80和443(HTTP/HTTPS)以及注释:

# iptables -A INPUT -p tcp --dport 80 -m comment --comment "block HTTPD access - " -j DROP
# iptables -A INPUT -p tcp --dport 443 -m comment --comment "block HTTPDS access - " -j DROP

验证一下:

# iptables -t filter -L INPUT -n

点击放大

使用iptables防火墙为NAT规则创建注释

在这里,我直接在CentOS上编辑iptables配置文件/etc/sysconfig/iptables并添加规则:

*nat
:PREROUTING ACCEPT [0:0]
-A PREROUTING -d 192.168.2.201 -p tcp --dport 1:65535 -j DNAT --to-destination 192.168.122.229:1-65535 -m comment --comment "KVM hos to rhel7-theitroad VM port forwarding"
COMMIT

您必须重新加载防火墙。
验证一下:

$ sudo iptables -t nat -L -n -v

向ufw防火墙规则添加注释

UFW是简单防火墙的首字母缩写。
它用于管理Linux防火墙,旨在为用户提供易于使用的界面。
它适用于Ubuntu,Debian,Fedora,CentOS,Arch Linux和许多其他Linux发行版。
要为ufw规则添加注释:

$ sudo ufw rule comment 'my comment here'

打开端口53并写下有关规则的注释:

$ sudo ufw allow 53 comment 'open tcp and udp port 53 for dns'

另一个例子:

$ sudo ufw allow proto tcp from any to any port 80,443 comment 'Open web app ports'

如何在现有iptables规则中添加注释

解决方法:您需要使用replace语法:

iptables -R chain rulenum rule-specification

让我们使用以下iptables命令列出现有规则:

# iptables -t filter -L INPUT -n --line-number

输出示例:

Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:53 /* generated for LXD network lxdbr0 */
2    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:53 /* generated for LXD network lxdbr0 */
3    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:67 /* generated for LXD network lxdbr0 */
4    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:53
5    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:53
6    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:67
7    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:67
8    DROP       all  --  192.54.1.1           0.0.0.0/0            /* DROP spam IP address */
9    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:80 /* block HTTPD access */
10   DROP       tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:443 /* block HTTPDS access */
11   DROP       tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:25

最后一条规则(#11)表示DROP到端口25的流量。
要对此规则添加注释,请运行:

# iptables -R INPUT 11 -p tcp --dport 25 -j DROP -m comment --comment "Block port 25"
# iptables -t filter -L INPUT -n --line-number

输出示例:

Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:53 /* generated for LXD network lxdbr0 */
2    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:53 /* generated for LXD network lxdbr0 */
3    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:67 /* generated for LXD network lxdbr0 */
4    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:53
5    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:53
6    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:67
7    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:67
8    DROP       all  --  192.54.1.1           0.0.0.0/0            /* DROP spam IP address */
9    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:80 /* block HTTPD access */
10   DROP       tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:443 /* block HTTPDS access */
11   DROP       tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:25 /* Block port 25 */