CentOS初步学习记录iptables

Posted Azure沫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS初步学习记录iptables相关的知识,希望对你有一定的参考价值。

一、前言

iptables 中文名:IP信息包过滤系统,它是一个配置 Linux 内核防火墙的命令行工具,是 netfilter 项目的一部分。术语 iptables 也经常代指该内核级防火墙。iptables 可以直接配置,也可以通过许多前端和图形界面配置。iptables 用于 ipv4,ip6tables 用于 ipv6。

iptables 是 Linux 核心网络安全的重要工具

(nftables 已经包含在 Linux kernel 3.13 中,以后会取代 iptables 成为主要的 Linux 防火墙工具。)

二、 iptables 命令

2.1 语法

iptables -t 表名 <-A/I/D/R> 规则链名 [规则号] <-i/o 网卡名> -p 协议名 <-s 源IP/源子网> --sport 源端口 <-d 目标IP/目标子网> --dport 目标端口 -j 动作

2.2 说明

1)表名

  • filter:包过滤,用于存放所有与防火墙相关操作的默认表。
  • raw:数据跟踪处理,用于配置数据包,raw 中的数据包不会被系统跟踪。
  • nat:用于网络地址转换(例如:端口转发)
  • mangle:用于对特定数据包的修改
  • security:用于强制访问控制网络规则

2)规则

  • -A:追加,在当前链的最后新增一个规则
  • -I num:插入,把当前规则插入为第几条
  • -R num:替换/修改第几条规则(格式:iptables -R 3 ……)
  • -D num:删除,明确指定删除第几条规则

3)规则链名

  • INPUT链:处理输入数据包
  • OUTPUT链:处理输出数据包
  • PORWARD链:处理转发数据包
  • PREROUTING链:用于目标地址转换(DNAT)
  • POSTOUTING链:用于源地址转换(SNAT)

4)协议名

  • TCP
  • UDP
  • ICMP

5)动作

  • ACCEPT:接收数据包
  • DROP:丢弃数据包
  • REDIRECT:重定向、映射、透明代理
  • SNAT:源地址转换
  • DNAT:目标地址转换
  • MASQUERADE:IP伪装(NAT),用于ADSL
  • LOG:日志记录

2.3 选项

  • -t<表>:指定要操纵的表
  • -A:向规则链中添加条目
  • -D:从规则链中删除条目
  • -i:向规则链中插入条目
  • -R:替换规则链中的条目
  • -L:显示规则链中已有的条目
  • -F:清楚规则链中已有的条目
  • -Z:清空规则链中的数据包计算器和字节计数器
  • -N:创建新的用户自定义规则链
  • -P:定义规则链中的默认目标
  • -h:显示帮助信息
  • -p:指定要匹配的数据包协议类型
  • -s:指定要匹配的数据包源ip地址
  • -j<目标>:指定要跳转的目标
  • -i<网络接口>:指定数据包进入本机的网络接口
  • -o<网络接口>:指定数据包要离开本机所使用的网络接口

以上是关于CentOS初步学习记录iptables的主要内容,如果未能解决你的问题,请参考以下文章

CentOS初步学习记录用户和用户组管理

CentOS初步学习记录Wget文件下载和Sed文件处理

CentOS 6 下单独记录 iptables 日志

centos7下使用iptables

CentOS版hadoop完全分布初步搭建

[Linux.NET] CentOS 开启/关闭端口