任务06.配置与管理iptables防火墙
一、实训目的
能熟练完成利用iptables架设企业NAT服务器。
二、项目背景
假如某公司需要Internet接入,由ISP分配IP地址202.112.113.112。采用iptables作为NAT服务器接入网络,内部采用192.168.1.0/24地址,外部采用202.112.113.112地址。为确保安全需要配置防火墙功能,要求内部仅能够访问Web、DNS及Mail三台服务器;内部Web服务器192.168.1.100通过端口映象方式对外提供服务。
该公司网络拓扑图如下图所示:
三、实训内容
练习Linux系统下NAT和iptables防火墙的配置。
四、实训步骤
0、查看iptables软件是否安装
1、首先进行基本网络的配置,我配置两个网络接口。
接口Eth0连接外网 ifconfig eth0 110.120.1.2
接口Eth1内部网络接口 ifconfig eth1 192.168.1.2
同时为能够连接外部网络中,为外部的网卡配置一个默认网官
route add default gw 110.120.1.1
2、检查 route –n,操作完成用claer
3、基本网络的设置,首先进行防火墙的配置之前,将原有的IP地址全部清除掉。
首先清除filter表 iptables –t filter –F ,
然后清除nat表 iptables –t nat –F
最后清除mangle表 iptables –t mangle –F。
我们就这样将防火墙原有的规则清除掉。
4、下面我就逐步进行iptables防火墙的配置,
(1) 设置web服务器允许访问。首先对防火的链进行追加规则,输入的接口使用eth0,然后协议用tcp,dport 目的端口为80,采取的动作为ACCEPT接受。后面我们对协议为udp端口为80采取接受。
(2)设置dns服务器允许访问。
(3)设置mail服务器允许访问。Mstp使用端口号位25,
这样我们就建立了一个基本的防火墙规则。
操作完成clear
5、检查一下我们刚才所使用建立的规则
Iptables –l ,因为默认在filter表里。查看完成 clear。
6、为了保护我们的服务器以及保护我们的网络,我们不接受ping的数据,那么后面我们就继续追加一些规则进去,
(1)设置不回应ICMP封包,禁止服务器本身被ping。#协议号为8是request,协议号为0是reply。DROP丢弃
clear退出
(2)防止扫描攻击选项,需对TCP协议的标志进行控制。Urg紧急指针令。
Clear
6、最后检查防火墙的配置,
iptables –L|more,由于规则比较多,那么我进行分页查看。
7、以上就是iptables的防火墙功能,下面我们就行实现nat的功能。最终我们需要将192.168.1.0这个网端的客户机通过我们的服务器,通过我们的nat功能连接到外部网络中,首先打开双网卡主机,也就是我们当前主机的路由转发功能,为了实现这个功能,我们使用重令项的功能打开目录连接的方式打开forward
ech0 1 >/proc/sys/net/ipv4/ip-forward(这样就可以打开路由转发的功能)
这样我们就能配置他iptables的nat功能了
8、重启网卡
[root@localhost ~]# iptables -A FORWARD -i eth0 -p tcp--dport 80 -j ACCEPT
[root@localhost ~]# iptables -A FORWARD -i eth0 -p udp--dport 80 -j ACCEPT
[root@localhost ~]# iptables -A FORWARD -i eth0 -p udp--dport 53 -j ACCEPT
[root@localhost ~]# iptables -A FORWARD -i eth0 -p tcp --dport 53 -jACCEPT
[root@localhost ~]# iptables -A FORWARD -i eth0 -p tcp--dport 25 -j ACCEPT
[root@localhost ~]# iptables -A FORWARD -i eth0 -p udp--dport 25 -j ACCEPT
[root@localhost ~]# iptables -A FORWARD -i eth0 -p udp --dport110 -j ACCEPT
[root@localhost ~]# iptables -A FORWARD -i eth0 -p tcp--dport 110 -j ACCEPT
这样我们就配置本机的路由转发功能以及iptables的nat的功能。
而为了完成这个功能的测试,我们需要在内部客户机上配置一个192.168.1.100,并且将网官指向我们的iptables的主机。
在客户机上:ifconfigeth0 192.168.1.100,
检查网络的连通性:ping110.120.1.2
返回主机(原配置主机):ping192.168.1.100
在客户机上:
进行默认网官的设置
route add default gw 110.120.1.1
进行dns的默认设置
vi /etc/resolv.conf (打开etc目录下的resolv.conf文件),
输入:nameserver 110.120.1.2
保存
这样我就完成了在客户机端的设置。Clear
9、首先我测试一下dns的解析,nslookupwww.baidu.com
clear退出
10、直观操作,实际的web网络。
输入网址进行查看网络连接状况。
设置就到这里结束。
五、实验小结
本次实验收获很多,让自己对iptables的远程登录连接服务进一步的了解,让自己更加充实。