🐼
iptables
规则表
规则链
规则表匹配顺序
规则链匹配顺序
-
主机型防火墙
入站数据
出战数据
-
网络型防火墙
转发数据
-
自上而下一次匹配,找到的规则就停止,LOG除外。如找不到匹配的规则则按默认策略处理,没修改时,默认允许。
安装iptables
centos7默认安装firewall,安装之前要关闭
systemctl stop firewalld
systemctl disable firewalld.service
iptables命令格式
- 注意事项
不指定表名时,默认指filter表
不指定链名时,默认指定表内所有链
除非设置链的默认策略,否则必须指定匹配条件
控制类型使用大写字母,其余均为小写
常用的控制类型
ACCEPT 允许数据包通过
DROP 直接丢弃数据包
REJECT 拒绝数据包通过
SNAT 修改数据包的源地址
DNAT 修改数据包的目的地址
MASQUERADE 伪装成一个非固定公网IP地址
LOG 在/var/log/messages文件中记录日志信息,然后将数据包传递给下一条规则
常用的管理选项
-A 在指定链的末尾追加一条新的规则
-I 在指定链的开头中插入一条新的规则
-R 修改替换指定链中的某一条规则
-P 设置指定链的默认策略
-D 删除指定链的策略
-F 清空指定链的所有策略
-L 列出指定链中所有规则
-n 使用数字形式显示输出结果[如显示IP地址而不是主机名]
-v 显示详细信息,包括每条规则的匹配包数量和匹配字节数
–line-numbers 查看规则时,显示规则的序号
匹配条件
-p 指定要匹配的数据包的协议类型
-s 指定要匹配的数据包的源IP地址
-d 指定要匹配的数据包的目的IP地址
-i 指定数据包进入本机的网络接口
-o 指定数据包离开本机做使用的网络接口
–sport 指定源端口号
–dport 指定目的端口号
✋
不指定表则默认时filter表
iptables -t filter -A INPUT -p icmp -j REJECT
查看规则表
iptables [-t 表名] -n -L [链名] [--line-numbers]
iptables -L
iptables -n -L --line-numbers
设置默认策略
iptables -P INPUT DROP
iptables [-t 表名] -P <链名&