【实战】DNS建设案例:
0.需求
目前我们在node2节点中已经有FTP服务器、NFS服务器, 同时大家需要在node1中部署一个tomcat服务器。 请对三个服务设置对应得域名,并基于DNS进行内网解析,从而实现基于域名访问,要求DNS服务器架设至node3, 配置后, 不管是在node1还是node2都可以基于此DNS进行访问
NFS服务器域名: nfs.itcast.local
FTP服务器域名: ftp.itcast.local
tomcat服务器域名: www.itcast.local
FTP服务器要求:
1- 禁锢FTP目录: /export/ftp
2- 禁止匿名用户访问,可以使用系统中任意存在用户访问即可
3- 不管在服务器还是在windows中, 都可以直接使用域名的方式访问到ftp服务器
windows中,建议使用filezilla.exe 软件来连接
NFS服务器:
共享目录: /export/nfs
要求 node1在挂载这个目录的时候,请使用域名方式进行挂载即可(测试 临时挂载即可)
1.准备工作
我们在进行这个综合案例的时候,需要准备3台主机,分别是node1,node2,node3
而node3的话,我们需要对node1克隆就可以得到了,开启这三台Linux主机就可以进行下一个步骤了
2.进行标准化的服务器配置
因为node1和node2的之前配置过了免密ssh登录,以及用主机名可以ping通,因此我们只需要对node3进行修改就可以了
ip: 192.168.149.129
主机名: node3.itcast.cn
hosts文件: 增加对node3的解析
免密配置:增加对node3的免密
1.修改ip
我们需要打开 vim /etc/NetworkManager/system-connections/ens33.nmconnection这个文件,然后把主机修改为129网段就可以了,随后,我们重启这个服务,并把网卡也重启一下,是配置生效
这个是重启这个服务项
这个就是重启网卡这个服务了
最后我们查询一下,是否成功了呢
发现这修改是生效的
2.修改主机名
hostnamectl set-hostname node3

3.修改hosts文件
需要打开/etc/hosts文件然后输入以下内容
vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.149.128 node1 node1.itcast.cn
192.168.149.129 node3 node3.itcast.cn
192.168.149.130 node2 node2.itcast.cn

我们发现,这个也是显然成功的,hosts也是修改成功的·
4.免密配置
- 1.生成公钥和私钥
ssh-keygen -f ~/.ssh/id_rsa -P '' -q
- 2.分发公钥
ssh-copy-id node1
ssh-copy-id node2
ssh-copy-id node3
- node3测试一下


写到这一步,其实node3的相关配置就已经搞定了
3.实操流程
node1: 部署tomcat
node2:NFS 和 FTP
node3:DNS
新克隆的node3节点:
ip: 192.168.88.103
主机名: node3.itcast.cn
hosts文件: 增加对node3的解析
免密配置:增加对node3的免密
可选:
安装vim
安装EPEL库
4.在node1和node2中安装相关服务
1.node1上面安装相关软件
1.先在node1上面安装jdk软件包
tar -xzf jdk-26_linux-x64_bin.tar.gz -C /opt/


1.环境变量配置
打开/etc/profile文件,然后在里面追加以下内容
export JAVA_HOME=/opt/jdk-26.0.2
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$JAVA_HOME/lib:$CLASSPATH
然后我们保存文件,就可以
2.任意目录测试一下
输入以下内容进行测试
java -version
javac
我发现这个也是配置ok的,任意目录下都是可以正常访问的
2.最后安装tomcat服务器
1,从官网下载阿帕奇的tar的包
从下载的地方并把他上传到指定路径并解压

2.解压这个包
tar -xzf apache-tomcat-9.0.97.tar.gz -C /export/software

3.运行这个软件,并在浏览器查看
cd /export/software/bin
./startup.sh
然后浏览器输入node1对应的ip地址看一下是否ok
出现这个页面,显然是阿帕奇正常运行了
2.在node2安装相关软件
1.安装NFS
- 服务端:
dnf install nfs-utils

- 客户端:
dnf install nfs-utils

1.开启服务
systemctl enable nfs-server
systemctl start nfs-server

2.开放端口
执行开放端口:
firewall-cmd --add-service=nfs --permanent # 核心, 有了这个, NFS即可使用共享操作
firewall-cmd --reload

3.创建共享目录
mkdir /export/nfs #这个需要在node1和node2中同时创建
4.修改配置文件
vi /etc/exports
#文件内需要填写的内容
/export/nfs *(rw,sync,no_root_squash)
#填完之后,我们保存文件,并重启这个nfs服务即可

5.验证是否成功共享
#输入以下内容即可查看是否成功共享
服务端执行: 查看服务端NFS共享信息
showmount -e (早期版本兼容)
exportfs

6.挂载使用
mount -t nfs 192.168.149.130:/export/software /export/software

7.验证
#经过验证是可以共享文件的

3安装ftp软件
1.创建文件夹
mkdir /etc/ftp #客户端与服务端都要创建这个文件夹

2.安装软件
- 服务端的软件安装
dnf install vsftpd -y

- 客户端软件安装
dns install lftp -y

3.修改配置
vi /etc/vsftpd/vsftpd.conf
chroot_local_user=YES
local_root=/export/ftp
#修改完配置文件,之后我们重启服务即可了

4.启动并配置 vsftpd 服务
systemctl start vsftpd
systemctl enable vsftpd

5.配置防⽕墙
firewall-cmd --permanent --add-service=ftp
firewall-cmd --reload

6.连接FTP服务器
#在node2上面新增一个账户
useradd ftp_user
passwd ftp_user

lftp ftp://ftp_user:123456@192.168.149.130
我们做到这里,其实node1和node2都已经搞定了,只剩下给node3配dns了,并且我们给node1和node2配的都是没有任何问题的,可以正常的使用
5.在node3中配置dns服务器
注意这里其实和上一个博客内容重复了,我只把不一样的写出来
首先呢,下载方式一样,操作流程一样,只不过是文件内容修改的不一样
前提是我们需要的根域名是itcast.local,其下的域名是www.itcast.local;nfs.itcast.local;ftp.itcast.local;
因此我们在正向文件,反向文件声明都要修改,以及正方向文件内容也要改
1.修改named.conf这个文件

2.修改vi /etc/named.rfc1912.zones
向文件尾部追加俩条记录
zone "itcast.local" IN {
type master;
file "/var/named/itcast.local.db";
allow-update { none; };
};
zone "149.168.192.in-addr.arpa" IN {
type master;
file "/var/named/192.168.149.rev";
allow-update { none; };
};

3.修改/var/named/itcast.local.db
$TTL 86400
@ IN SOA ns1.itcast.local. admin.itcast.local. (
2024011701 ; Serial
3600 ; Refresh
1800 ; Retry
1209600 ; Expire
86400 ) ; Minimum TTL
IN NS ns1.itcast.local.
ns1 IN A 192.168.149.129
nfs IN A 192.168.149.130
ftp IN A 192.168.149.130
www IN A 192.168.149.128
@ IN A 192.168.149.128

4.修改/var/named/192.168.149.rev文件
$TTL 86400
@ IN SOA ns1.itcast.local. admin.itcast.local. (
2024011701 ; Serial
3600 ; Refresh
1800 ; Retry
1209600 ; Expire
86400 ) ; Minimum TTL
IN NS ns1.itcast.local.
129 IN PTR dns
130 IN PTR nfs
130 IN PTR ftp
128 IN PTR www
128 IN PTR @

5.检测
# 配置文件语法检查
named-checkconf /etc/named.conf
如果报了错误, 一般都是由于配置文件丢失内容导致语法结构不对, 请检查配置文件
/etc/named.conf 【大概率是该文件的问题】
/etc/named.rfc1912.zones

# 区域文件语法检查
named-checkzone internal.local /var/named/internal.local.db
named-checkzone 88.168.192.in-addr.arpa /var/named/192.168.88.rev

6.启动服务以及开放端口
systemctl start named -- 立即启动
systemctl enable named -- 开启自动启动
systemctl status named -- 查看状态

firewall-cmd --zone=public --add-port=53/udp --permanent
firewall-cmd --zone=public --add-port=53/tcp --permanent
firewall-cmd --reload
或者:
firewall-cmd --zone=public --add-service=dns --permanent
firewall-cmd --reload
# 查看规则信息:
firewall-cmd --list-all

6.测试操作
把node1和node2的dns记录第一条改成node3的IP地址就可以了

6.总结
这个案例综合性的把之前学到的各种服务器都运用到了,综合度确实高,把之前学到的nfs,ftp,dns都用上了,同时也加深了对于这些内容的认识,其实我觉得,这些东西要多练习,即使会,但是还是要练习,有时候确实会多练习几遍明白一些东西,比如这次,其实我没有想到只有域名解析功能的dns可以如此组合,把node1和node2的ip放在node3里面,这样就可以通过访问其设定的域名来访问对应的服务了.
在 node3 部署 BIND 做内网 DNS,统一解析 Tomcat (www)、NFS 和 FTP (nfs/ftp),实现了全集群基于 itcast.local 域名的服务访问,打通了 Web、存储与文件传输三大基础服务。
核心注意点:
1. NFS 挂载要用域名 (nfs.itcast.local),别只用 IP。 2. FTP 禁锢目录需配 allow_writeable_chroot=YES。 3. DNS 指向要写进网卡配置,防止重启失效。 4. JDK/FTP 仅限内网实验,生产环境建议换 LTS JDK 和 SFTP。
评论