一份菜单

25个最常用的Linux IPTables规则示例

乍一看,IPTables规则可能看起来很神秘。

在本文中,我’给出了25条实用的IPTables规则,您可以复制/粘贴这些规则并将其用于您的eeds.

这些示例将作为基本模板,供您调整这些规则以适合您的特定要求。

为便于参考,所有这25个iptables规则均采用Shell脚本格式: iptables规则

1.删​​除现有规则

在开始构建新规则集之前,您可能需要清除所有默认规则和现有规则。使用 iptablesflush command 如下所示。

iptables-F
(or)
iptables --flush

2.设置默认链策略

默认的链策略是ACCEPT。对于所有INPUT,FORWARD和OUTPUT链,将其更改为DROP,如下所示。

iptables-P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

当您同时制作INPUT和OUTPUT链时’的默认策略为DROP,对于您拥有的每个防火墙规则要求,都应定义两个规则。即一个用于传入,另一个用于传出。

在下面的所有示例中,每种情况我们都有两个规则,因为’已将DROP设置为INPUT和OUTPUT链的默认策略。

如果您信任内部用户,则可以省略上面的最后一行。即默认情况下不要丢弃所有传出数据包。在这种情况下,对于您具有的每个防火墙规则要求,只需定义一个规则即可。即只为传入定义规则,因为对于所有数据包,传出都是ACCEPT。

注意: 如果你不这样做’不知道连锁的意思是什么,您首先应该熟悉 IPTables基础.

3.阻止特定的IP地址

在继续其他示例之前,如果要阻止特定的ip地址,应首先执行以下操作。改变“x.x.x.x”在下面的示例中,您要阻止的特定IP地址。

BLOCK_THIS_IP="x.x.x.x"
iptables -A INPUT -s "$BLOCK_THIS_IP" -j DROP

当您从日志文件中的特定ip地址中发现一些奇怪的活动,并且希望在进行进一步研究时暂时阻止该ip地址时,这将很有帮助。

您也可以使用以下变体之一,该变体仅在eth0连接上阻止此IP地址的TCP通信。

iptables-A INPUT -i eth0 -s "$BLOCK_THIS_IP" -j DROP
iptables -A输入-i eth0 -p tcp-s "$BLOCK_THIS_IP" -j DROP

4.允许所有传入的SSH

以下规则允许eth0接口上的所有传入ssh连接。

iptables-A输入-i eth0 -p tcp--dport 22 -m state --state NEW,ESTABLISHED -j接受
iptables -A输出-o eth0 -p tcp--sport 22 -m state --state ESTABLISHED -j接受

注意:如果您想确切地理解每个参数的含义,则应阅读 如何添加IPTables防火墙规则

5.仅允许来自特定网络的传入SSH

以下规则仅允许从192.168.100.X网络传入的ssh连接。

iptables-A输入-i eth0 -p tcp-s 192.168.100.0/24 --dport 22 -m state --state NEW,ESTABLISHED -j接受
iptables -A输出-o eth0 -p tcp--sport 22 -m state --state ESTABLISHED -j接受

在上面的示例中,您也可以使用完整的子网掩码代替/ 24。即“192.168.100.0/255.255.255.0”.

6.允许传入的HTTP和HTTPS

以下规则允许所有传入的网络流量。即到端口80的HTTP流量。

iptables-A输入-i eth0 -p tcp--dport 80 -m state --state NEW,ESTABLISHED -j接受
iptables -A输出-o eth0 -p tcp--sport 80 -m state --state ESTABLISHED -j接受

以下规则允许所有传入的安全Web流量。即到端口443的HTTPS流量。

iptables-A输入-i eth0 -p tcp--dport 443 -m state --state NEW,ESTABLISHED -j接受
iptables -A输出-o eth0 -p tcp--sport 443 -m state --state ESTABLISHED -j接受

7.使用多端口将多个规则组合在一起

当允许从外部世界到多个端口的传入连接时,而不是为每个端口编写单独的规则,您可以使用多端口扩展将它们组合在一起,如下所示。

以下示例允许所有传入的SSH,HTTP和HTTPS通信。

iptables-A输入-i eth0 -p tcp-m multiport --dports 22,80,443 -m state --state NEW,ESTABLISHED -j接受
iptables -A输出-o eth0 -p tcp-m multiport --sports 22,80,443 -m state --state ESTABLISHED -j接受

8.允许传出SSH

以下规则允许传出ssh连接。即当您从内部SSH到外部服务器时。

iptables-A输出-o eth0 -p tcp--dport 22 -m state --state NEW,ESTABLISHED -j接受
iptables -A输入-i eth0 -p tcp--sport 22 -m state --state ESTABLISHED -j接受

请注意,这与传入规则略有不同。即我们在OUTPUT链上同时允许NEW和ESTABLISHED状态,而在INPUT链上只允许ESTABLISHED状态。对于传入规则,反之亦然。

9.仅允许传出SSH到特定网络

以下规则仅允许传出ssh连接到特定网络。即您从内部仅到192.168.100.0/24网络的ssh。

iptables-A输出-o eth0 -p tcp-d 192.168.100.0/24 --dport 22 -m state --state NEW,ESTABLISHED -j接受
iptables -A输入-i eth0 -p tcp--sport 22 -m state --state ESTABLISHED -j接受

10.允许传出HTTPS

以下规则允许传出的安全Web流量。当您要允许用户的互联网流量时,这很有用。在服务器上,当您想使用wget从外部下载一些文件时,这些规则也很有用。

iptables-A输出-o eth0 -p tcp--dport 443 -m state --state NEW,ESTABLISHED -j接受
iptables -A输入-i eth0 -p tcp--sport 443 -m state --state ESTABLISHED -j接受

注意:对于传出的HTTP Web通信,请添加上述两个附加规则,并将443更改为80。

11.负载平衡传入的网络流量

您还可以使用iptables防火墙规则来负载平衡传入的Web流量。

这使用iptables nth扩展名。以下示例将HTTPS通信负载平衡到三个不同的ip地址。对于第3个数据包,它将负载平衡到适当的服务器(使用计数器0)。

iptables-A PREROUTING -i eth0 -p tcp --dport 443 -m state --state NEW -m nth --counter 0 --every 3 --packet 0 -j DNAT --目的地192.168.1.101:443
iptables -A PREROUTING -i eth0 -p tcp --dport 443 -m state --state NEW -m nth --counter 0 --every 3 --packet 1 -j DNAT --to-destination 192.168.1.102:443
iptables -A PREROUTING -i eth0 -p tcp --dport 443 -m state --state NEW -m nth --counter 0 --every 3 --packet 2 -j DNAT --to-destination 192.168.1.103:443

12.允许从外向内ping

以下规则允许外部用户能够ping您的服务器。

iptables-A INPUT -p icmp --icmp-type echo-request -j接受
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j接受

13.允许从内向外ping

以下规则允许您从内部ping到任何外部服务器。

iptables-A OUTPUT -p icmp --icmp-type echo-request -j接受
iptables -A INPUT -p icmp --icmp-type echo-reply -j接受

14.允许环回访问

您应允许对服务器进行完全环回访问。即使用127.0.0.1访问

iptables-A INPUT -i lo -j接受
iptables -A OUTPUT -o lo -j接受

15.允许从内部网络到外部网络。

在一个以太网卡连接到外部,另一以太网卡连接到内部服务器的防火墙服务器上,使用以下规则允许内部网络与外部网络进行通信。

在此示例中,eth1连接到外部网络(互联网),而eth0连接到内部网络(例如:192.168.1.x)。

iptables-A FORWARD -i eth0 -o eth1 -j接受

16.允许出站DNS

以下规则允许传出DNS连接。

iptables-A OUTPUT -p udp -o eth0 --dport 53 -j接受
iptables -A INPUT -p udp -i eth0 --sport 53 -j接受

17.允许NIS连接

如果您正在运行NIS来管理用户帐户,则应允许NIS连接。即使允许SSH连接,如果您不这样做’如果不允许NIS相关的ypbind连接,则用户将无法登录。

NIS端口是动态的。即当ypbind启动时,它分配端口。

首先执行如下所示的rpcinfo -p并获取端口号。在此示例中,它使用的是端口853和850。

rpcinfo -p | grep ypbind

现在,允许传入连接到端口111和ypbind使用的端口。

iptables-A输入-p tcp--dport 111 -j接受
iptables -A INPUT -p udp --dport 111 -j接受
iptables -A输入-p tcp--dport 853 -j接受
iptables -A INPUT -p udp --dport 853 -j接受
iptables -A输入-p tcp--dport 850 -j接受
iptables -A INPUT -p udp --dport 850 -j接受

当您重新启动ypbind时,上面的命令将不起作用,因为那时ypbind具有不同的端口号。

有两种解决方案:1)为NIS使用静态ip地址,或2)使用一些聪明的shell脚本技术自动从服务器获取动态端口号。“rpcinfo -p”命令输出,并使用上述iptables规则中的命令。

18.允许来自特定网络的Rsync

以下规则仅允许来自特定网络的rsync。

iptables-A输入-i eth0 -p tcp-s 192.168.101.0/24 --dport 873 -m state --state NEW,ESTABLISHED -j接受
iptables -A输出-o eth0 -p tcp--sport 873 -m state --state ESTABLISHED -j接受

19.只允许来自特定网络的MySQL连接

如果您正在运行MySQL,通常您不会’不想允许外部直接连接。在大多数情况下,您的Web服务器可能在运行MySQL数据库的服务器上运行。

但是,DBA和开发人员可能需要使用MySQL客户端从其笔记本电脑和台式机直接登录MySQL。在这种情况下,您可能希望允许您的内部网络直接与MySQL通信,如下所示。

iptables-A输入-i eth0 -p tcp-s 192.168.100.0/24 --dport 3306 -m state --state NEW,ESTABLISHED -j接受
iptables -A输出-o eth0 -p tcp--sport 3306 -m state --state ESTABLISHED -j接受

20.允许Sendmail或Postfix流量

以下规则允许邮件流量。它可能是sendmail或postfix。

iptables-A输入-i eth0 -p tcp--dport 25 -m state --state NEW,ESTABLISHED -j接受
iptables -A输出-o eth0 -p tcp--sport 25 -m state --state ESTABLISHED -j接受

21.允许IMAP和IMAPS

以下规则允许IMAP / IMAP2通信。

iptables-A输入-i eth0 -p tcp--dport 143 -m state --state NEW,ESTABLISHED -j接受
iptables -A输出-o eth0 -p tcp--sport 143 -m state --state ESTABLISHED -j接受

以下规则允许IMAPS通信。

iptables-A输入-i eth0 -p tcp--dport 993 -m state --state NEW,ESTABLISHED -j接受
iptables -A输出-o eth0 -p tcp--sport 993 -m state --state ESTABLISHED -j接受

22.允许POP3和POP3S

以下规则允许POP3访问。

iptables-A输入-i eth0 -p tcp--dport 110 -m state --state NEW,ESTABLISHED -j接受
iptables -A输出-o eth0 -p tcp--sport 110 -m state --state ESTABLISHED -j接受

以下规则允许POP3S访问。

iptables-A输入-i eth0 -p tcp--dport 995 -m state --state NEW,ESTABLISHED -j接受
iptables -A输出-o eth0 -p tcp--sport 995 -m state --state ESTABLISHED -j接受

23.防止DoS攻击

以下iptables规则将帮助您预防Web服务器上的拒绝服务(DoS)攻击。

iptables-A输入-p tcp--dport 80 -m 限制 --limit 25/minute --limit-burst 100 -j接受

在上面的示例中:

  • -m 限制: This uses the 限制 iptablesextension
  • –limit 25/minute: This 限制s 上 ly maximum of 25 connection per minute. Change this value based 上 your specific requirement
  • –limit-burst 100: This value indicates that the 限制/minute will be enforced 上 ly after the total number of connection have reached the 限制-burst level.

24.端口转发

以下示例将所有到达端口442的流量路由到22。这意味着传入的ssh连接可以来自端口22和422。

iptables-t nat -A PREROUTING -p tcp -d 192.168.102.37 --dport 422 -j DNAT --to 192.168.102.37:22

如果执行上述操作,则还需要显式允许端口422上的传入连接。

iptables-A输入-i eth0 -p tcp--dport 422 -m state --state NEW,ESTABLISHED -j接受
iptables -A输出-o eth0 -p tcp--sport 422 -m state --state ESTABLISHED -j接受

25.日志丢弃的数据包

您可能还想记录所有丢弃的数据包。这些规则应位于底部。

首先,创建一个名为LOGGING的新链。

iptables-N LOGGING

接下来,确保所有剩余的传入连接都跳到LOGGING链,如下所示。

iptables-A INPUT -j LOGGING

接下来,通过指定自定义记录这些数据包“log-prefix”.

iptables-A LOGGING -m 限制 --limit 2/min -j LOG --log-prefix "IPTables Packet Dropped: " --log-level 7

最后,丢弃这些数据包。

iptables-A LOGGING -j DROP

以上所有25个iptables规则均采用Shell脚本格式: iptables规则

Previous articles in the iptablesseries:

如果您喜欢这篇文章,您可能还会喜欢..

  1. 50个Linux Sysadmin教程
  2. 50个最常用的Linux命令(包括示例)
  3. 排名前25位的最佳Linux性能监视和调试工具
  4. 妈妈,我找到了! 15个实用的Linux Find命令示例
  5. Linux 101 Hacks第二版电子书 


{ 50 评论… 加一 }

  • 公斤 2011年6月14日,上午3:42

    好人,并且期望所有与iptables相关的著作都在一个pdf文件中。谢谢

  • 皮塔努 2011年6月14日,上午3:57

    嗨,非常感谢您提供上述信息。但是,我想知道对于Internet上的特定MAC地址是否可以通过iptables进行阻止或允许通过iptables,就像我的eth0使用本地IP 10.10.10.10(通过公共IP整理)一样例如100.100.100.100并通过ISP连接到Internet,那么来自Internet的具有特定MAC ID(在iptables中允许)的某人应该可以SSH到我的公共IP(100.100.100.100),其余的应该丢弃。

    可以通过互联网吗

  • 马诺吉 2011年6月14日,上午4:25

    继续写作ðŸ™,Gr8工作!!!

  • 加雷斯·威廉姆斯 2011年6月14日,上午11:16

    Diptanu您不能基于mac地址过滤数据包。即使有可能该主机不在您的子网中,也不会与它通信,也不会使用MAC地址与之通信。与该主机通信时,所有流量都通过默认网关路由。

  • 马辛·雷巴克(Marcin Rybak) 2011年6月14日,下午2:26

    如果有人要放弃默认策略,则第一个规则集应该更深入– first rule:
    iptables-F,会把他删掉。您已被警告ðŸ™,

  • Kishore 2011年6月14日,下午2:59

    非常有用的ðŸ™,

  • 冯斯基皮 2011年6月14日,下午3:03

    默认规则应始终是阻止TCP25上的所有出站流量,除非发往您自己的电子邮件服务器。

  • 维鲁普罗 2011年6月16日,上午3:07

    好收藏 of iptablesrules!
    只是想提一下” -m 限制 ”确实匹配数据包而不是连接,因此在您的示例中,您将每分钟匹配25个数据包,我认为这不是您想要的。
    The solution to 限制 the number of connections is to use connlimit match.
    一个例子:
    iptables-A输入-p tcp–syn –dport 80 -m connlimit–connlimit-above 15 –connlimit-mask 32 -j拒绝–使用TCP重置拒绝
    将拒绝来自一个源IP的15以上的连接–捍卫Web服务器的一个很好的规则。

    另外,将一个示例添加到您的规则列表中也很棒“hashlimit”匹配,当您想免受DDoS攻击时,它具有更多选择。
    用“limit” match you can 限制 the global rate of packets per time interval, but with “hashlimit”, you can 限制 them per IP, per combination IP + port, etc.
    因此,Web服务器的示例如下所示:
    iptables-A输入-p tcp–dport 80 -m 哈希限制 –hashlimit 45/sec –hashlimit-burst 60 –hashlimit-mode srcip
    –hashlimit-name DDOS –hashlimit-htable-size 32768–hashlimit-htable-max 32768–hashlimit-htable-gcinterval 1000
    –hashlimit-htable-expire 100000 -j接受

    希望这会帮助某人。

    无论如何,感谢您的精彩文章!

  • 保罗·M 2011年6月30日,上午7:59

    有一条通用规则允许输入/转发建立/相关,允许所有来自防火墙本身的出站流量,然后控制转发或输入链中的流量,这是很有意义的,否则它会变得太过复杂。

    和唐’不要忘记为lo接口添加规则。

  • 贾拉尔·哈吉霍拉马利 2011年10月21日,上午11:04

    很好… 谢谢

  • 沙拉德 2011年12月12日,上午6:11

    真的帮了我很多…

    在实施某些策略后,仅一个问题,我的服务器无法解析任何域名。

  • Rod_Moncada 2012年1月16日,下午4:48

    嘿,沙拉德,

    实际上需要打开INPUT的端口53。这样的事情会起作用:
    #dnsserver = ipaddress
    #iptables -A INPUT -p udp –sport 53 –dport 1024:65535 -d $dnsserver -j接受

    这对我有用,如果有请请一些建议’更好或更安全的方法

  • 斯图尔特 2012年1月28日,下午2:17

    优秀的。谢谢。

  • de2x 2012年2月24日,晚上11:13

    我可以在iptables上允许Google托管/域Google吗?你能告诉我吗,请帮忙..

  • 塔拉尼 2012年3月28日,上午7:36

    优秀……

  • 柯蒂斯·拉克(Curtis Ruck) 2012年5月8日,下午2:52

    您如何将流量(如443)从一个NIC转发到隐藏的服务器(即DMZ中)?一世’我们尝试设置规则#24,但是正在记录数据包并从FORWARD链中将其丢弃。

  • 最高 2012年5月27日,下午2:13

    非常有用的条款….

    @vierupro,我的路由器带有busybox,并且定义了许多规则来设置网络限制。请写下一个规则,该规则可以将特定IP的下载速度限制为20 kb / s。

  • 斯里拉姆 2012年7月9日,下午5:51

    有规则吗,我可以进行出站https会话‘sticky’使用iptables?我正在尝试在双WAN dd-wrt路由器(Linksys E2000)上实现此目标

  • 肯尼迪 2012年8月25日,上午8:26

    “应用iptables规则时出错。退出代码:11。
    iptablesv1.4.10
    iptables:该名称没有链/目标/匹配项。”

    任何人都可以告诉这个错误是什么以及如何解决。
    我有一个android手机,我正试图在我的根设备上安装防火墙,但我一直卡在此错误中。

  • 雷纳托 2012年9月13日,晚上9:44

    在网络安全方面,如何比较两个Linux防火墙?

  • 赛德 2012年9月28日,晚上10:01

    那个保罗M…
    iptables–flush
    iptables–policy INPUT DROP
    iptables–policy OUTPUT DROP
    iptables–policy FORWARD DROP
    iptables–append INPUT -i lo -j接受
    iptables–append OUTPUT -o lo -j接受
    iptables–附加INPUT -m状态–state \
    ESTABLISHED,RELATED -j接受
    iptables–附加输出-m状态–state \
    NEW,ESTABLISHED,RELATED -j接受

  • 阿利 2013年1月30日,上午2:09

    谢谢………..

  • dp 2013年2月23日,上午7:24

    海友,

    请让我知道如何通过将iptables与mac地址一起使用来限制服务器访问。

    我只想授予2个mac地址的权限,并限制其余的mac地址以与服务器连接。

    谢谢
    dp

  • 阿米特(Amit Shrivastava) 2013年4月9日,上午2:51

    好收藏…Thx

  • 苏曼塔 2013年4月25日,上午1:42

    你好

    谢谢这篇伟大的文章!我有一个关于删除规则的查询。
    我正在使用以下命令在iptables中创建静态nat规则

    iptables-t nat -I POSTROUTING 1 -j SNAT -p ip -s 1.1.1.10/32–到源2.2.2.30-2.2.2.30 -o eth2

    执行完上述命令后,我可以观察到源代码转换的发生,并且它也在iptables nat列表中列出。

    通过执行以下命令删除规则后

    iptables-t nat -D POSTROUTING -j SNAT -p ip -s 1.1.1.10/32–到源2.2.2.30-2.2.2.30 -o eth2

    iptablesnat中的条目已删除,但我仍然能够观察到源代码转换发生在1.1.1.10到2.2.2.30之间。

    请建议我需要做些什么才能从nat表中完全删除条目,或者我错过了什么。

    提前致谢!

    问候,
    苏曼塔。

  • 丹尼尔 2013年6月10日,上午12:25

    我建议您考虑更改讨论命令的顺序。

    Linux中的大多数内容都需要重新启动服务x才能使更改生效。

    显然不是iptables。

    告诉VPS丢弃所有流量’重新SSHd从来都不是一个好主意。

  • 溴H 2013年8月5日,上午6:36

    你好
    感谢这份精彩的清单。
    只是电子邮件–唯一有效的配置是符合以下三个规则:
    iptables-A输出-o eth0 -p tcp–sport 25 -m state –state NEW,ESTABLISHED -j接受
    iptables-A输出-o eth0 -p tcp–dport 25 -m state –state NEW,ESTABLISHED -j接受
    iptables-A输入-i eth0 -p tcp–sport 25 -m state –state ESTABLISHED -j接受

    再次非常感谢

  • Iabc 2013年8月27日,上午9:10

    如果有人感兴趣,这里是被动FTP的iptables。
    &感谢Ramesh提供的精彩博客。

    iptables-A输入-p tcp-m tcp –dport 21 -m state –state NEW,ESTABLISHED -j接受
    iptables-A输出-p tcp -m tcp–sport 21 -m state –state ESTABLISHED -j接受

    iptables-A输入-p tcp-m tcp –sport 1024:65535 –dport 1024:65535 -m状态–state NEW,RELATED,ESTABLISHED -j接受
    iptables-A输出-p tcp -m tcp–sport 1024:65535 –dport 1024:65535 -m状态–state NEW,RELATED,ESTABLISHED -j接受

  • iTommix 2013年9月2日,上午7:25

    你好

    不错的教程。我有以下问题:

    我使用iptables建立了一个强制门户(热点)。从一开始我就阻止了每个端口,并路由到自己的Apache服务器上的启动页面:

    iptables-t mangle -A路由-i wlan0 -p tcp -m tcp–dport 1:65535 -j互联网
    iptables-t nat -A PREROUTING -i wlan0 -p tcp -m标记–mark 99 -m tcp –dport 1:65535 -j DNAT–目的地10.0.0.254

    但是我需要在特定域上将一个CSS和javascript文件加载到此初始页面的例外。我怎样才能做到这一点?

    预先感谢您的答复。

  • 塔尔维 2013年10月16日,上午12:29

    什么是eth0?

  • 楚格 2013年10月16日,晚上10:32

    非常有帮助,很好的介绍。谢谢。

  • 沙爹 2013年11月3日,晚上10:18

    嘿,

    我有两个AWS实例Ngx和另一个调用WP,WP运行一个作为托管服务器,而Ngx是代理。我需要将WP配置为仅接受来自Ngx的HTTP请求。我该怎么做呢?

  • 沙爹 2013年11月3日,晚上10:23

    你好

    我需要配置防火墙(iptable)来接受来自服务器的HTTP请求,我该如何配置?
    我在AWS上有两个实例,实例一只需要接受实例二的HTTP请求。

    我该如何配置?我是否需要配置传入和传出的http请求?

  • 安农 2014年2月10日,上午6:13

    它对我有用,Gj!

  • 安妮莎 2014年2月13日,上午12:54

    我们必须通过IPTABLE阻止未使用的IP,例如,我们的一个分支网络已通过此范围192.168.3.0/24进行了配置,并且该系列中存在许多未使用的IP。出于某种原因,我们必须阻止未使用的IP地址,如何才能阻止那些IP(未使用的IP,例如192.168.3.5、192.168.3.10到192.168.3.20、192.168.3.24、192.168.3.27等)

  • 米切尔 2014年6月5日,上午5:04

    你好,

    我无法使用Outlook Express或MS Outlook访问imap和SMTP端口465和993以访问gmail。虽然我已经在iptables中接受了两个端口。仍然无法访问。

    还有其他什么是ubuntu 14.04网关,代理已打开。两个接口卡,一个连接到路由器,另一个连接到内部接口。

    有任何想法吗?

  • 霍尔格 2014年6月24日,下午4:15

    例子24:你不’不必打开端口422,则在过滤器之前完成预路由!

  • 约翰·塞尔比 2014年11月9日,上午4:17

    对于上述#23,您列出了以下内容,以防止DOS攻击:

    ——————————-
    23.防止DoS攻击

    以下iptables规则将帮助您预防Web服务器上的拒绝服务(DoS)攻击。

    iptables-A输入-p tcp–dport 80 -m 限制 –limit 25/minute –limit-burst 100 -j接受

    ————————–

    应该’规定的规则“-j DROP”最后而不是“-j ACCEPT”?还是我对该规则的行为感到困惑?

  • 乔恩·西弗森(Jon Syvertson) 2015年3月4日,上午11:51

    只是您知道您的postfix配置没有’t work. I believe –sport and –dport are swapped. – 问候, 乔n

  • 德米特里·桑达洛夫(Dmitry Sandalov) 2015年3月5日,下午5:11

    我的imaps和smtp没有’也不能工作。通过以下修改可以完美地工作:

    #20.允许Sendmail或Postfix
    iptables-A输出-o eth0 -p tcp–dport 25 -m state –state NEW,ESTABLISHED -j接受
    iptables-A输入-i eth0 -p tcp–sport 25 -m state –state ESTABLISHED -j接受

    #21.允许IMAPS
    iptables-A输出-o eth0 -p tcp–dport 993 -m state –state NEW,ESTABLISHED -j接受
    iptables-A输入-i eth0 -p tcp–sport 993 -m state –state ESTABLISHED -j接受

    #允许SMTP
    iptables-A输出-o eth0 -p tcp–dport 465 -m state –state NEW,ESTABLISHED -j接受
    iptables-A输入-i eth0 -p tcp–sport 465 -m state –state ESTABLISHED -j接受

  • 阿卜杜勒·瓦多德(Abdul Vadood) 2015年3月12日,上午4:44

    你好

    我想在服务器上保持iptable启用,但是即使添加了443以接受连接后,也无法加载https。禁用iptable时正在加载。

    selinux处于禁用状态。

    尝试了以下规则,但没有运气
    -A输入-p tcp -m tcp–dport 443 -j接受
    -A输入-p tcp -m状态–状态NEW,ESTABLISHED -m tcp–dport 443 -j接受

    任何想法?

    谢谢,
    阿卜杜勒·瓦多德(Abdul Vadood)

  • 虚无 2015年3月13日,下午7:20

    真的有帮助
    非常感谢

  • 彼得·穆亚 2015年5月26日,上午11:39

    你好
    如果在示例11上运行用于负载平衡传入Web流量的步骤,则会得到以下信息:
    [root @ iptablesSrv〜]#iptables -A PREROUTING -i eth0 -p tcp–dport 443 -m state –state NEW -m nth –counter 0 –every 3 –packet 0 -j DNAT –目的地192.168.1.101:443
    iptablesv1.4.21:无法’t load match `nth’:无此文件或目录
    我正在使用centos 7&似乎没有找到有关'nth的任何信息’

  • 2015年8月5日,下午1:07

    iptables-save怎么样

    似乎应该在列表中…

    也许只是在评论中

  • 2015年8月5日,下午1:10

    How about: service iptablessave

    似乎应该已经在文章中了。

    或者也许只是在评论中…

  • Kishore 2015年9月7日,上午1:08

    我有一个具有两个接口eth0(IP地址为IP1的LAN)和eth1(IP地址为IP2的WAN)的路由器。
    我已应用POSTROUTING规则将传出数据包的源IP更改为WAN IP地址(eth1 ipaddress IP2)。
    我有一个PREROUTING规则,它将WNA接口上传入数据包的目标IP更改为本地IP地址。
    我希望WAN接口上的数据包只能使用公共IP地址(WAN接口IP地址),并且希望丢弃所有目标IP而不是公共IP的数据包。
    对于使用规则的IPTables 1.4.0版“iptables -t nat -A路由-i eth1 -d! IP2 -j DROP”,我能够阻止WAN接口上除公共IP地址之外的流量。
    但是在IP表的1.4.21版本中,NAT表不支持DROP。我不能在FORWARD链中应用与在PREROUTING链本身中进行IP转换相同的规则。
    有人可以帮助我使用IP Tables 1.4.21版实现相同的功能吗?

    问候,
    Kishore。

  • 法比奥·平托(Fabio B Pinto) 2015年10月26日,下午4:08

    你好你好吗?

    我想阻止eth0到ping范围5.12.50.0/24

    我如何使用iptables做到这一点?

  • 圣地亚哥 2016年2月25日,下午4:59

    你好希望您能够帮助我。

    我已经在CentOS服务器中安装了MongoDB。我有默认配置。

    我想连接到数据库并从Android应用程序中进行一些查询。有人告诉我应该在服务器中打开一个端口,并将该流量转发到MongoDB端口(默认为27017)。
    我从中了解到“iptables”我可以直接打开该端口(过滤器表的INPUT链)。
    我错了吗?这样做是否会引起安全问题?
    我是否应该更好地使用NAT表的PREROUTING链?

    谢谢你的帮助!

  • 乔uni“ rautamiekka”Järvinen 2016年2月29日,下午5:48

    警告:如果不这样做’t具有允许访问的规则,作为#25块的一部分运行iptables -A LOGGING -jDROP§完全访问!

  • 2016年4月12日,上午8:06

    大家好。我需要很大的帮助。
    我有一项任务要使iptables和nftables有所不同。
    我应该使用iperf。
    首先要迈向iperf,我应该使用一些bash脚本来运行〜50–100k条规则,最后一条规则可能会抛出iperf。
    如何创建这种规则编号?

发表评论