《我的Linux成长之路(十九)------iptables防火墙应用②》
哈哈,今天晚上就来研究下iptables的一些编写规则吧!!!!
iptables一些表和链的关系在上一篇文章中已经写过
这次主要讲解我们如何编写iptables
刚刚打开虚拟机显示已经启动并让获取所有权或者移除:通常遇见该问题的原因是虚拟机正常关机,一般我们只需要将.lck的文件删除就可以了
开始进入正题
概述
iptables 的编写是用来对表和链来进行一定的设置,然后达到我们想要的功能,例如可以对某段IP进行阻止他们的ping命令,禁止他人访问自己的80端口等。
IP tables的编写
通常编写的语法为:iptables -t 表名 选项 链名 条件 -j 操作(操作指我们前面说的ACCEPT-允许 DROP-丢弃 REJECT= 拒绝 log-日志)
选项 是我们对链表要执行什么要的操作(和数据库的操作类似 增删改查)
- 增加:-A 对链的尾部进行添加、-l 指定位置进行添加需要自己指定序号(不指定的时候默认作为第一条)
- 删除:-D 删除一条、-F清空链中的所有规则
- 查看:-L -n 查看规则。在加一个-v 表示详细查看 、 -L -n --line-numble 用来显示规则的序号(大写为选项,后边小写为子选项, 子选项需要跟在链名的后边)具体的使用请看后面
- 设置默认规则:-P 链名 DROP或ACCEPT
设置匹配条件
-p 协议 ##常用的协议有 UDP TCP ICMP
-s 源地址 ## 控制源地址访问
-d 目的地址 ## 控制目的地址访问
-i 入站网卡名称 ## 控制传输数据的入站网卡
-o 出战网卡名称 ## 控制传输数据的出战网卡
我们在编写规则的时候要注意主机数据的流向,例如input链只能使用-i入站网卡
还有一些连用的格式。
例如:
-p 协议 --dport 目的端口(对一个端口进行设置该端口上该协议的规则)
也可以将–dport 改为–sport 源端口
还有一些可以进行多端口设置的命令
-m multipport -p tcp/udp --dport ## 设置多个端口,设置连续端口的格式为80:90指80-90 ;80,90指 80 和90 端口
-m iprange --src-range 192.168.1.1:192.168.1.10 ##指定的ip地址范围是源地址
我们可以进行一些实例
我们来设置一个小的实例 禁止我的主机ping我的虚拟机centos6
我们看下没有打开iptables 输入iptables -L-n
默认的规则都是允许。
打开iptables 输入iptables -L-n编写一个iptables 禁止我们的主机ping 我们的虚拟机
iptables -t filter -A INPUT -p icmp -s ip -j 操作
我们在进行主机ping该虚拟机
现在我们还能进行ping通
原因shi:
现在我们进行删除重新在第一行加入现在我们在尾部进行加入禁止主机ping该虚拟机的命令:
此时我们可以在用主机ping该虚拟机
现在一个简单的规则就写好了
本来该昨天晚上发的这个文章,哈哈自己太困了。