七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

10.15 iptables filter表案例

案例:

需求:把80端口22端口21端口放行,22端口指定一个IP段,只有这个IP段的ip访问的时候才可以访问到,其他段的都拒绝。

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用定义变量,这样就不用每次都打后面这么长的地址。

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用首先把之前的规则清除掉,(没有-f指定表,默认就是filter表)

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用然后定义默认的策略,这一条是把INPUT链DROP掉

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用把OUTPUT链设置成ACCEPT

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用把FORWARD链设置成ACCEPT

然后我们来添加规则,下面这条规则是让通信更加顺畅。

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

然后把这个这个网段的访问22端口的数据包放行。

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

把80端口数据包放行。

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

把21端口数据包放行。

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

因为这个操作里有一个-p INPUT DROP操作,所以必须要写脚本才行。

然后执行脚本七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

然后我们可以查看一下

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用


icmp示例

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

可以然你ping外面的机器可以ping通,但是本机ping不通,也就是让别人ping不通你的机器。


10.16 iptables nat表应用(上)

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

首先准备两台机器,(如果担心实验一次性做不好可以做一个快照)

首先给01机器添加一块网卡(就是网络适配器),然后点击添加好的网卡在右侧选择LAN区段(相当于给这个网卡连到了内网的交换机上,这个交换机你的windows是连不上的,这样的话01机器和02机器连上同一台内网交换机,他们两个通信就可以了,其他不用管)

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

然后点击添加一个LAN区段

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

然后点击下拉选中你添加的LAN区段,之后点击确定。

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

然后我们给第二个机器也添加一块网卡,(方法通上)如果已经有了一块编辑好了网卡我们可以把它的启动时连接前面的勾去掉。

到这里准备工作就做好了(第一个机器有两个网卡,第二个机器有一个网卡),下面我们把两个机器启动。

启动之后我们查看一下01机器的网卡,可以看到多了一个网卡,然后我们给它设置ip,有两种方法,1.可以把原来的网卡复制一份改名叫新添加的网卡名,然后vi改ip以及netmask即可。

2.使用七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用也可以设置ip。(这种方法重启之后就没了)

然后我们给02机器新添加的网卡也设置一下ip,方法如上。之后尝试一下01和02能不能互相ping通(应该是通的)。还有Windows能不能ping通两台机器后添加的网卡(应该是不通的),还要试一下02能不能ping通外网。

10.17 iptables nat表应用(中)

下面我们就开始操作了

要想使用nat表使用网路的转发必须要修改内核参数,打开端口转发,如下(下面文件默认的内容是0,表示没有开启内核参数)

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

第二部增加一条规则,有了这个规则就可以实现上网了。

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

然后给B机器(02机器)设置网关

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

然后我们七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用应该是可以ping通的。这就意味着它可以和外网通信了。

就是相当于把A机器当成路由器,B可以访问外网,但是外网访问不到B。

10.18 iptables nat表应用(下)

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

就是做一个端口映射。

A打开端口转发

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

然后删除A原来的规则,

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

然后添加规则,如下规则意思是,把进来的数据包做一个端口转发,转发给B。

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

上面是进去的包,还有一个回来的包如下规则意思是:从B回来的包经过A时做一个snat操作,把目标地址改成133.130

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用

然后给B机器加上网关,就完成了

七周第四次课 2017.11.30 iptables filter表案例、iptables nat表应用