第五章 第九节 iptables 2018.4.27

本文介绍iptables的基本用法,包括常见的命令选项、链的功能以及如何通过命令实现封包过滤。此外,还介绍了TCP三次握手的过程及状态标记,以及与端口和服务相关的文件配置。

查看端口号的文件:/etc/services

 

TCP三次握手:

  第一次 ----NEW

  第二次、第三次 ----ESTABLISHED

  无法识别的 ------INVALID

  FTP每个端口都是独立的,21号和20号端口都是一去一回,他们之间是有关系的,这种关系我们称之为RELATED

 

 

 

 

封包过滤软件:iptables

filter:与本机相关的

 INPUT链:想进入本机的封包有关

 OUTPUT链:想从本机出去的封包有关

 FORWARD链:转发

nat表:内网的

 PREROUTING链:在判断路由之前,进行外网à内网目的地址转换(DNAT),

  POSTROUTING链:在判断路由之后,进行内网à外网源地址转换(SNAT

 OUTPUT链:发送出去封包

 

 

 

iptables [-t (table)]command(chain)[cretria] –j ACTION

1-t+表:raw/mangle/nat/filter(默认)

2command对链或者链中的规则进行管理操作

       -A:追加一条规则

       -I:插入一条规则

       -R:替换一条规则

       -D:删除一条规则

       -P:设置链的默认规则

3command+链:

       -N:新建一个自定义链

       -X:删除一个自定义链

       -E:重命名自定义链

       -F:清空指定链,若不指定链,则清空整个表中的链

      -P:设定链的默认策略

      -Z:置零(每天规则,包括默认策略都有两条计数器,一个是被本规则匹配到的所有数据包的个数,另一个是被本规则匹配到的大小之和)

4ACTIONDROP悄悄丢弃、REJECT明示拒绝、ACCEPT接受

 

查看:iptables–L:查看

                -v:详细

                -vv:更详细

                -vvv:更更详细

                --line-number:显示行号

                -n:显示数字地址,而不是名称地址

                -x:计数器的精确值

### 解决 Ubuntu 20.04 中 `Failed to restart iptables.service: Unit iptables.service not found` 错误 在较新的 Linux 发行版,包括 Ubuntu 20.04, 使用 nftables 替代了传统的 iptables 成为了默认的包过滤框架。因此,在这些版本中直接尝试操作名为 `iptables.service` 的单元会失败,因为该服务并未被安装或启用。 对于希望继续使用基于规则集配置的传统方式来管理网络流量控制策略的应用场景下,可以考虑安装并配置 `netfilter-persistent` 和 `iptables-persistent`, 这两个软件包允许保存和恢复 IP 表规则[^1]。 #### 安装必要的组件 首先更新本地APT缓存,并安装所需的工具: ```bash sudo apt update && sudo apt upgrade -y sudo apt install netfilter-persistent iptables-persistent -y ``` 上述命令将会设置好环境以便于后续能够持久化存储自定义的防火墙规则。 #### 配置 Iptables 规则 编辑 `/etc/iptables/rules.v4` 文件以添加特定需求下的访问控制列表(ACL),例如开放 SSH (端口22): ```bash sudo bash -c "echo '-A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT' >> /etc/iptables/rules.v4" ``` 这一步骤向 IPv4 版本的规则集中追加了一条新记录用于放通来自外部针对SSH协议的数据流请求。 #### 应用更改 为了让刚才所做的修改立即生效,需执行如下指令使当前 session 下即时应用已设定好的 ACLs: ```bash sudo netfilter-persistent reload ``` 通过这种方式可以在不依赖传统意义上的 `iptables.service` 单元文件的情况下实现相似的功能特性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值