CentOS Iptables详解

   日期:2024-12-27    作者:zhongguojinji 移动:http://mip.riyuangf.com/mobile/quote/56984.html

是 Linux 自带的防火墙程序,可以对网络流量进行管理和过滤,来保障网络的安全。Iptables 可以被运用于 IPv4/IPv6 网络,支持网络地址转换(NAT)、端口转发、数据包过滤等功能。

CentOS Iptables详解

在 CentOS 上,Iptables 防火墙系统默认已安装。如果没有,可以通过 yum 命令进行安装。

安装完成后,通过以下命令启动 Iptables 服务:

Iptables 有三个分类,分别是表、链和规则。

表:一个表就是一个数据结构,可以提供不同的处理方式。Linux 操作系统默认提供了三个表:

  • 表: 是默认的表,用于过滤网络数据包。
  • 表:用于网络地址转换(NAT)。
  • 表:这个表可以修改报文头,而不是过滤数据报。比如可以修改某个特定的IP地址,修改TTL值等。

链: 链是表的组成部分,它能够执行指定的动作。CentOS 默认选择了五个主要的链。

  • 链:用于处理输入数据报。所有进入到本地计算机的网络数据包都要进入该链。
  • 链:用于处理输出数据报。所有发出本地计算机的网络数据包都要通过该链。
  • 链:用于处理转发数据报。当本地计算机作为路由器或者网关,数据必须经过本机的时候,就走这个链。
  • 链:用于在数据报到达本地计算机之前修改该数据报,能够修改报文头中的一些内容。
  • 链:用于在数据报将离开本地计算机之前修改该数据报,能够修改报文头中的一些内容。

规则: 规则是链的组成部分,每个规则定义了 Iptables 命令如何对数据包执行一个动作。 Iptables 命令用一些规则对链进行定义,设置这些规则可以限制、转发、修改、丢弃或允许流量通过这些链。

通过 命令可以查看规则,其中 参数表示查看所有的规则,如果想查看针对某个表的规则,可以加上表的名称,如下:

下列命令表示:通过实现 DROP 动作,从输入连接中丢弃所有的 ICMP ,因为所有的 ICMP 连接都来源于外部网络,我们不能让外部网络访问内部网络。

删除规则可以通过 命令,规则的编号可以从中找到。

修改规则可以先利用 删除原有规则,再使用 添加新规则。

重置规则可以通过下面的命令实现,默认的规则是允许所有的流量通过。

如何允许 Ping 呢?可以加入下面的规则:

如何允许SSH?可以加入下面的规则:

上面的命令中,第一条规则代表只有在状态为 NEW,来源为 TCP,目标端口为22的时候才允许连接通过。

下面是一些开源服务的 Iptables 配置示例:

上面的命令是将所有端口 80 的请求转发到端口 8080 上,如果是本地访问,则需要在 OUTPUT 链进行配置。

下面的规则可以防御基于 SYN 的攻击:

上面的命令表示只有 SYN 请求的 TCP 数据包才被接受,其他的都需要被丢弃。


特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号