《我的Linux成长之路(十九)------iptables防火墙应用②》

哈哈,今天晚上就来研究下iptables的一些编写规则吧!!!!
iptables一些表和链的关系在上一篇文章中已经写过
这次主要讲解我们如何编写iptables
刚刚打开虚拟机显示已经启动并让获取所有权或者移除:通常遇见该问题的原因是虚拟机正常关机,一般我们只需要将.lck的文件删除就可以了
《我的Linux成长之路(十九)------iptables防火墙应用②》
开始进入正题

概述

iptables 的编写是用来对表和链来进行一定的设置,然后达到我们想要的功能,例如可以对某段IP进行阻止他们的ping命令,禁止他人访问自己的80端口等。

IP tables的编写

通常编写的语法为:iptables -t 表名 选项 链名 条件 -j 操作(操作指我们前面说的ACCEPT-允许 DROP-丢弃 REJECT= 拒绝 log-日志)

选项 是我们对链表要执行什么要的操作(和数据库的操作类似 增删改查)

  1. 增加:-A 对链的尾部进行添加、-l 指定位置进行添加需要自己指定序号(不指定的时候默认作为第一条)
  2. 删除:-D 删除一条、-F清空链中的所有规则
  3. 查看:-L -n 查看规则。在加一个-v 表示详细查看 、 -L -n --line-numble 用来显示规则的序号(大写为选项,后边小写为子选项, 子选项需要跟在链名的后边)具体的使用请看后面
  4. 设置默认规则:-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地址范围是源地址

我们可以进行一些实例

《我的Linux成长之路(十九)------iptables防火墙应用②》我们来设置一个小的实例 禁止我的主机ping我的虚拟机centos6
《我的Linux成长之路(十九)------iptables防火墙应用②》我们看下没有打开iptables 输入iptables -L-n
《我的Linux成长之路(十九)------iptables防火墙应用②》
默认的规则都是允许。
打开iptables 输入iptables -L-n
《我的Linux成长之路(十九)------iptables防火墙应用②》编写一个iptables 禁止我们的主机ping 我们的虚拟机
iptables -t filter -A INPUT -p icmp -s ip -j 操作
《我的Linux成长之路(十九)------iptables防火墙应用②》
我们在进行主机ping该虚拟机
现在我们还能进行ping通
原因shi:
《我的Linux成长之路(十九)------iptables防火墙应用②》
现在我们进行删除重新在第一行加入
《我的Linux成长之路(十九)------iptables防火墙应用②》
《我的Linux成长之路(十九)------iptables防火墙应用②》现在我们在尾部进行加入禁止主机ping该虚拟机的命令:
《我的Linux成长之路(十九)------iptables防火墙应用②》此时我们可以在用主机ping该虚拟机
《我的Linux成长之路(十九)------iptables防火墙应用②》
现在一个简单的规则就写好了
本来该昨天晚上发的这个文章,哈哈自己太困了。