实验考察知识点:
- iptables防火墙的规则配置
- DNS分离解析的配置
实验内容:
web服务器在内网中,提供http服务。
要求内网中的主机能够通过 www.yuji.com 访问该web服务。
外网的主机能够通过 www.yuji.com:8080 访问该web服务。
实验环境:
1、web服务器:192.168.137.10/24(VMnet1)
2、外网主机(win10客户机):12.0.0.200/24(VMnet2)
3、网关服务器:
ens33网卡地址:192.168.137.137/24(VMnet1)
ens36网卡地址:12.0.0.254/24(VMnet2)
实验拓扑:
实验步骤:
一、配置网关服务器
1、配置网卡。
增加一块网卡ens36。
将ens33的网络模式设置为VMnet1(仅主机模式),地址设置为192.168.137.137。
将ens36的网络模式设置为VMnet2(仅主机模式),地址设置为12.0.0.254。
之后重启网络服务。
2、关闭firewalld和selinux。开启路由转发功能。
[root@yuji ~]# systemctl stop firewalld
[root@yuji ~]# setenforce 0
[root@yuji ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1 //在文件中增加这一行,开启路由转发功能
[root@yuji ~]# sysctl -p //读取修改后的配置
net.ipv4.ip_forward = 1
复制代码
3、配置iptables策略。
1)设置SNAT服务,解析源地址。修改nat表中的POSTROUTING链
[root@yuji ~]# iptables -t nat -A POSTROUTING -s 192.168.137.10/24 -o ens36 -j SNAT --to 12.0.0.254
#-t nat:指定nat表
#-A POSTROUTING:指定POSTROUTING链
#-s 192.168.72.10/24:源地址网段
#-o ens36:出站网卡
#-j SNAT --to 12.0.0.254:使用SNAT服务,将源地址转换成公网IP地址。
复制代码
2)设置DNAT服务,解析目的地址。修改nat表中的PRETROUTING链。
[root@yuji ~]# iptables -t nat -A PREROUTING -i ens36 -d 12.0.0.254 -p tcp --dport 8080 -j DNAT --to 192.168.137.10:80
复制代码
4、配置DNS分离解析。
当内网解析ww.yuji.com时,将域名解析为:192.168.137.10。
当外网解析ww.yuji.com时,将域名解析为:12.0.0.254。
1)编辑主配置文件。
[root@yuji ~]# vim /etc/named.conf //编辑主配置文件
-----------------------------------
12 options {
13 listen-on port 53 { any; }; //将监听地址修改为any
14 listen-on-v6 port 53 { ::1; };
15 directory "/var/named";
16 dump-file "/var/named/data/cache_dump.db";
17 statistics-file "/var/named/data/named_stats.txt";
18 memstatistics-file "/var/named/data/named_mem_stats.txt";
19 allow-query { any; }; //将允许查询的地址修改为any
52 #zone "." IN {
53 # type hint;
54 # file "named.ca";
55 #};
复制代码
2)编辑区域配置文件。
[root@yuji ~]# vim /etc/named.rfc1912.zones //修改区域配置文件,要将view以外的zones都删除
----------------------
view "lan" {
match-clients {192.168.137.0/24;}; //声明内网网段
zone "yuji.com" IN { //声明域名
type master;
file "yuji.com.zone.lan"; //声明内网解析时对应的地址库文件
};
zone "." IN { //用于解析根域名
type hint;
file "named.ca";
};
};
view "wan" {
match-clients {any;}; //声明外网地址
zone "yuji.com" IN { //声明域名
type master;
file "yuji.com.zone.wan"; //声明外网解析时对应的地址库文件
};
};
复制代码
3)配置内网解析地址库文件:
[root@yuji ~]# cd /var/named/
[root@yuji named]# cp -p named.localhost yuji.com.zone.lan
[root@yuji named]# vim yuji.com.zone.lan
$TTL 1D
@ IN SOA @ admin.yuji.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
master A 192.168.137.137
www IN A 192.168.137.10
复制代码
4)配置外网解析地址库文件。之后启动named服务。
[root@yuji named]# cp -p named.localhost yuji.com.zone.wan
[root@yuji named]# vim yuji.com.zone.wan
$TTL 1D
@ IN SOA @ admin.yuji.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 12.0.0.254
www IN A 12.0.0.254
[root@yuji named]# systemctl start named //启动named服务
复制代码
二、配置web服务器
1、关闭firewalld和selinux。
[root@web ~]# systemctl stop firewalld
[root@web ~]# setenforce 0
复制代码
2、修改网卡配置。
将网络模式修改为VMnet1(仅主机模式)。
编辑网卡配置文件,将网卡地址设置为192.168.137.10,网关地址设置为192.168.137.137。
之后重启网络服务。
3、安装httpd服务,启动服务。
安装httpd软件包,写一个网页,启动httpd服务。本地验证一下能否打开该网页。
[root@web ~]# yum install -y httpd //安装httpd服务
[root@web ~]# cd /var/www/html //切换到httpd服务的根目录
[root@web html]# echo 'this is first web' > index.html //写一个测试网页
[root@web html]# systemctl start httpd //启动httpd服务
复制代码
三、配置外网客户端(win10客户机)
1、修改网卡配置。
将网络模式修改为VMnet2(仅主机模式)。
编辑网卡配置文件,IP地址:12.0.0.200,网关地址:12.0.0.254,DNS服务器地址:12.0.0.254。
2、验证使用 www.yuji.com:8080 访问web服务。
小贴士:
指定DNS服务器的两种方式:
方法一:修改 /etc/resolv.conf 文件。
[root@yuji ~]# vim /etc/resolv.conf
nameserver 192.168.137.137 //将DNS服务器地址写入文件中
[root@yuji ~]# cat /etc/resolv.conf //查看文件内容
# Generated by NetworkManager
nameserver 192.168.137.137
复制代码
方法二:修改网卡配置文件,之后重启网络服务。系统会自动将DNS服务器地址写入/etc/resolv.conf 文件中。
[root@yuji ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
-----------------
DNS1=192.168.137.137 //指定DNS服务器地址
[root@yuji ~]# systemctl restart network //重启网络服务
[root@yuji ~]# cat /etc/resolv.conf //查看文件内容
# Generated by NetworkManager
nameserver 192.168.137.137