码迷,mamicode.com
首页 > 其他好文 > 详细

Fedora 23/RHEL7网络配置和DNS服务器的搭建

时间:2016-01-20 06:25:21      阅读:211      评论:0      收藏:0      [点我收藏+]

标签:fedora 23 rhel7 dns缓存配置

    Fedora 是一个Linux的发行版,Fedora (第七版以前为Fedora Core)是一款基于 Linux ,从Red Hat Linux发展出来的免费操作系统,Fedora在2015年11月3日已更新到第23版Fedora 23。而红帽的Red Hat Enterprise Linux 7(简称RHEL7)对应的Fedora版本,则是从Fedora 19开始。目前RHEL系列已更新到RHEL7.2。

    Fedora 是一款由全球社区爱好者构建的面向日常应用的快速、稳定、强大的操作系统。它允许任何人自由地使用、修改和重发布,无论现在还是将来。它由一个强大的社群开发,这个社群的成员以自己的不懈努力,提供并维护自由、开放源码的软件和开放的标准。Fedora 项目由 Fedora 基金会管理和控制,得到了 Red Hat 的支持。

     Fedora的功能对于用户而言,它是一套功能完备、更新快速的免费操作系统,而对赞助者Red Hat公司而言,它是许多新技术的测试平台,被认为可用的技术最终会加入到Red Hat Enterprise Linux中。

    Fedora和Red Hat Enterprise Linux、CentOS相似,这意味着假如你懂得操作Red Hat,或者是CentOS,那么你操作Fedora起来完全没有压力。

    随着企业级RHEL7的发布,并带来了许多新特性,如全新的安装界面、systemd命令、firewall防火墙等,在Fedora 23中都有体现。本文主要介绍Fedora 23的网络配置,防火墙配置、Selinux、以及主要的NDS服务器配置。

技术分享

Fedora官网:https://start.fedoraproject.org/


Step1:Hostname配置


1、设置主机名,使用hostnamectl命令

[root@fedora ~]# hostnamectl set-hostname fedora.example.com

2、设置完成,可以使用hostnamectl status查看当前主机名信息

[root@fedora ~]# hostnamectl status

技术分享

3、也可以通过修改配置文件,更新主机名,使用vim工具编辑/etc/sysconfig/network文件

技术分享


Step2:ip地址配置


1、使用nmcli命令配置静态IP地址、dns

    Fedora 23

[root@fedora ~]# nmcli connection modify "eno16777736" ipv4.addresses "192.168.1.33/24"
[root@fedora ~]# nmcli connection modify "eno16777736" ipv4.gateway "192.168.1.2"
[root@fedora ~]# nmcli connection modify "eno16777736" ipv4.dns "202.96.128.86,202.96.134.33"
[root@fedora ~]# nmcli connection modify "eno16777736" ipv4.method m  ;手动方法

    RHEL7

#nmcli connection modify "网卡设备名" ipv4.addresses "192.168.1.33/24 192.168.1.2"
#nmcli connection modify "网卡设备名" ipv4.dns "202.96.128.86 202.96.134.33"
#nmcli connection modify "网卡设备名" ipv4.method m


2、激活网卡及查看网卡状态

[root@fedora ~]# nmcli connection up "eno16777736"
成功激活的连接(D-Bus 激活路径:/org/freedesktop/NetworkManager/ActiveConnection/4)

技术分享

技术分享


3、显示当前活动的网卡

[root@fedora ~]# nmcli connection show --active

技术分享


4、如果需要停止指定网卡,使用命令nmcli connection up <设备名称>

[root@fedora ~]# nmcli connection down eno16777736 
Connection ‘eno16777736‘ successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/4)


Step3:Fedora中安装DNS服务器

1、试验环境

        DNS Server               :fedora.example.com (Fedora 23)

        Server IP Address    :192.168.1.33

        Client                        :vm.example.com (CentOS 6.7)

        Client IP Address     :192.168.1.218


2、Fedora服务端安装DNS服务器

   Fedora 23的自动安装工具yum更新为yum2版本,可以通过dnf install <软件包名>安装软件。用法和yum相同。

查询软件包:# dnf search <软件包名>
列出软件包:# dnf list |grep <软件包名>

   安装DNS服务器仅需要安装bind、bind-utils这两个包。查询这两个软件并安装它。

[root@fedora ~]# dnf -y install bind bind-utils

技术分享


Step4:Frdora服务端中配置DNS服务


1、安装了DNS软件包之后,接下来就可以配置/etc/named.conf文件,修改监听IP为所有,当然也可以指定IP地址。开启allow-query(允许查询)和allow-query-cache(允许所有用户查询服务器缓存)

[root@fedora ~]# vim /etc/named.conf

技术分享


2、添加正向区域example.com文件声明和反向区域1.168.192.in-addr.arpa文件声明,以告诉DNS服务器去哪里读取正向和反向区域文件配置。下面会创建正向区域文件/var/named/example.com.host和反向区域文件/var/named/192.168.1.rev。

技术分享


3、检查配置文件/etc/named.conf 有没有错误,如果没有输出,则说明配置应该没有问题

[root@fedora named]# named-checkconf /etc/named.conf


Step5:在Frdora服务器中配置防火墙规则

4、配置完/etc/named.conf文件,还需要添加防火墙规则,打开DNS默认监听的UDP端口号53的防火墙允许规则,使用firewall-cmd 命令操作。

[root@fedora ~]# firewall-cmd --permanent --list-all     ;列出防火墙规则列表
FedoraWorkstation (default)
  interfaces: 
  sources: 
  services: dhcpv6-client http mdns samba-client ssh
  ports: 1025-65535/tcp 1025-65535/udp
  masquerade: no
  forward-ports: 
  icmp-blocks: 
  rich rules:
[root@fedora ~]# firewall-cmd --add-port=53/udp (使防火墙规则临时生效,若要永久生效则需要配合permanent使用)
[root@fedora ~]# firewall-cmd  --add-port=53/udp --permanent (--permanent为永久保存)
[root@fedora ~]# firewall-cmd --reload  (或者使用该条命令重新加载规则)

技术分享


Step5:在Frdora服务器中配置Selinux上下文规则

5、如果启用了Selinux,那么必须设置/etc/named.conf和/etc/named.rfc1912.zones文件的上下文为named_conf_t,这里的上下文是相对于DNS配置文件。如果是Apache服务器,那么应该把/var/www/网站目录的上下文设置为httpd_sys_content_t。

[root@fedora ~]# semanage fcontext -a -t named_conf_t /etc/named.conf
[root@fedora ~]# semanage fcontext -a -t named_conf_t /etc/named.rfc1912.zones
[root@fedora ~]# restorecon -RFvv /etc/named.conf (在rhel7中可能还需要这条命令使配置生效)


通过以下命令查看上下文设置:

[root@fedora ~]# ls -lZ /etc/named.conf 
-rw-r-----. 1 root named system_u:object_r:named_conf_t:s0 1729 1月  19 17:19 /etc/named.conf
[root@fedora ~]# ls -lZ /etc/named.rfc1912.zones 
-rw-r-----. 1 root named system_u:object_r:named_conf_t:s0 931 6月  21 2007 /etc/named.rfc1912.zones


Step6:创建正向区域文件和反向区域文件


1、首先创建一个正向区域文件,用于DNS服务器的正向解析

[root@fedora ~]# cd /var/named/
[root@fedora named]# cp named.localhost example.com.host

[root@fedora named]# vim example.com.host 
$TTL 1D
@       IN      SOA     @ root.example.com. (
                                        2016011918              ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       IN      NS      fedora.example.com.     ;DNS服务器域名NS记录    
fedora  IN      A       192.168.1.33            ;DNS服务器IP地址A记录
rhel    IN      CNAME   fedora.example.com.     ;创建一个别名记录
mail    IN      MX  5   mail.example.com.       ;创建一个邮件主机的mail记录
mail    IN      A       192.168.1.21            ;创建一个邮件主机的A记录
www     IN      A       192.168.1.21            ;创建一个A记录指向www这个域名
~

2、使用named-checkzone 命令检查配置example.com.host有无错误

技术分享


3、创建一个反向区域文件,用于DNS服务器的反向解析

[root@fedora named]# vim 192.168.1.rev 
$TTL 1D
@       IN      SOA     @ root.example.com. (
                                        2016011919              ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       IN      NS      fedora.example.com.
33      IN      PTR     fedora.example.com.
21      IN      PTR     www.example.com.

技术分享


4、检查192.168.1.rev文件配置有无错误

[root@fedora named]# named-checkzone "1.168.192.in-addr.arpa" /var/named/192.168.1.rev 
zone 1.168.192.in-addr.arpa/IN: loaded serial 2016011919
OK

5、此外,还需要检查这两个区域文件的所属组是否为named,否则它将影响你的解析,用以下命令更改

[root@fedora named]# chgrp named example.com.host
[root@fedora named]# chgrp named 192.168.1.rev


Step7:Fedora服务端启动DNS服务


1、设置DNS服务开机启动

[root@fedora ~]# systemctl enable named.service

2、启动/重启DNS服务

[root@fedora ~]# systemctl restart named

3、查看DNS服务状态

[root@fedora ~]# systemctl status named

技术分享


Step8:在CentOS6.7客户端进行测试Fedora服务端DNS服务


1、安装bind-utils软件

[root@vm ~]# yum -y install bind-utils

2、修改Centos6.7的DNS为服务端IP192.168.1.33

编辑/etc/sysconfig/network-scripts/ifcfg-eth0文件,在末尾增加

DNS1=192.168.1.33

此外,还需修改/etc/resolv.conf文件

[root@vm ~]# vim /etc/resolv.conf

nameserver 192.168.1.33

技术分享

配置完成后重启网络


3、使用host命令解析example.com

[root@vm ~]# host fedora.example.com
fedora.example.com has address 192.168.1.33

[root@vm ~]# host www.example.com
www.example.com has address 192.168.1.21

[root@vm ~]# host mail.example.com
mail.example.com has address 192.168.1.21
mail.example.com mail is handled by 5 mail.example.com.

4、使用nslookup命令解析example.com

[root@vm ~]# nslookup 
> set type=SOA          
> example.com
Server:192.168.1.33
Address:192.168.1.33#53
example.com
origin = example.com
mail addr = root.example.com
serial = 2016011918
refresh = 86400
retry = 3600
expire = 604800
minimum = 10800

> set type=NS 
> example.com
Server:		192.168.1.33
Address:	192.168.1.33#53

example.com	nameserver = fedora.example.com.

> set type=A
> fedora.example.com
Server:192.168.1.33
Address:192.168.1.33#53
Name:fedora.example.com
Address: 192.168.1.33

> set type=A
> www.example.com
Server:		192.168.1.33
Address:	192.168.1.33#53

Name:	www.example.com
Address: 192.168.1.21


> set type=PTR
> 192.168.1.21
Server:		192.168.1.33
Address:	192.168.1.33#53

21.1.168.192.in-addr.arpa	name = www.example.com.
> set type=PTR
> 192.168.1.33
Server:		192.168.1.33
Address:	192.168.1.33#53

33.1.168.192.in-addr.arpa	name = fedora.example.com.


> set type=CNAME
> rhel.example.com
Server:		192.168.1.33
Address:	192.168.1.33#53

rhel.example.com	canonical name = fedora.example.com.


5、使用dig命令解析example.com

[root@vm ~]# dig example.com +nssearch ;查找example.com域的授权DNS服务器
SOA example.com. root.example.com. 2016011918 86400 3600 604800 10800 from server 192.168.1.33 in 0 ms.

[root@vm ~]# dig @192.168.1.33 fedora.example.com

技术分享


[root@vm ~]# dig @192.168.1.33 www.example.com

技术分享


[root@vm ~]# dig @192.168.1.33 rhel.example.com

技术分享


[root@vm ~]# dig @192.168.1.33 mail.example.com

技术分享


[root@vm ~]# dig @192.168.1.33 -x 192.168.1.21

技术分享


Setp9:在客户端CentOS6.7测试DNS缓存

1、安装bind-chroot软件包

[root@vm ~]# yum -y install bind-chroot

2、dig sohu.com,注意观察查询的时间变化

dig解析第一次:

[root@vm ~]# dig sohu.com

技术分享

dig解析第二次:

技术分享

dig解析第三次:

技术分享

由于服务端Fedora的DNS服务器配置打开了allow-query-cache缓存,客户端在通过DNS服务器请求解析时,服务端会把解析的结果缓存到服务器,所以客户端在第二次以后的解析请求,直接由本地DNS服务器(这里指实验中的Fedora服务器)返回解析结果。



本文出自 “7414593” 博客,请务必保留此出处http://7424593.blog.51cto.com/7414593/1736627

Fedora 23/RHEL7网络配置和DNS服务器的搭建

标签:fedora 23 rhel7 dns缓存配置

原文地址:http://7424593.blog.51cto.com/7414593/1736627

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!