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 由Fedora Project社区开发、红帽公司赞助,目标是创建一套新颖、多功能并且自由和开源的操作系统。

     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 23/RHEL7网络配置和DNS服务器的搭建

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


Step1:Hostname配置


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

1
[[email protected] ~]# hostnamectl set-hostname fedora.example.com

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

1
[[email protected] ~]# hostnamectl status

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

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

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


Step2:Fedora 23/RHEL7配置ip地址


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

    Fedora 23

1
2
3
4
[[email protected] ~]# nmcli connection modify "eno16777736" ipv4.addresses "192.168.1.33/24"
[[email protected] ~]# nmcli connection modify "eno16777736" ipv4.gateway "192.168.1.2"
[[email protected] ~]# nmcli connection modify "eno16777736" ipv4.dns "202.96.128.86,202.96.134.33"
[[email protected] ~]# nmcli connection modify "eno16777736" ipv4.method m  ;手动方法

    RHEL7

1
2
3
#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、**网卡及查看网卡状态

1
2
[[email protected] ~]# nmcli connection up "eno16777736"
成功**的连接(D-Bus **路径:/org/freedesktop/NetworkManager/ActiveConnection/4

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

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


3、显示当前活动的网卡

1
[[email protected] ~]# nmcli connection show --active

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


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

1
2
[[email protected] ~]# 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相同。

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

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

1
[[email protected] ~]# dnf -y install bind bind-utils

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


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


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

1
[[email protected] ~]# vim /etc/named.conf

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


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

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


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

1
[[email protected] named]# named-checkconf /etc/named.conf


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

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

1
2
3
4
5
6
7
8
9
10
[[email protected] ~]# 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:
1
2
3
[[email protected] ~]# firewall-cmd --add-port=53/udp (使防火墙规则临时生效,若要永久生效则需要配合permanent使用)
[[email protected] ~]# firewall-cmd  --add-port=53/udp --permanent (--permanent为永久保存)
[[email protected] ~]# firewall-cmd --reload  (或者使用该条命令重新加载规则)

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


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

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

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

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

1
2
3
4
[[email protected] ~]# 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
[[email protected] ~]# 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服务器的正向解析

1
2
[[email protected] ~]# cd /var/named/
[[email protected] named]# cp named.localhost example.com.host

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[[email protected] 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有无错误

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


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

1
2
3
4
5
6
7
8
9
10
11
[[email protected] 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.

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


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

1
2
3
[[email protected] 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,否则它将影响你的解析,用以下命令更改

1
2
[[email protected] named]# chgrp named example.com.host
[[email protected] named]# chgrp named 192.168.1.rev


Step7:Fedora服务端启动DNS服务


1、设置DNS服务开机启动

1
[[email protected] ~]# systemctl enable named.service

2、启动/重启DNS服务

1
[[email protected] ~]# systemctl restart named

本文转自 HMLinux 51CTO博客,原文链接:http://blog.51cto.com/7424593/1736627