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官网:https://start.fedoraproject.org/
Step1:Hostname配置
1、设置主机名,使用hostnamectl命令
1
|
[root@fedora ~]
# hostnamectl set-hostname fedora.example.com
|
2、设置完成,可以使用hostnamectl status查看当前主机名信息
1
|
[root@fedora ~]
# hostnamectl status
|
3、也可以通过修改配置文件,更新主机名,使用vim工具编辑/etc/sysconfig/network文件
Step2:Fedora 23/RHEL7配置ip地址
1、使用nmcli命令配置静态IP地址、dns
Fedora 23
1
2
3
4
|
[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
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
|
[root@fedora ~]
# nmcli connection up "eno16777736"
成功激活的连接(D-Bus 激活路径:
/org/freedesktop/NetworkManager/ActiveConnection/4
)
|
3、显示当前活动的网卡
1
|
[root@fedora ~]
# nmcli connection show --active
|
4、如果需要停止指定网卡,使用命令nmcli connection down <设备名称>
1
2
|
[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相同。
1
2
|
查询软件包:# dnf search <软件包名>
列出软件包:# dnf list |grep <软件包名>
|
安装DNS服务器仅需要安装bind、bind-utils这两个包。查询这两个软件并安装它。
1
|
[root@fedora ~]# dnf -y install bind bind-utils
|
Step4:Frdora服务端中配置DNS服务
1、安装了DNS软件包之后,接下来就可以配置/etc/named.conf文件,修改监听IP为所有,当然也可以指定IP地址。开启allow-query(允许查询)和allow-query-cache(允许所有用户查询服务器缓存)
1
|
[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 有没有错误,如果没有输出,则说明配置应该没有问题
1
|
[root@fedora 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
|
[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:
|
1
2
3
|
[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。
1
2
3
|
[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中可能还需要这条命令使配置生效)
|
通过以下命令查看上下文设置:
1
2
3
4
|
[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服务器的正向解析
1
2
|
[root@fedora ~]
# cd /var/named/
[root@fedora named]
# cp named.localhost example.com.host
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
[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服务器的反向解析
1
2
3
4
5
6
7
8
9
10
11
|
[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文件配置有无错误
1
2
3
|
[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,否则它将影响你的解析,用以下命令更改
1
2
|
[root@fedora named]
# chgrp named example.com.host
[root@fedora named]
# chgrp named 192.168.1.rev
|
Step7:Fedora服务端启动DNS服务
1、设置DNS服务开机启动
1
|
[root@fedora ~]
# systemctl enable named.service
|
2、启动/重启DNS服务
1
|
[root@fedora ~]
# systemctl restart named
|
本文转自 HMLinux 51CTO博客,原文链接:http://blog.51cto.com/7424593/1736627