【网安基础之Linux系统Ⅵ】DNS服务器和Apache服务器搭建

一.DNS服务器

1.DNS服务器

 DNS( Domain Name System)是“域名系统”的英文缩写,是一种组织成域层次结构的计算机和网络服务 命名系统,它用于TCP/IP网络,它所提供的服务是用来将主机名和域名转换为IP地址的工作。

2.DNS介绍

(1)域名

• 不同等级的域名之间使用点号分隔,级 别最低的域名写在最左边,而级别最高 的域名则写在最右边

• 每一级的域名都由字母和数字组成,不区分大小写

• FQDN(Full Qualified Domain Name) 包括两部分:主机名和域名,FQDN 总 是以主机名开始且以顶级域名结束

• 域名的根域用“.”表示,一般省略不写

3.DNS查询分类

(1)DNS递归查询(客户机访问本地域名服务器

• 一般客户机与本地DNS域名服务器之间的查询交互采用的就是递归查询方式

(2)DNS迭代查询(本地域名服务器访问根域名服务器

• 一般本地域名服务器发送至根域名服务器的查询采用的就是迭代查询

4.DNS域名解析过程

(1)PC域名查询过程

浏览器缓存------->系统缓存(host文件)--------->DNS服务器

(2)本地域名服务器:离客户端较近,机构自行管理的域名服务器

(3)根域名服务器:直接管理顶级域的域名服务器

5.主DNS服务器配置

(1)常用DNS:常用术语

1. DNS服务器:提供域名解析服务的主机。

2. DNS客户机:任何联网的需要查询主机域名信息的主机。

3. 正向解析: 将域名称解析为IP地址。

4. 反向解析:  将IP地址解析为主机名称。

(2)在安装DNS服务器时,确保虚拟机防火墙和selinux是关闭状态:

安装软件bind yum install bind -y

(3)DNS的两个文件:

 主配置文件:/etc/named.conf 用来配置本地监听的端口网络  ,定义DNS 区域和允许哪个网络请 求访问查询

   /var/named/   定义区域文件,即dns数据库文件

(1)正向解析文件

vi tys.com.zone

(2)反向解析文件

vi 192.168.47.zone

3)配置完成后重启服务: systemctl restart named

4)修改默认的DNS服务器:vi /etc/resolv.conf

nameserver 192.168.47.185

(5)nslookup解析

6.辅DNS服务器配置

(1)修改主DNS服务器的配置文件:vi /etc/named.conf

重启DNS服务:systemctl restart named

(2)辅助DNS搭建

1、重新安装一台新服务器作为辅助DNS

2、安装DNS yum  -y install  bind

3、修改DNS主配置文件/etc/named.conf vim  /etc/named.conf

-----Listen-on port 53 { any; }; -----allow-query { any; };

4、添加辅助区域 zone "tys.com." IN {

type slave;------------定义为辅助dns

masters { 192.168.44.129; };------指定主dns服务器

file "slaves/tianyisheng.com.zone";-------将辅助区域的dns文件存放在slaves目录下。 };

zone "44.168.192.in-addr.arpa" IN { type slave;------------定义为辅助dns

masters { 192.168.44.129; };------------定义为辅助dns

file "slaves/3.168.192.zone";-------将辅助区域的dns文件存放在slaves目录下 };

5、启动DNS服务 systemctl  start named

6. 修改/etc/resolv.conf 文件,将需要解析主机的nameserver 114.114.114.114改为自己所架设 的主DNS服务器的ip地址。

7、验证:ls /var/named/slaves/--------如果能查看到配置文件以及学过来,则辅助dns已经搭成

二.Web服务器搭建

1.web服务器

Apache 是一个知名的开源Web服务器。

Apache由内核、标准模块和第三方提供的模块三个层次组成。

CentOS下的Apache网站分为两种:

静态网站:是指全部由html代码格式页面组成的网站

动态网站:是指网站内容可根据不同情况动态变更的网站一般以php/perl/python,jsp(java), .net等技术书写

2.apache细节

(1)在配置前:

关闭防火墙,SeLinux:

systemctl stop firewalld

systemctl disable firewalld

setenforce 0

vi /etc/selinux/config  -->   SELINUX=disabled

(2)配置文件:

/etc/httpd/conf/httpd.conf 其中详细说明了监听端口:80

主页文件/var/www/html/下    并且识别的主页文件为index.html(区分大小写)其他日志说明等

(3)在/var/www/html/添加一个index.html 文件就可以更改网站首页。

3.一台服务器同时搭建两个网站(基于虚拟主机来实现,需要创建两个虚拟主机)

(1)添加虚拟网卡ip:

ifconfig ens33:1 192.168.1.201/24

ifconfig ens33:2 192.168.1.202/24

(2)创建主页文件:

mkdir /var/www/web201---创建网站目录

mkdir /var/www/web202---创建网站目录

echo "i am a  apple" > /var/www/web201/index.html----写入网站内容

echo "i am a  orange" > /var/www/web202/index.html----写入网站内容

(3)修改配置文件:因为两个网站需要修改配置文件

vim /etc/httpd/conf.d/201.conf----此时在这里不需要去配置主配置文件,可以添加两个自配置文件

vim /etc/httpd/conf.d/202.conf

(4)重启httpd服务:systemctl restart httpd

(5)去浏览器分别访问两个虚拟主机的IP,能够看到两个不同的主页。

三种搭建方式:

第一种:IP

1.虚拟主机,也就是虚拟网卡。能够虚拟出两个IP地址。

    ifconfig ens33:1 192.168.200.110

    ifconfig ens33:2 192.168.200.120

存放web文件的目录在:/var/www/

    有两个网站,就需要两个目录去存放不同网站的文件

mkdir /var/www/web201

mkdir /var/www/web202

    往目录中添加各自的首页网站文件:

cd  mkdir /var/www/web110

[root@localhost conf.d]# vi /var/www/web110/index.html

vi  index.html -->写入测试的语句

cd  mkdir /var/www/web120

[root@localhost conf.d]# vi /var/www/web120/index.html

vi  index.html -->写入测试的语句

添加配置文件,让服务器能够知道网站的IP以及对应的首页文件在哪。

cd   /etc/httpd/conf.d/

创建两个配置文件:

[root@localhost conf.d]# vi web110.conf

<VirtualHost 192.168.200.110>

DocumentRoot /var/www/web110

<Directory "/var/www/web110">

AllowOverride None

Options None

Require all granted

</Directo>

</VirtualHost>

[root@localhost conf.d]# vi web120.conf

<VirtualHost 192.168.200.120>

DocumentRoot /var/www/web120

<Directory "/var/www/web120">

AllowOverride None

Options None

Require all granted

</Directo>

</VirtualHost>

重启web服务器:systemctl restart httpd

去浏览器分别访问两个虚拟主机的IP,能够看到两个不同的主页。

[root@localhost conf.d]# curl 192.168.200.110

[root@localhost conf.d]# curl 192.168.200.120

第二种:端口

基于端口:同一台服务器,通过访问同一个IP地址不同的端口号去找到不同的网页资源。

cd   /etc/httpd/conf.d/

创建两个配置文件:

vi web201.conf

Listen 8000

<VirtualHost 192.168.111.130:8000>

        DocumentRoot /var/www/web201

        <Directory "/var/www/web201">

                AllowOverride None

                Options None

                Require all granted

        </Directory>

</VirtualHost>

vi web202.conf

Listen 8080

<VirtualHost 192.168.111.130:8080>

        DocumentRoot /var/www/web202

        <Directory "/var/www/web202">

                AllowOverride None

                Options None

                Require all granted

        </Directory>

</VirtualHost>

重启服务:systemctl restart httpd

浏览器访问服务器的IP的不同端口去找到对应的网站文件。

第三种:域名

基于域名。

cd   /etc/httpd/conf.d/

创建两个配置文件:

vi web201.conf

<VirtualHost 192.168.111.130>

ServerName www.tys.com

        DocumentRoot /var/www/web201

        <Directory "/var/www/web201">

                AllowOverride None

                Options None

                Require all granted

        </Directory>

</VirtualHost>

vi web202.conf

<VirtualHost 192.168.111.130>

ServerName www.tys1.com

        DocumentRoot /var/www/web202

        <Directory "/var/www/web202">

                AllowOverride None

                Options None

                Require all granted

        </Directory>

</VirtualHost>

配置域名所对应的IP:

修改hosts文件:vi /etc/hosts

192.168.111.130  www.tys.com

192.168.111.130  www.tys1.com

重启服务:systemctl restart httpd

hosts文件只是在Linu系统中做的更改,因此在本机windows下是没有这两条IP和域名的对应关系的,所以只能在Linux系统中进行测试。

curl www.tys.com

curl www.tys1.com

搭建动态页面

安装PHP服务:搭建动态网站,需要与后台数据库进行交互,需要一种能与数据库交流的代码语言-----PHP语言。

yum install php -y

yum install php-*  -y

服务安装成功之后,就需要测试:在网站文件存储的目录中,需要有一个php文件,并且看能不能访问到这个php文件,如果能访问就说明安装PHP成功。

需要新建一个测试用的php文件,删掉原有的index.html文件。

cd  /var/www/html/

vi  index.php  -->  <?php phpinfo(); ?>

<?php

                   phpinfo();

                 ?>

配置httpd.conf,告诉Apache服务器,现在已经有php模块了,可以识别 .php文件

vi /etc/httpd/conf/httpd.conf

添加一行:AddType application/x-httpd-php .php

还需要删掉之前配置的web200.conf和web201.conf这两个配置文件。

重启httpd服务:systemctl restart httpd

三.DHCP服务器

安装DHCP

1.yum search dhcp

2.yum install dhcp -y  (安装DHCP)

3.vi  /etc/dhcp/dhcpd.conf

配置文档

启动DHCP服务[root@xxxxxxxx tmp]# service dhcpd start

关闭本机DHCP

 

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux 系统上搭建 DNS 服务器可以通过安装和配置 BIND(Berkeley Internet Name Domain)软件来实现。 以下是在 CentOS 7 上搭建 DNS 服务器的步骤: 1. 安装 BIND 软件 运行以下命令安装 BIND 软件: ``` sudo yum install bind bind-utils -y ``` 2. 配置 DNS 服务器 创建一个名为 `/etc/named.conf` 的文件,并将以下内容添加到该文件中: ``` options { listen-on port 53 { any; }; allow-query { any; }; forwarders { 8.8.8.8; }; recursion yes; dnssec-enable yes; dnssec-validation yes; }; zone "example.com" { type master; file "/var/named/example.com.zone"; allow-update { none; }; }; zone "0.168.192.in-addr.arpa" { type master; file "/var/named/192.168.0.zone"; allow-update { none; }; }; ``` 在上面的配置中: - `listen-on port 53`:指定 BIND 监听的端口号。 - `allow-query`:指定哪些客户端可以查询 DNS 服务器。 - `forwarders`:指定 DNS 服务器的转发器。 - `recursion`:指定是否允许递归查询。 - `dnssec-enable` 和 `dnssec-validation`:启用 DNSSEC 验证。 3. 创建 DNS 区域文件 创建两个文件 `/var/named/example.com.zone` 和 `/var/named/192.168.0.zone`,用于存储 DNS 区域信息。文件内容如下: `/var/named/example.com.zone`: ``` $TTL 86400 @ IN SOA ns1.example.com. admin.example.com. ( 201902221 ; serial 7200 ; refresh 1800 ; retry 604800 ; expire 86400 ; minimum ) @ IN NS ns1.example.com. ns1 IN A 192.168.0.100 www IN A 192.168.0.101 ``` `/var/named/192.168.0.zone`: ``` $TTL 86400 @ IN SOA ns1.example.com. admin.example.com. ( 201902221 ; serial 7200 ; refresh 1800 ; retry 604800 ; expire 86400 ; minimum ) @ IN NS ns1.example.com. 100 IN PTR ns1.example.com. 101 IN PTR www.example.com. ``` 4. 启动并测试 DNS 服务器 启动 BIND 服务: ``` sudo systemctl start named ``` 设置 BIND 服务自动启动: ``` sudo systemctl enable named ``` 测试 DNS 服务器是否正常工作,可以使用 `nslookup` 命令: ``` nslookup www.example.com ``` 应该返回 `192.168.0.101` 的 IP 地址。 至此,你的 DNS 服务器就搭建完成了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值