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

实验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加上#。

程序运行截图:

创建软连接。

程序运行截图:

bash 复制代码
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
关闭防火墙和SELinux服务。

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

程序运行截图:

重新启动apache服务。

sudo systemctl restart apache2

bash 复制代码
sudo systemctl restart apache2

程序运行截图:

查看apache服务器的状态。
bash 复制代码
systemctl status apache2

程序运行截图:

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

程序运行截图:

查看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

相关推荐
cv-daily22 分钟前
通过docker overlay2目录名查找容器名和容器ID
运维·docker·容器
努力的小T1 小时前
基于 Bash 脚本的系统信息定时收集方案
linux·运维·服务器·网络·云计算·bash
夜光小兔纸2 小时前
Oracle 普通用户连接hang住处理方法
运维·数据库·oracle
梓懿lwh2 小时前
vim的介绍
linux·编辑器·vim
爱敲代码的边芙2 小时前
Linux:信号的保存[2]
linux·运维·服务器
葛小白12 小时前
第五天 Labview数据记录(5.1 INI配置文件读写)
服务器·labview
阿俊仔(摸鱼版)2 小时前
Python 常用运维模块之OS模块篇
运维·开发语言·python·云服务器
工程师焱记2 小时前
Linux 常用命令——系统设置篇(保姆级说明)
linux·运维·服务器
某风吾起3 小时前
linux系统中的 scp的使用方法
linux·服务器·网络
『往事』&白驹过隙;3 小时前
操作系统(Linux Kernel 0.11&Linux Kernel 0.12)解读整理——内核初始化(main & init)之缓冲区的管理
linux·c语言·数据结构·物联网·操作系统