linux – 你能推荐一个很好的iptables介绍吗?

linux – 你能推荐一个很好的iptables介绍吗?,第1张

概述我必须在 Linux服务器上设置防火墙(我以前的所有经验都是在Windows上).我的规则非常简单 – 禁止所有,允许一些端口全部,允许一些端口用于特定IP子网,而网络虽小但复杂(每个主机的IP至少有2 192.168 …网,每个人都可以互连许多不同的方式).我认为使用iptables包装器会使系统过于复杂化,从逻辑上引入许多不必要的实体,最好保持简单并直接使用iptables. 你能推荐一个关于 我必须在 Linux服务器上设置防火墙(我以前的所有经验都是在windows上).我的规则非常简单 – 禁止所有,允许一些端口全部,允许一些端口用于特定IP子网,而网络虽小但复杂(每个主机的IP至少有2 192.168 …网,每个人都可以互连许多不同的方式).我认为使用iptables包装器会使系统过于复杂化,从逻辑上引入许多不必要的实体,最好保持简单并直接使用iptables.

你能推荐一个关于如何编写iptables规则的快速介绍吗?

解决方法 Netfilter网站上提供了官方和推荐的 documentation的链接.

这不是一个新主题,资源是limitless.

大多数基本命令都非常直观,可以很容易地参考manpage.

netfilter是支持数据包过滤的内核级技术,非常先进.还有其他表可以破坏数据包,转换数据包,否则会影响路由. iptables实用程序是用于与netfilter交互的用户空间工具.如果您想了解高级功能,建议您参考上述文档.有关基本功能的介绍,请进一步阅读.

列出所有现有规则:

iptables -L -n

-n防止iptables解析ips,从而产生更快的输出.

默认表是过滤器表,用于将基本防火墙规则应用于三个链.过滤器表中的三个默认链是input,OUTPUT和FORWARD.

这些链很大程度上是自我解释的input链影响进入的数据包,OUTPUT链影响本地生成的数据包,最后FORWARD用于路由通过系统的任何数据包.

在您可以指定的目标中,您可以DROP数据包,这意味着只需忽略而不响应.您可以拒绝数据包,其中icmp响应将被发送到拒绝源.最后,您可以接受它们,这允许数据包继续路由.

通常使用面向外部的防火墙,默认选择是DROP而不是REJECT,因为它减少了Internet上可见的网络占用空间.例如,以其他方式限制对特定主机的服务的IP对DROP的可见性较低.

注意,-A表示附加到链的末尾.如果要插入顶部,可以使用-I.所有规则都是自上而下处理的. -D用于删除.

要丢弃来自192.168.235.235的传入数据包:

iptables -A input -s 192.168.235.235 -j DROP

这将跳转到来自该IP的所有协议的DROP目标.

接受:

iptables -A input -s 192.168.235.235 -j ACCEPT

要阻止从本地服务器或网络访问该IP,请执行以下 *** 作:

iptables -A OUTPUT -d 192.168.235.235 -j DROP

您可以指定-p协议,数据包的-s源,数据包的-d目标,目标端口–dport,源端口–sport以及将影响数据包处理方式的许多其他标志按照规则.

如果您的默认input策略是DROP,并且您希望允许192.168.123.0/24子网的每个人访问您服务器上的SSH,那么这是一个示例:

iptables -A input -s 192.168.123.0/24 -p tcp –dport 22 -j ACCEPT

没错,你也可以使用CIDR notation!

一般来说,最好的默认策略是所有链的DROP.每个链都有一个默认策略,由-P标志指定.即使您将策略设置为默认DROP,仍建议将链中的最终条目设置为DROP.

例如,要将input,FORWARD和OUTPUT链的策略更改为DROP:

iptables -P input DROPiptables -P FORWARD DROPiptables -P OUTPUT DROP

请注意,如果在没有首先允许自己访问SSH的情况下在远程系统上为input指定DROP的默认策略,则可能会阻止自己访问系统.如果在远程系统上,您可以指定临时crontab以每5分钟刷新所有规则作为故障保护.

删除所有规则并允许所有流量:

iptables -P input ACCEPTiptables -P OUTPUT ACCEPTiptables -P FORWARD ACCEPTiptables -Xiptables -F

注意,-X删除所有创建的链. -F刷新所有规则.

有一些本机工具可以保存和恢复规则.特别是,iptables-save和iptables-restore.大多数现代linux发行版都在系统提供的iptables init文件中保存和恢复功能.

还有其他防火墙最佳做法,例如丢弃格式错误的数据包和其他类型的不良流量.这是使用前端实用程序(如Shorewall)的一个优点,因为它默认会实现许多这些策略.尽管如此,我同意您的方法,并且更愿意直接维护自己的规则,并且可以在没有前端的情况下实现这些相同的最佳实践.

总结

以上是内存溢出为你收集整理的linux – 你能推荐一个很好的iptables介绍吗?全部内容,希望文章能够帮你解决linux – 你能推荐一个很好的iptables介绍吗?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

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

原文地址: http://outofmemory.cn/yw/1044823.html

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

发表评论

登录后才能评论

评论列表(0条)

保存