基于Linux操作系统的DNS服务器实验

发布于:2024-11-29 ⋅ 阅读:(16) ⋅ 点赞:(0)

实验6  DNS服务器

一、实验目的

熟练掌握DNS服务器的原理、配置过程与应用。

二、实验环境

硬件:PC电脑一台,网络正常。

配置:win10系统,内存大于8G ,硬盘500G及以上。

软件:VMware、Ubuntu16.04。

三、实验内容

配置一台DNS服务器,域名为text.com,IP为192.168.1.100,主机名为

dns.text.com。

实验步骤

1、本实验将在网络条件下进行
2、进入新建的用户,备份apt-get的源文件

程序运行截图:

3、更新apt-get源文件为阿里云源。(编辑/etc/source.list,)

deb https://mirrors.aliyun.com/ubuntu/ xenial main

deb-src https://mirrors.aliyun.com/ubuntu/ xenial main

deb https://mirrors.aliyun.com/ubuntu/ xenial-updates main

deb-src https://mirrors.aliyun.com/ubuntu/ xenial-updates main

deb https://mirrors.aliyun.com/ubuntu/ xenial universe

deb-src https://mirrors.aliyun.com/ubuntu/ xenial universe

deb https://mirrors.aliyun.com/ubuntu/ xenial-updates universe

deb-src https://mirrors.aliyun.com/ubuntu/ xenial-updates universe

deb https://mirrors.aliyun.com/ubuntu/ xenial-security main

deb-src https://mirrors.aliyun.com/ubuntu/ xenial-security main

deb https://mirrors.aliyun.com/ubuntu/ xenial-security universe

deb-src https://mirrors.aliyun.com/ubuntu/ xenial-security universe

deb-src http://security.ubuntu.com/ubuntu xenial-security multiverse

程序运行截图:

4、更新apt-get。

程序运行截图:

5、在线安装BIND9。

程序运行截图:

6、配置dns服务器,进入/etc/bind中

程序运行截图:

7、修改配置文件/etc/bind/named.conf.local

程序运行截图:

8、复制db.local,并重命名为db.text.name

程序运行截图:

9、修改db.text.name

程序运行截图:

服务器IP为192.168.19.128:

10、重启服务

程序运行截图:

12、分别测试abc.text.name   www.text.name    ns.text.name

程序运行截图:

13、安装apache2

程序运行截图:

14、在默认配置下,在Linux下的浏览器输入http://localhost,查看页面。

程序运行截图:

建立个人网站站点
15、在自己创建的用户主目录里面创建目录public_html,在该目录里新建index.html,并输入以下内容。

程序运行截图:

16、修改/etc/apache2/mods-available/userdir.conf的配置内容,把UserDir public_html前的#删掉,给UserDir disabled root加上#。

程序运行截图:

  1. 创建软连接。

程序运行截图:

sudo ln -s /etc/apache2/mods-available/userdir.load /etc/apache2/mods-enabled/userdir.load

sudo ln -s /etc/apache2/mods-available/userdir.conf /etc/apache2/mods-enabled/userdir.conf

  1. 关闭防火墙和SELinux服务。

如果提示setenforce未安装,则执行以下命令:

程序运行截图:

  1. 重新启动apache服务。

sudo systemctl restart apache2

sudo systemctl restart apache2

 

程序运行截图:

查看apache服务器的状态。

systemctl status apache2

 

程序运行截图:

在Linux的浏览器下输入http://localhost/~zx,zx为自己新建的用户。

程序运行截图:

  1. 查看Linux下apache服务器的IP地址。

程序运行截图:

常见问题提示

  1. 代码输入错误;
  2. 运行结果出现问题。

五、实验作业

1、根据要求,完成实验指导里的操作流程。

2、实验结果分析和实验总结:

   setenforce是Linux系统中用于设置SELinux(Security-Enhanced Linux,安全增强型Linux)工作模式的命令。SELinux是一种安全机制,通过强制访问控制(Mandatory Access Control,MAC)来限制进程的权限,以保护系统免受恶意程序和攻击的威胁。执行setenforce 0表示将SELinux设置为Permissive模式,此时SELinux不会阻止任何操作,但会记录安全策略违反的情况。

六、问题

如果按照以上流程不能正确运行代码,请找出原因。

实验过程中遇到问题不能下载bind9:

   根据报错信息“bind9-libs (= 1:9.16.1-0ubuntu2) but 1:9.18.28-0ubuntu0.20.04.1 is to be installed”,发现是之前下载的bind9-libs版本过高,于是先删除libs,再下载提示的版本bind9-libs=1:9.16.1-0ubuntu2,具体命令如下:$sudo apt remove bind9-libs  $sudo apt install bind9-libs=1:9.16.1-0ubuntu2