试题下载

Linux 试题

准备

准备两台虚拟机,一台用作Server,一台用作Client
网络配置都一样,如下:

项目实训内容

任务1: 配置虚拟机的网络参数

(1)在服务器上编辑/etc/sysconfig/network-scripts/ifcfg-ens160文件,手工指定静态IP地址,将配置文件截图。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 切换到管理员用户
su - root
vim /etc/sysconfig/network-scripts/ifcfg-ens160

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp" # 修改为static
IPADDR=10.1.80.62 # 设置静态IP
NETMASK=255.255.255.0 # 设置子网掩码
DNS1=10.1.80.62
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens160"
UUID="bdabe3a4-6e87-4325-8471-0cc5598d2e22"
DEVICE="ens160"
ONBOOT="yes"
1
2
3
4
5
# 重启网络
nmcli c reload
nmcli c up ens160
# 查看网络是否配置成功
ifconfig

每个人的配置可能都不一样,大致差不多。

(2)在客户端上编辑/etc/sysconfig/network-scripts/ifcfg-ens160文件,采用DHCP动态获取IP地址,将配置文件截图。

文件几乎保持默认即可。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 切换到管理员用户
su - root
vim /etc/sysconfig/network-scripts/ifcfg-ens160

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens160"
UUID="bdabe3a4-6e87-4325-8471-0cc5598d2e22"
DEVICE="ens160"
ONBOOT="yes"
DNS1=10.1.80.62
1
2
# 重启网络
nmcli c reload

每个人的配置可能都不一样,大致差不多。

任务二:实现DHCP功能

(1)在服务器上安装DHCP软件包,安装成功截图。

1
2
3
4
5
6
7
vim /etc/fstab

/dev/mapper/rhel-root / xfs defaults 0 0
UUID=45e0536b-9c7f-4105-b449-acc267badf50 /boot xfs defaults 0 0
/dev/mapper/rhel-swap swap swap defaults 0 0
# 添加下面一行
/dev/cdrom /media iso9660 defaults,ro,loop 0 0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
mount -a
# 新建local.repo文件并写入以下内容
vim /etc/yum.repos.d/local.repo

[local-BaseOS]
name=RHEL-BaseOS-8.4
baseurl=file:///media/BaseOS
gpgcheck=0
enalble=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[local-AppStream]
name=RHEL-AppStream-8.4
baseurl=file:///media/AppStream
gpgcheck=0
enalble=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
1
2
3
4
5
6
dnf clean all
dnf makecache
# 查看是否有两个仓库
dnf repolist
# 安装dncp服务
dnf install dhcp-server -y

(2)配置DHCP服务,编辑vim /etc/dhcp/dhcpd.conf文件,创建一个subnet作用域,为客户端分配IP地址,地址范围10.1.80.60~10.1.80.100,网关10.1.80.254,DNS10.1.80.62,将服务器的网卡绑定到10.1.80.62地址。将配置文件截图。

在dhcpd.conf添加以下内容

1
2
3
4
5
6
7
8
9
10
11
vim /etc/dhcp/dhcpd.conf

subnet 10.1.80.0 netmask 255.255.255.0 {
range 10.1.80.60 10.1.80.100; # 客户端IP地址池[1,3](@ref)
option routers 10.1.80.254; # 默认网关(子网内独立配置)[1,3](@ref)
option subnet-mask 255.255.255.0; # 子网掩码(强制覆盖全局)[3](@ref)
option domain-name-servers 10.1.80.62; # DNS服务器(仅本子网生效)[3,8](@ref)
default-lease-time 600; # 租约时间(默认值可调整)[2,3](@ref)
max-lease-time 7200; # 最大租约时间[2,3](@ref)
}

(3)启动DHCP并设置开机自动启动,启动成功截图。

1
2
3
systemctl start dhcpd
systemctl enable dhcpd
systemctl status dhcpd

(4)测试客户端是否获取到IP地址等网络参数并截图。

任务三:搭建unbound DNS服务器

(1)在服务器上安装unbound DNS软件包,安装成功截图。

1
dnf install unbound -y

(2)服务器上编辑/etc/unbound/unbound.conf 文件将本机配置为能解析域jsjy.edu的DNS服务器,并添加下表中的资源记录,将配置文件截图。

资源记录类型 域名/IP地址 IP地址/域名
A记录 dns.jsjy.edu 10.1.80.62
www.jsjy.edu 10.1.80.62
PRI反向记录 10.1.80.62 www.jsjy.edu
10.1.80.62 dns.jsjy.edu
1
2
3
4
5
6
7
8
9
vim /etc/unbound/unbound.conf

# 在server下添加或修改下面几行,注意缩进,都在server下
interface: 0.0.0.0
access-control: 0.0.0.0/0 allow
local-data: "dns.jsjy.edu. IN A 10.1.80.62"
local-data: "www.jsjy.edu. IN A 10.1.80.62"
local-data-ptr: "10.1.80.62 www.jsjy.edu"
local-data-ptr: "10.1.80.62 dns.jsjy.edu"

检查是否有其他服务占用端口,如果有的话把那个服务kill掉,如果没有跳过这一步

1
2
lsof -i :53
kill -9 1791

1
2
3
4
5
# 重启unbound
systemctl restart unbound
# 允许dns服务通过防火墙
firewall-cmd --permanent --add-service=dns
firewall-cmd --reload

(3)使用nslookup命令验证DNS查询结果并截图。

1
2
3
nslookup dns.jsjy.edu
nslookup www.jsjy.edu
nslookup 10.1.80.62

任务四:架设Apache Web 站点

(1)在服务器上安装httpd服务软件包及相关依赖包,安装成功截图。

1
dnf install httpd -y

(2)使用mkdir创建站点的根目录/var/www/myweb,使用echo创建默认首页文件。配置命令截图。

1
2
3
4
5
mkdir /var/www/myweb
cd /var/www/myweb/
vim index.html

Hello World!!!

(3)编辑httpd.conf配置文件,设置站点的侦听端口、IP地址、域名等信息。配置文件截图。

1
2
3
vim /etc/httpd/conf/httpd.conf
# 查找字符串
/DocumentRoot

修改配置为下图:

(4)启动httpd服务并设置开机启动,开放防火墙的http流量,配置命令截图。

1
2
3
4
systemctl start httpd
systemctl enable httpd
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload

(5)测试能否在客户端上通过域名访问WEb网站。打开页面截图。