Linux常用命令之IPtables命令(2)

实验环境:Centos7.4

实验目的:掌握linux的常用命令-IPtables命令的用法

实验步骤:

本篇文章继续上一篇中未讲完的iptables的一些常用命令的示例。

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

使用iptables防火墙规则可以实现传入web流量的负载均衡,例:使用iptables nth将HTTPS流量负载平衡至三个不同的ip地址。

12. 允许外部主机ping内部主机

13. 允许内部主机ping外部主机

14. 允许回环访问

例:在服务器上允许127.0.0.1回环访问。

15. 允许内部网络域外部网络的通信

防火墙服务器上的其中一个网卡连接到外部,另一个网卡连接到内部服务器,使用以下规则允许内部网络与外部网络的通信。此例中,eth1连接到外部网络(互联网),eth0连接到内部网络(例如:192.168.1.x)。

16. 允许出站的DNS连接

17. 允许来自指定网络的rsync连接请求

例:允许来自网络192.168.101.0/24的rsync连接请求

18. 允许来自指定网络的MySQL连接请求

很多情况下,MySQL数据库与web服务跑在同一台服务器上。有时候仅希望DBA和开发人员从内部网络(192.168.100.0/24)直接登录数据库,可尝试以下命令:

19. 允许Sendmail, Postfix邮件服务

Sendmail和postfix都使用了25端口,因此我们只需要允许来自25端口的连接请求即可。

20. 允许IMAP和IMAPS

例:允许IMAP/IMAP2流量,端口为143

例:允许IMAPS流量,端口为993

21. 允许POP3

例:允许POP3访问

22. 防止DoS攻击

上述例子中:

-m limit: 启用limit扩展

–limit 25/minute: 允许最多每分钟25个连接(根据需求更改)。

–limit-burst 100: 只有当连接达到limit-burst水平(此例为100)时才启用上述limit/minute限制。

23. 端口转发

例:将来自422端口的流量全部转到22端口。 这意味着既能通过422端口又能通过22端口进行ssh连接。启用DNAT转发。

除此之外,还需要允许连接到422端口的请求

24. 记录丢弃的数据表

第一步:新建名为LOGGING的链

第二步:将所有来自INPUT链中的数据包跳转到LOGGING链中

第三步:为这些包自定义个前缀,命名为”IPTables Packet Dropped”

第四步:丢弃这些数据包

看完了这些栗子你是豁然开朗还是更懵了,至少我自己如果不看上面的解释,懵,非常懵,里面有好多让人看不懂的地方,为啥还有一堆链,表,这都啥是啥,净整些没用的。

来,笔者就自己的理解分享一下。

iptables命令的基本语法与操作,在上一篇文章跟本篇文章展示了一遍。知其然不知其所以然,这个事情让人心情很烦躁。iptables首先是一条命令,他有自己的语法与挂接的参数,那么这条命令到底是做什么用的,为什么他这么重要。

Windows操作系统有防火墙,防火墙防火墙,在计算机领域就是设定一些规则,通过规则验证的,可以访问服务器、操作系统啥的,不符合规则的,对不起,无法访问。Linux操作系统也是一样的,两个操作系统所不同的就是根据操作系统的特定,会有不同的方式方法来完成规则设定这一操作。

Linux操作系统分为内核空间和用户空间,真正起作用的软件叫做netfilter,但是这个软件在内核空间,想访问他需要一个前端,iptables就是那个前端,他在用户空间,通过特定的语言规则与内核空间中的netfilter进行沟通交流。

网络上传输的数据大小不一,通常都会设定一定的大小作为传输单位,如果比该传输单位小的就按照传输单位传输,如果比该传输单位大的数据就切割,通常将该传输单位称为数据包,数据包的数据架构如下图所示

太专业了,能通俗易懂点吗?换个方式方法,数据包里面都存储了哪些内容,源地址,目标地址,传输协议(TCP、UDP等)和服务类型等。防火墙的功能是什么?不就是给这些数据包立规矩嘛!到底是收了这些包,还是丢弃这些包,由什么来决定,你猜对了,规则。配置防火墙的工作就是iptables来建立、修改、删除规则,这些规则决定包的accept、reject和drop。

说到了这里,用户通过网卡进入到内核空间的input,由input至web服务终点,在到output,在返回网卡,在到用户。数据包在哪里做的处理,是不是内核空间。对就是内核空间,此空间只有input,output(此模型为简化版,一会放完整版),则input,output称之为链。

链还有路由前(prerouting),转发(forward),路由后(postrouting),凑成了五种链。

他们五个为什么叫做链?

防火墙就是设置规则的,规则跟链有什么关系?

表又是什么?跟上面有毛关系?

且看下篇文章。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190122G1D52100?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券