iptables 笔记(一)常用命令
filter表:负责过滤功能,防火墙,内核模块:iptables_filter
nat表:network address translation,网络地址转换功能;内核模块:iptables_nat
mangle表:拆解报文,做出修改,并重新封装的功能;内核模块:iptables_mangle
raw表:关闭nat表上启用的连接追踪机制内核模块:iptables_raw
所有规则都在这四张表中
规则匹配:按顺序匹配,顺序很重要。
ACCEPT:接受
DROP:丢弃
REJECT:拒绝
SOURCE:来源地址
destination:目标地址
iptables命令,查看规则命令:
iptables -t 表名 -L
查看对应表的所有规则,-t选项指定要操作的表,省略-t表名时。默认操作filter表。-L表示列出规则
iptables -t 表名 -L
查看指定表的指定链中的规则
iptables -t 表名 -v -L
查看指定表的所有规则,并且显示更详细的信息(更多的字段),-v表示verbose,表示详细的,冗长的,当使用-v选项时,会显示出计数器的信息
iptables -t 表名 -n -L
表示查看表的所有规则,并且在显示规则时,不对规则中的IP或者端口进行名称反解,-n选项表示不解析IP地址
iptables --line-numbers -t 表名 -L
查看表的所有规则, --line-numbers 表示显示规则的序号,可简写为--line
iptables -line -t 表名 -nvxL
显示表更详细的信息
iptables命令,增删改查命令:
新增规则:
iptables -F INPUT
清除filter表INOUT链中的规则
iptables -t filter -I INPUT -s ip地址 -j DROP
-l指明将规则插入哪一个链中,-l表示insert,即插入的意思,即增加的意思。
-s指明匹配条件中的“源地址”,如果报文的源地址属于-s对应的地址。那么报文则满足匹配条件,-s为source之意,表示源地址。
-j 指明“匹配条件”被满足时,所对应的动作,DROP为丢弃,当报文的源地址为该地址时,报文则被DROP丢弃。
iptables -A -t filter INPUT -s ip地址 -j ACCEPT
-A 表示在对应的表的链中追加规则
-j 动作,ACCEPT表示接受
iptables -I -t filter INPUT -s ip地址 -j ACCEPT
-I 表示在filter表的INPUT链的最前面添加新规则
iptables -t filter -I INPUT 2 -s ip地址 -j DROP
-l INPUT 2 表示在INPUT链中新增规则,新增的规则编号为2
删除规则:
1.根据规则的编号去删除规则
iptables -t filter -D INPUT 3
删除第3条规则
2.根据具体的匹配条件与动作删除规则
iptables -D INPUT -s 192.168.1.111 -j ACCEPT
删除符合该规则的规则
3.清除该表所有规则
iptables -t 表名 -F
4.清除指定表中某条链的所有规则
iptables -t 表名 -F 链名
修改规则:
iptables -t filter -R INPUT 1 -s 192.168.0.1 -j REJECT
-R 指定修改的链,使用-R INPUT 1 表示修改INPUT链的第一条规则
-J REJECT 表示将动作修改为REJECT
修改默认策略:
iptables -t filter -P FORWARD DROP
设置filter表的FORWARD链的默认动作为DROP
保存规则:
service iptables save
不执行此命令,重启服务或者重启机器就会没有。
centos 7 配置 iptables :
完结