首页 > 代码库 > iptables学习
iptables学习
iptables为我们预先定义了四张表 raw、mangle、nat、filter
filter表负责过滤:允许那些ip访问、拒绝那些ip访问、允许那些端口。。。是最常用的表
#查看表里面所有的规则
iptables -t filter -L -n
-n不解析IP地址
#查看某张表中的某条链
iptables -t filter -L INPUT
#带行号、不解析IP(-n)、有详细信息(verbose详细的)、-x显示计数器的精确值 、L表示某条链 iptables --line -t filter -nvxL INPUT
#清空filter表、INPUT链中的规则 iptables -F INPUT
在指定表的指定链的尾部添加一条规则,-A(append)选项表示在对应链的末尾添加规则,省略-t选项时,表示默认操作filter表中的规则
命令语法:iptables -t 表名 -A 链名 匹配条件 -j 动作 示例:iptables -t filter -A INPUT -s 192.168.1.146 -j DROP
在指定表的指定链的首部添加一条规则,-I选型表示在对应链的开头添加规则
命令语法:iptables -t 表名 -I 链名 匹配条件 -j 动作 示例:iptables -t filter -I INPUT -s 192.168.1.146 -j ACCEPT
设置指定表的指定链的默认策略(默认动作),并非添加规则。
命令语法:iptables -t 表名 -P 链名 动作
示例:iptables -t filter -P FORWARD ACCEPT
上例表示将filter表中FORWARD链的默认策略设置为ACCEPT
按照规则序号删除规则,删除指定表的指定链的指定规则,-D选项表示删除对应链中的规则。
命令语法:iptables -t 表名 -D 链名 规则序号
示例:iptables -t filter -D INPUT 3
按照具体的匹配条件与动作删除规则,删除指定表的指定链的指定规则。
命令语法:iptables -t 表名 -D 链名 匹配条件 -j 动作
示例:iptables -t filter -D INPUT -s 192.168.1.146 -j DROP
删除指定表的指定链中的所有规则,-F选项表示清空对应链中的规则,执行时需三思。
命令语法:iptables -t 表名 -F 链名
示例:iptables -t filter -F INPUT
保存规则命令如下,表示将iptables规则保存至/etc/sysconfig/iptables文件中,如果对应的操作没有保存,那么当重启iptables服务以后
注意点:centos7中使用默认使用firewalld,如果想要使用上述命令保存规则,需要安装iptables-service
或者使用如下方法保存规则
iptables-save > /etc/sysconfig/iptables
iptables-save > /etc/sysconfig/iptables
可以使用如下命令从指定的文件载入规则,注意:重载规则时,文件中的规则将会覆盖现有规则。
iptables-restore < /etc/sysconfig/iptables
iptables-restore < /etc/sysconfig/iptables
iptables学习