2024年6月1日发(作者:)

实训一 安装CentOS 7.6操作系统

虽然SISO学院的每个电子教室都配备了台式计算机,但是孙老师经常使用自己的计

算机给学生上课。最近,孙老师购买了一台崭新的笔记本电脑,除了预装的Windows 10

操作系统外,她需要安装上课所需的Linux虚拟机。要求如下。

(1)安装CentOS 7.6操作系统。

(2)将虚拟机硬盘空间设置为60GB,内存设置为4GB。

(3)要安装“带GUI的服务器”。

(4)为系统设置4个分区,/boot、/、/home和swap,分区容量分别为500MB、

15GB、10GB和2GB。前3个分区的文件系统类型设置为xfs,swap交换分区的文件系

统类型必须使用swap。

(5)为root用户设置密码“Siso@7211”;创建“siso”用户,将其密码设置为

“siso#1001”。

实训二 使用Linux常用命令

一、实训目的

(1)掌握Linux各类命令的使用方法。

(2)熟悉Linux操作环境。

二、实训内容

练习使用Linux常用命令,达到熟练应用的目的。

三、实训练习

(1)文件和目录类命令

 启动计算机,利用root用户登录到系统,进入字符提示界面。

 用pwd命令查看当前所在的目录。

 用ls命令列出此目录下的文件和目录。

 回到上层目录,利用rm命令删除目录test和其下所有文件。

(1)启动计算机,使用siso用户登录系统,登录后,打开一个终端窗口。

(2)使用pwd命令查看当前工作目录,使用ls命令查看当前目录下有哪些内容。

(3)使用cd命令切换到tmp目录,使用pwd命令检查当前工作目录是否改变。

(4)使用-l选项查看tmp目录下的详细信息。在这一步中,孙老师要求同学们根据

输出的第一个字符判断文件的类型,即判断哪些是目录,哪些是普通文件;使用-a选项查

看隐藏文件,观察隐藏文件的特点。

(5)使用cat命令查看文件file1的内容,并显示行号。

(6)在tmp目录下创建子目录dir2、文件file2及file3。将file1复制到目录dir1

中,复制后的文件名为。将file2移动到dir2中,将file3重命名为。

(7)删除文件。使用rmdir命令删除目录dir2,观察删除操作是否成功。

如果不成功,则尝试使用rm命令重新删除。

(8)在后台运行cat命令,使用ps命令查看这个进程并强行终止其运行。

(9)运行cat命令,按Ctrl+Z组合键挂起cat进程。使用jobs命令查看作业。先使

用bg命令将cat进程切换到后台运行,再使用fg命令将其切换到前台运行,最后按Ctrl+C

组合键结束cat进程。

四、参考答案

[siso@localhost ~]$ pwd // 第2步

/home/siso

[siso@localhost ~]$ ls // 第2步

tmp

[siso@localhost ~]$ cd tmp // 第3步

[siso@localhost tmp]$ pwd // 第3步

/home/siso/tmp

[siso@localhost tmp]$ ls -l // 第4步

drwxrwxr-x. 2 siso siso 6 10月 12 22:08 dir1

-rw-rw-r--. 1 siso siso 118 10月 12 22:08 file1

[siso@localhost tmp]$ ls -al // 第4步

. .. dir1 file1 .hiddenfile

[siso@localhost tmp]$ cat -n file1 // 第5步

1 Repeat the dose after 12 hours if necessary

2 He hesitated for the merest frAction of a second

3 ohhhhhhhhho, it hurts me

[siso@localhost tmp]$ mkdir dir2 // 第6步

[siso@localhost tmp]$ touch file2 file3 // 第6步

[siso@localhost tmp]$ ls

dir1 dir2 file1 file2 file3

[siso@localhost tmp]$ cp file1 dir1/ // 第6步

[siso@localhost tmp]$ mv file2 dir2 // 第6步

[siso@localhost tmp]$ mv file3 // 第6步

[siso@localhost tmp]$ ls

dir1 dir2 file1

[siso@localhost tmp]$ rm // 第7步

[siso@localhost tmp]$ rmdir dir2 // 第7步

rmdir: 删除 "dir2" 失败: 目录非空

[siso@localhost tmp]$ rm -rf dir2 // 第7步

[siso@localhost tmp]$ ls

dir1 file1

[siso@localhost tmp]$ cat & // 第8步

[1] 10412

[1]+ 已停止 cat

[siso@localhost tmp]$ ps // 第8步

PID TTY TIME CMD

9174 pts/0 00:00:00 bash

10412 pts/0 00:00:00 cat

10419 pts/0 00:00:00 ps

[siso@localhost tmp]$ kill -9 10412 // 第8步

[1]+ 已杀死 cat

[siso@localhost tmp]$ cat // 第9步,按Ctrl+Z组合键挂起cat

进程

^Z

[1]+ 已停止 cat

[siso@localhost tmp]$ jobs // 第9步

[1]+ 已停止 cat

[siso@localhost tmp]$ bg 1 // 第9步

[1]+ cat &

[1]+ 已停止 cat

[siso@localhost tmp]$ fg 1 // 第9步

cat

^Z

[1]+ 已停止 cat

实训三 使用Vim编辑器

一、实训目的

通过练习修改一个C程序的错误学习Vim的启动、保存、文本输入、现有文件的打开、

光标移动、复制/剪贴、查找/替换等命令。

二、实训内容

熟练掌握Vim编辑器的使用。

三、实训练习

(1) 进入CentOS 7.6操作系统,打开一个终端窗口。在命令行中输入vim命令启

动vim,vim后面不加文件名,启动vim后默认进入编辑模式。

(2) 在编辑模式下按i键进入插入模式,输入如下所示的程序。为了方便下文表述,

这里把代码的行号也一并列出。

1 #include

2

3 int main()

4 {

5 int hour1, minute1;

6 int hour2, minute2

7

8 scanf("%d %d", &hour1, &minute1);

9 scanf("%d %d", hour2, &minute2);

10

11 int t1 = hour1 * 6 + minute1;

12 int t = t1 - t2;

13

14 printf("time difference: %d hour, %d minutes n", t/6, t%6);

15

16 return 0;

17 }

(3)按Esc键返回编辑模式。输入“:”进入命令行模式,输入“w timediff.c”将程

序保存为文件timediff.c,输入“:q”退出vim。

(4)重新启动vim,打开文件timediff.c,输入“:set nu”显示行号。

(5)因为文件内容比较少,所以全部内容可在一屏中显示。在编辑模式下,按M键

将光标移动到当前屏幕中央一行的行首,输入“1g”或“gg”将光标移动到第一行的行首。

(6)在编辑模式下输入“6G”将光标移动到第6行行首,按A键进入插入模式,此

时光标停留在第6行行尾。输入“;”,按Esc键返回编辑模式。

(7)在编辑模式下输入“9G”将光标移动到第9行行首。按w键将光标移动到下一

个单词的词首,连续按l键向右移动光标,直接光标停留在“hour2”单词的词首。按i键

进入插入模式,输入“&”,按Esc键返回编辑模式。

(8)在编辑模式下输入“11G”将光标移动到第11行行首。输入“yy”复制第11

行的内容,按p键将其粘贴到第11行的下面一行。此时,原文件的第12~17行依次变为

第13~18行,并且光标停留在新添加的第12行的行首。

(9)在编辑模式下连续按e键使光标移动到下一个单词的词尾,直至光标停留在“t1”

的词尾字符“1”处。按s键删除字符“1”并随即进入插入模式。在插入模式下输入“2”,

按Esc键返回编辑模式。重复此操作并把“hour1”“minute1”中的字符“1”修改为“2”。

(10)在编辑模式下按k键将光标上移1行,即移动到第11行,输入

“:11,15s/6/60/gc”,进入命令行模式,将第11~15行中的“6”全部替换为“60”。注

意,在每次替换时都要输入“y”给予确认。替换后,光标停留在第15行。

(11)在编辑模式下输入“2j”将光标下移2行,即移动到第17行。输入“dd”删

除第17行,输入“u”撤销删除操作。

(12)在编辑模式下输入“:wq”进入命令行模式,保存文件后退出vim编辑器。

四、参考答案

1 #include

2

3 int main()

4 {

5 int hour1, minute1;

6 int hour2, minute2;

7

8 scanf("%d %d", &hour1, &minute1);

9 scanf("%d %d", &hour2, &minute2);

10

11 int t1 = hour1 * 60 + minute1;

12 int t2 = hour2 * 60 + minute2;

13 int t = t1 - t2;

14

15 printf("time difference: %d hour, %d minutes n", t/60, t%60);

16

17 return 0;

18 }

实训四 文件系统和磁盘管理

一、实训目的

① 掌握Linux下磁盘管理的方法。

② 掌握文件系统的挂载与卸载。

③ 掌握磁盘限额与文件权限管理。

二、实训内容

练习Linux系统下磁盘管理、文件系统管理、磁盘限额及文件权限的管理。

三、实训练习

(1)进入CentOS 7.6操作系统,打开一个终端窗口,使用su - root命令切换到root

用户。

(2)使用lsblk -p命令查看当前系统的所有磁盘及分区。系统当前有一块虚拟硬盘,

命名为/dev/sda。在其上有5个分区,编号为/dev/sda1~/dev/sda5。其中,/dev/sda4

为扩展分区,不能直接使用;/dev/sda5是在/dev/sda4上划分出来的逻辑分区。因此,

新添加的分区应从6开始编号。

(3)使用fdisk /dev/sda命令进入fdisk的交互模式。fdisk命令可用于对磁盘进行

分区管理。

(4)输入m,获取fdisk的子命令提示。在fdisk交互模式下有很多子命令,每个子

命令用一个字母表示,如n表示添加分区,d表示删除分区。

(5)输入p,查看磁盘分区表信息。这里显示的磁盘分区表信息包括分区名称、启动

分区标识、起始扇区号、终止扇区号、扇区数、文件系统标识及文件系统名称等。

(6)输入n,添加新分区。fdisk根据已有分区自动确定新分区号是6,并提示输入

新分区的起始扇区号。这里直接按Enter键,即采用默认值即可。

(7)fdisk提示输入新分区的大小。考虑到学生的实际接受能力,孙老师采用最简单

的一种方式,输入“+8G”,即指定分区大小为8GB。

(8)输入p,再次查看磁盘分区表信息。虽然现在可以看到新添加的/dev/sda6分区,

但是孙老师特别强调这些操作目前只是保存在内存中,重启系统后才会真正写入磁盘分区

表。

(9)输入w,保存操作并退出fdisk交互模式。

(10)使用shutdown -r now命令重启系统。打开终端窗口并切换到root用户。再

次使用lsblk -p命令查看当前系统的所有磁盘及分区,此时应该能够看到/dev/sda6分区

已经出现在磁盘分区表中了。

(11)使用mkfs -t xfs /dev/sda6命令为/dev/sda6分区创建xfs文件系统。

执行完以上步骤后,孙老师提出了一个问题:创建了文件系统的分区是否可以正常使

用?有几位学生回答说需要将这个分区挂载到一个目录中才能正常访问。孙老师对此表示

赞同,并补充说这是使新分区可用的最后一步。

(12)使用mkdir -p /mnt/testdir命令创建新目录,使用mount /dev/sda6

/mnt/testdir命令将/dev/sda6分区与目录/mnt/testdir绑定。

(13)为了验证挂载的结果,使用lsblk -p /dev/sda6命令查看/dev/sda6分区的挂

载点。

实训五 管理用户和组

一、实训目的

 熟悉Linux用户的访问权限。

 掌握在Linux系统中增加、修改、删除用户或用户组的方法。

 掌握用户账户管理及安全管理。

二、实训内容

以添加用户为例,学习如何进行Linux用户和用户组的管理。。

三、实训练习

(1)登录到文件服务器,打开一个终端窗口,使用su - root命令切换到root用户。

(2)使用cat /etc/passwd命令查看当前系统用户的信息。在这一步,孙老师让学生

判断哪些用户是系统用户,哪些是孙老师之前为各位老师手动添加的普通用户。

(3)使用grep ysq /etc/passwd命令确认系统中是否已有ysq用户。查询结果显示

不存在这个用户,因此使用useradd ysq命令创建了这个新用户,并使用passwd ysq为

其设置初始密码123456。

(4)反应敏捷的小张同学对孙老师说,现在/etc/passwd文件中肯定多了一条关于

ysq用户的信息,/etc/shadow和/etc/group两个文件也是如此,而且ysq用户的默认

主目录/home/ysq也已被默认创建。其实,这也是孙老师想对学生强调的内容。因为

useradd命令会使用默认的参数创建新用户。孙老师请小张同学帮忙在终端窗口中验证

ysq用户的信息。

(5)使用命令groupmems -a ysq -g sie将ysq用户加入到网络与通信技术系用户

组中,这样做的目的是统一管理组内成员的权限。再使用id ysq命令查看ysq用户的信息,

并让学生对这次的输出内容和之前小张同学所查询出的用户的信息进行比较。

(6)为了进一步演示用户组的管理,孙老师假定ysq老师要加入新成立的智能机器

人系。孙老师要为智能机器人系创建一个用户组,并将ysq用户加入到其中。

四、参考答案

[root@localhost ~]# grep ysq /etc/passwd

ysq:x:1001:1002::/home/ysq:/bin/bash

[root@localhost ~]# grep ysq /etc/shadow

ysq:!!:18185:0:99999:7:::

[root@localhost ~]# grep ysq /etc/group

ysq:x:1002:

[root@localhost ~]# ls -ld /home/ysq

drwx------. 3 ysq ysq 78 10月 16 17:16 /home/ysq

[root@localhost ~]# id ysq

uid=1001(ysq) gid=1002(ysq) 组=1002(ysq)

[root@localhost ~]# groupmems -d ysq -g sie // 从sie组中移除

ysq用户

[root@localhost ~]# groupadd irt

用户组irt

// 添加智能机器人系

[root@localhost ~]# groupmems -a ysq -g irt // 将ysq用户添加到

irt组中

[root@localhost ~]# id ysq

uid=1001(ysq) gid=1002(ysq) 组=1002(ysq),1003(irt)

实训六 管理文件权限

一、实训目的

① 掌握权限的分类,普通文件权限和目录权限的不同含义。

② 掌握使用符号法和数字法修改文件权限的方法。

二、实训内容

修改普通文件权限和目录权限。

三、实训练习

(1)登录到文件服务器,打开一个终端窗口,使用su - root命令切换到root用户。

(2)切换到/ito/pub目录,新建示例文件。/ito/pub目录中保存的是信

息工程学院的公共文件,本学院的所有老师都能读取文件的内容,但只有系统管理员孙老

师本人可以修改文件。另外,其他学院的老师无法读取文件内容。孙老师把这个文件的所

有者和属组分别设置为sjx和ito,同时修改了文件的权限。

(3)使用su – zys命令切换到zys用户。使用vim打开文件,可以正常

打开,但尝试修改时提示只有读权限。使用exit命令退出zys用户,返回root用户。

(4)切换到/ito/sie/pub目录,新建示例文件。/ito/sie/pub目录中保

存的是网络与通信技术系的公共文件,本系的所有老师都可以读写这些文件,而其他系的

老师只能读取文件内容。

(5)分别切换到zys和ysq用户,并尝试对进行读和写操作。此时发现

zys可以正常读写,而ysq无法读和写。这是因为zys用户属于sie组,对有

读写权限,但ysq属于智能机器人系用户组irt。

(6)分别在/ito/pub和/ito/sie/pub两个目录中建立一个子目录,并对其进行不同

权限的设置,使用不同的用户进行验证,加深对普通文件和目录权限管理的理解。

四、参考答案

[root@localhost ~]# cd /ito/pub

[root@localhost pub]# touch

[root@localhost pub]# ls -l

-rw-r--r--. 1 root root 0 10月 16 20:32

[root@localhost pub]# chown sjx:ito

[root@localhost pub]# chmod o-r

[root@localhost pub]# ls -l

-rw-r-----. 1 sjx ito 0 10月 16 20:32

[root@localhost pub]# cd /ito/sie/pub

[root@localhost pub]# touch

[root@localhost pub]# ls -l

-rw-r--r--. 1 root root 0 10月 16 20:46

[root@localhost pub]# chown sjx:sie

[root@localhost pub]# chmod 660

[root@localhost pub]# ls -l

-rw-rw----. 1 sjx sie 0 10月 16 20:46

实训七 配置网络

一、实训目的

(1)理解虚拟机的三种网络连接方式

(2)掌握虚拟机中CentOS 7.6操作系统的网络配置方法。

二、实训内容

配置网络。

三、实训练习

(1)登录到文件服务器,打开一个终端窗口,使用su - root命令切换到root用户。

(2)使用cd命令切换到网卡文件的目录/etc/sysconfig/network-scripts/。

(3)使用ifconfig -a命令查看当前系统的默认网卡文件,这里系统的网卡文件名为

ifcfg-ens33。

(4)使用vim打开ifcfg-ens33文件,修改网卡配置文件,添加相应内容。

(5)使用systemctl restart network命令重启网络服务。

(6)使用ping 192.168.62.234命令测试新的文件服务器与原文件服务器的连通性。

原文件服务器的IP地址是192.168.62.234。从ping命令的执行结果可以看出两台服务器

已经实现了连通。

四、参考答案

BOOTPROTO=none

ONBOOT=yes

IPADDR=192.168.62.235

PREFIX=24

GATEWAY=192.168.62.2

DNS1=192.168.62.2

实训八 Linux防火墙的配置

一、实训目的

(1)理解防火墙的重要作用和意义。

(2)熟悉firewalld防火墙的基本概念和常用配置命令。

二、实训内容

配置firewalld防火墙。

三、实训练习

第1步,登录到文件服务器,打开一个终端窗口,使用su - root命令切换到root用

户。

第2步,把firewalld的默认区域修改为工作区域。

第3步,关联文件服务器的网络接口和工作区域,并把工作区域的默认处理规则设为

拒绝。

第4步,在防火墙中放行FTP服务。

第5步,允许源于192.168.62.0/24子网的流量通过,即添加流量源。

第6步,将运行时配置添加到永久配置中。

四、参考答案

[root@localhost ~]# firewall-cmd --list-services

ssh dhcpv6-client

[root@localhost ~]# firewall-cmd --zone=work --add-service=ftp //

放行FTP服务

success

[root@localhost ~]# firewall-cmd --list-services

ssh dhcpv6-client ftp

[root@localhost ~]# firewall-cmd --zone=work

--add-source=192.168.100.0/24

success

[root@localhost ~]# firewall-cmd --runtime-to-permanent

success

实训九 Samba服务器的配置

一、实训目的

(1)掌握Samba服务器的安装、配置与调试。

二、实训内容

练习利用Samba服务实现文件共享及权限设置。

三、实训练习

要求如下。

(1)修改工作组为WORKGROUP。

(2)注释[homes]和[printers]的内容。

(3)共享名为webdata。

(4)webdata可浏览、可写。

(5)共享目录为/data/web_data,且Apache用户对该目录有读、写、执行权限,

使用setfacl命令配置目录权限。

(6)只有IP地址为192.168.100.133的主机可以访问该目录。

(7)添加一个Apache用户(密码自定义)并对外提供Samba服务。

四、参考答案

第1步,配置yum源并安装Samba软件。由于技能大赛提供的操作系统中没有安装

Samba软件,因此需要配置yum源并自行安装。

第2步,新建系统用户apache,并新建同名的Samba用户。

第3步,在/data目录中新建子目录web_data并设置其权限。

第4步,配置Samba服务主配置文件。在全局参数部分,需要设置

workgroup和security参数的值,其他参数保留默认值即可。在“[homes]”“[printers]”

两个共享域的行首加上“#”。

第5步,添加共享域web_data。根据题意,需要设置web_data共享域的path、

writable、valid users等属性,以控制用户对共享资源的访问。

第6步,保存对Samba主配置文件的修改,使用systemctl restart smb命令重启

Samba服务。

[root@localhost tmp]# useradd apache

[root@localhost tmp]# passwd apache

更改用户 smbtest1 的密码 。

新的 密码:

重新输入新的 密码:

passwd:所有的身份验证令牌已经成功更新。

[root@localhost tmp]# smbpasswd -a apache

New SMB password:

Retype new SMB password:

Added user apache.

[root@localhost tmp]# mkdir -p /data/web_data

[root@localhost tmp]# setfacl -m u:apache:rwx /data/web_data/

[global]

workgroup = WORKGROUP

security = user

#[homes]

# comment = Home Directories

# valid users = %S, %D%w%S

# …… <== 此处省略部分参数

#[printers]

# comment = All Printers

# path = /var/tmp

# …… <== 此处省略部分参数

[webdata]

comment = webdata

path = /data/web_data

browseable = Yes

writable = Yes

valid users = apache

hosts allow = 192.168.100.133

hosts deny = all

实训十 DHCP服务器配置

一、实训目的

(1)掌握DHCP服务器安装和配置方法。

二、实训内容

练习DHCP服务器安装与配置。

三、实训练习

要求如下。

(1)DHCP服务器的IP地址为192.168.100.100。

(2)把域名和域名服务器两个参数作为全局配置分别设为“”和

“e”。

(3)192.168.100.0/24网络中有两个IP地址空间可以分配,分别是192.168.100.1~

192.168.100.99和192.168.100.101~192.168.100.200,默认网关地址设为

192.168.100.254。

(4)为MAC地址是“00:0C:29:B3:41:89”的主机分配固定的IP地址192.168.100.188。

(5)分别在Windows和Linux客户端上验证DHCP服务。

四、参考答案

(1)在NAT模式下,VMnet8虚拟网卡默认启用了DHCP服务。为了保证后续测试

的顺利进行,先关闭VMnet8的DHCP服务。

(2)修改DHCP主配置文件。

(3)使用systemctl restart dhcpd命令重启DHCP服务。

(4)在Windows客户端上验证DHCP服务。在Windows客户端上验证DHCP服

务比较简单,先在【Internet协议版本(TCP/IP)属性】对话框中把Windows客户端设

置为【自动获得IP地址】。在Windows命令行窗口中,先使用ipconfig /release命令释

放IP地址,再使用ipconfig /renew命令重新获取IP地址。也可以使用ipconfig /all命

令查看本机所有网络配置的相关信息。

(5)在Linux客户端上验证DHCP服务。打开网卡配置文件/etc/sysconfig/network-

scripts/ifcfg-ens33,删除或注释IPADDR、PREFIX、GATEWAY、DNS1和HWADDR

等几个条目,并将BOOTPROTO的值设为“dhcp”。修改完成后一定要重启网络服务,否

则网络配置不会生效。最后,使用ifconfig命令查看获取到的IP地址。

default-lease-time 600;

max-lease-time 7200;

option domain-name "";

option domain-name-servers e;

subnet 192.168.100.0 netmask 255.255.255.0 {

range 192.168.100.1 192.168.100.99;

range 192.168.100.101 192.168.100.200;

option routers 192.168.100.254;

}

host client1 {

hardware ethernet 00:0C:29:B3:41:89;

fixed-address 192.168.100.188;

}

BOOTPROTO=dhcp

#IPADDR=192.168.100.100

#PREFIX=24

#GATEWAY=192.168.100.2

#DNS1=192.168.100.2

[root@localhost ~]# ifconfig

ens33: flags=4163 mtu 1500

inet

192.168.100.255

192.168.100.2 netmask 255.255.255.0 broadcast

……

实训十一 DNS服务器配置

一、实训目的

(1)掌握主DNS、辅助DNS和转发器DNS服务器的配置与调试方法。

二、实训内容

练习主DNS、辅助DNS和转发器DNS服务器的配置与管理方法。

三、实训练习

要求如下。

(1)使用本地yum源安装DNS软件。

(2)搭建主DNS服务器,IP地址为192.168.100.100。

(3)主配置文件设为/etc/。

(4)为域名“”创建正向解析区域文件/var/named/,

为网段192.168.100.0/24创建反向解析区域文件/var/named/zone.192.168.100。

(5)在正向解析区域文件中添加以下资源记录。

① 1条SOA资源记录,保留默认值。

② 2条NS资源记录,主机名分别为ns1和ns2。

③ 1条MX资源记录,主机名为mail。

④ 5条A资源记录,主机名分别为ns1、ns2、mail、www和ftp,IP地址分别为

192.168.100.100、192.168.100.101、192.168.100.110、192.168.100.120

192.168.100.130。

⑤ 1条CNAME资源记录,为主机名www设置别名web。

(6)在反向解析区域文件中添加与正向解析区域文件对应的PTR资源记录。

(7)验证DNS服务。

四、参考答案

(1)设置虚拟机IP地址为192.168.100.100,使用yum install bind -y命令一键安

装DNS软件。

(2)修改全局配置文件/etc/。

(3)在/etc目录中根据/etc/创建主配置文件

/etc/并修改其内容。

//

options {

listen-on port 53 { any; };

directory "/var/named";

allow-query { localhost; };

……

};

zone "." IN {

type hint;

file "";

};

include "/etc/"; <== 修改主配置文件

include "/etc/";

(4)在/var/named目录中创建正向解析区域文件和反向解析区

域文件zone.192.168.100。

[root@localhost ~]# cd /var/named

[root@localhost named]# cp -p ost

[root@localhost named]# cp -p ck zone.192.168.100

[root@localhost named]# ls -l zone*

-rw-r-----. 1 root named 405 11月 17 16:11 zone.192.168.100

-rw-r-----. 1 root named 414 11月 17 19:42

正向解析区域文件的内容如下所示。

[root@localhost named]# cat

$TTL 1D

@ IN SOA @ . (

0 ; serial

1D ; refresh

1H ; retry

1W ; expire

3H ) ; minimum

@ IN NS .

@ IN NS .

@ IN MX 10 .

ns1 IN A 192.168.100.100

ns2 IN A 192.168.100.101

mail IN A 192.168.100.110

www IN A 192.168.100.120

ftp IN A 192.168.100.130

web IN CNAME

反向解析区域文件的内容如下所示。

[root@localhost named]# cat zone.192.168.100

$TTL 1D

@ IN SOA @ . (

0 ; serial

1D ; refresh

1H ; retry

1W ; expire

3H ) ; minimum

@ IN NS .

@ IN NS .

@ IN MX 10 .

100 IN PTR .

101 IN PTR .

110 IN PTR .

120 IN PTR .

130 IN PTR .

(5)使用systemctl restart named命令重启DNS服务。

(6)配置DNS客户端网络,确保两台主机之间网络连接正常。

[root@localhost ~]# cat /etc/

nameserver 192.168.100.100

search

(7)使用nslookup工具验证DNS服务,在命令行中使用nslookup命令会进入交

互模式。

[root@localhost ~]# nslookup

> <== 正向解析

Server: 192.168.100.100 <== 显示DNS服务器的IP地址

Address: 192.168.100.100#53 <== 后面省略这两行

Name:

Address: 192.168.100.120

> 192.168.100.130 <== 反向解析

name = .

> set type=NS <== 查询区域的DNS服务器

> <== 输入域名

nameserver = .

nameserver = .

> set type=MX <== 查询区域的邮件服务器

> <== 输入域名

mail exchanger = 10 .

> exit

[root@localhost ~]#

(8)使用dig工具验证DNS服务,通过-t选项指明查询的资源记录类型,通过-x选

项进行反向解析。

[root@localhost ~]# dig -t A <== 正向查询A资源

记录

……

;; ANSWER SECTION:

. 86400 IN A 192.168.100.120

[root@localhost ~]# dig -t NS <== 正向查询NS资源

记录

……

;; ANSWER SECTION:

. 86400 IN NS .

. 86400 IN NS .

……

[root@localhost ~]# dig -t MX <== 正向查询MX资

源记录

……

;; ANSWER SECTION:

. 86400 IN MX 10 .

……

[root@localhost ~]# dig -x 192.168.100.120 <== 反向查询PTR资

源记录

……

;; ANSWER SECTION:

. 86400 IN PTR .

……

(9)使用host工具验证DNS服务,进行一些简单的主机名和IP地址的查询。

[root@localhost ~]# host <== 正向查询A资源记录

has address 192.168.100.120

[root@localhost ~]# host 192.168.100.130 <== 反向查询PTR资源记

domain name pointer .

[root@localhost ~]# host -t NS

记录

<== 正向查询NS资源

name server .

name server .

[root@localhost ~]# host -t MX <== 正向查询MX资源

记录

mail is handled by 10 .

[root@localhost ~]# host -l

资源记录

<== 列出DNS服务器的

name server .

name server .

has address 192.168.100.130

has address 192.168.100.110

has address 192.168.100.100

has address 192.168.100.101

has address 192.168.100.120

实训十二 Apache服务器的配置

一、实训目的

(1)掌握Apache服务器的配置与应用方法。

二、实训内容

练习利用Apache服务建立普通Web站点、基于主机和用户认证的访问控制。

三、实训练习

要求如下。

(1)使用本地yum源安装Apache软件。

(2)Apache服务器IP地址为192.168.100.100,使用域名进行访问。

(3)网站根目录为/data/web_data。

(4)网站首页为,内容是“Welcome to 2019 Computer Network

Application contest!”。

四、参考答案

(1)设置虚拟机IP地址为192.168.100.100,使用yum install httpd -y命令一键

安装Apache软件。

(2)参照任务5.3配置DNS服务,建立192.168.100.100和的对应关

系,确保域名解析正确。

[root@ns1 named]# nslookup

>

……

Name:

Address: 192.168.100.100

> 192.168.100.100

……

name = .

(3)创建网站根目录和首页文件,并修改权限。

[root@localhost ~]# mkdir -p /data/web_data

[root@localhost ~]# chmod o+rx /data/web_data

[root@localhost ~]# echo "Welcome to 2019 Computer Network

Application contest!" > /data/

web_data /

(4)修改Apache主配置文件,添加以下内容。

[root@localhost ~]# cat /etc/httpd/conf/

……

ServerName

DocumentRoot "/data/web_data"

AllowOverride None

Require all granted

DirectoryIndex

……

(5)重启Apache服务,检查防火墙和SELinux的设置。

(6)在浏览器的地址栏中输入。

实训十三 FTP服务器的配置

一、实训目的

(1)掌握Linux下vsftpd服务器的架设方法。

二、实训内容

练习vsftpd服务器的各种配置。

三、实训练习

要求如下。

(1)使用本地yum源安装vsftpd软件。

(2)FTP服务器IP地址为192.168.100.100,采用本地用户模式。

(3)创建本地用户tom。

(4)设置本地用户的根目录为/data/ftp_data且在目录中创建ftp_test空文件。

(5)允许用户tom上传和下载文件。

(6)锁定用户tom在其根目录中。

四、参考答案

(1)设置虚拟机IP地址为192.168.100.100,使用yum install vsftpd -y命令一键

安装vsftpd软件。

(2)创建普通用户tom,新建根目录和测试文件。

[root@localhost ~]# useradd tom

[root@localhost ~]# passwd tom

[root@localhost ~]# mkdir -p /data/ftp_data

[root@localhost ~]# chmod o+w /data/ftp_data

[root@localhost ~]# touch /data/ftp_data/ftp_test

[root@localhost ~]# ls -ld /data/ftp_data

drwxr-xrwx. 2 root root 6 11月 29 12:41 /data/ftp_data

(3)修改vsftpd主配置文件,添加以下内容。

[root@localhost ~]# vim /etc/vsftpd/

write_enable=YES <== 允许用户写入

download_enable=YES <== 允许用户下载

local_enable=YES <== 允许本地用户登录FTP服务器

local_root=/data/ftp_data <== 本地用户根目录

chroot_local_user=YES <== 所有用户默认被chroot

allow_writeable_chroot=YES <== 允许对主目录的写操作

(4)重启FTP服务,并修改防火墙和SELinux设置。

(5)以tom用户身份登录FTP服务器并验证相关功能。

[siso@localhost tmp]$ pwd

/home/siso/tmp

[siso@localhost tmp]$ touch file6.110 // 新建客户端测试文件

[siso@localhost tmp]$ ftp 192.168.100.100

……

Name (192.168.100.100:siso): tom <== 输入用户名tom

331 Please specify the password.

Password: <== 输入用户tom的密码

230 Login successful.

……

ftp> pwd <== 查看当前工作目录

257 "/"

ftp> ls <== 查看目录内容

……

-rw-r--r-- 1 0 0 0 Nov 29 06:31 ftp_test

226 Directory send OK.

ftp> get ftp_test <== 下载文件

……

226 Transfer complete.

ftp> put file6.110 <== 上传文件

……

226 Transfer complete.

ftp>