开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第3天,点击查看活动详情
今天来讲一下基本的iptables的命令。
基本操作
iptables命令参数很多,我们需要的只有那么几种。比如清空规则,管理规则,查看配置的规则,保存规则到配置文件,删除特定规则,增加规则。按照数据库的增删改查的逻辑去理解,比较容易理解。
输入如下命令
iptables -h
我们可以得到当前iptabels版本支持的命令。
查询
查看当前某个表的规则,使用如下命令
iptables -t filter -nvL INPUT
查询filter表的input链的所有规则,n是用数字显示ip地址,v显示更详细的信息。 显示结果如下图所示。
第一行括号里 policy accept 0 packets,0 bytes,是说当前表的input链默认允许接受所有包,后续配置的规则应该按照拒绝动作配置,也就是‘黑名单’机制。
管理规则
iptables -F INPUT 清空规则
iptables -t filter -I INPUT -s 192.168.0.241 -j REJECT filter表的input链拒绝从192.168.0.241的包
此命令的I是insert的缩写,可以使用A(add),D(delete)。I和A的区别是插入会按照规则的第一个,添加会放在规则列表的最后一个。
使用ping验证,结果显示端口无法连接到。
再次查看input规则列表,可以看出来默认规则匹配到0包报文,咱们配置的规则匹配到5包报文(默认动作被拒绝)。
iptables -t filter -D INPUT 2
iptables -t filter -D -s 192.168.0.242 -j REJECT 删除某条规则
如果要使用序号删除规则,可以通过以下命令查询到:
iptables -t filter -vnL INPUT --line-numbers
保存
service iptables save
iptables-save > /etc/sysconfig/iptables 保存规则,写入到配置文件,永久生效,注意做好备份
好了,这些规则是比较简单的规则,帮助我们入门配置防火墙框架,给后续继续学习提高信心。