1.开放/nfs/upload目录,该目录为192.168.xxx.0/24网段的主机的数据
NFS简介
NFS(Network File System,网络文件系统)是FreeBSD支持的文件系统中的一种,它允许网络中的计算机(不同的计算机、不同的操作系统)之间通过TCP/IP网络共享资源,主要在unix系列操作系统上使用。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。
NFS服务器可以让PC将网络中的NFS服务器共享的目录挂载到本地端的文件系统中,而在本地端的系统中看来,那个远程主机的目录就好像是自己的一个磁盘分区一样。
由于NFS支持的功能比较多,而不同的功能都会使用不同的程序来启动,每启动一个功能就会启用一些端口来传输数据,因此NFS的功能所对应的端口并不固定,而是随机取用一些未被使用的小于1024的端口用于传输。但如此一来就会产生客户端连接服务器的问题,因为客户端需要知道服务器端的相关端口才能够连接。
此时就需要RPC(Remote Procedure Call,远程过程调用)的服务。由于当服务器在启动NFS时会随机选取数个端口号,并主动向RPC注册,所以RPC知道每个NFS功能所对应的端口号,RPC将端口号通知给客户端,让客户端可以连接到正确的端口上去。RPC采用固定端口号port 111来监听客户端的需求并向客户端响应正确的端口号
注:在启动NFS之前,要先启动RPC,否则NFS会无法向RPC注册。另外,RPC若重新启动,原来注册的数据会消失不见,因此RPC重启后,它管理的所有服务都需要重新启动以重新向RPC注册。
所以我们需要将/nfs/upload目录共享出去,并且让客户端将该目录挂载到本地段的文件系统。
对服务端的配置;
#首先需要下载两个软件:
[root@hh zones]# yum install rpcbind -y
[root@hh zones]# yum install nfs-utils -y
#启动软件,注意先启动rpcbin
[root@hh zones]# systemctl restart rpcbind
[root@hh zones]# systemctl restart nfs-server
# 创建需要开放的目录,并编写一个文件
[root@hh ~]# mkdir -p /nfs/upload
[root@hh nfs]# vim /nfs/upload/aa.txt
一起学rhce
#进入主配置文件中进行配置
[root@hh ~]# vim /etc/exports
/nfs *(rw)
#注意需要所配置的开放为目录,必须提前创建
# rw/ro:该目录共享的权限是可读写还是只读,但最终能否读写,还是与文件系统 的rwx有关
[root@hh ~]# ls -dl /nfs/upload
drwxr-xr-x. 2 root root 6 Oct 23 17:40 /nfs/upload
#还需修改共享文件的文件权限
[root@hh ~]# chmod 777 /nfs/upload/
# 重新加载服务器的资源,
[root@hh ~]# exportfs -r
配置客户端
我们让客户端使用自动挂载的方式,去获取服务器的数据。
autofs这个服务是在客户端的上面,它会持续的检测某个指定的目录,并预先设置当使用到该目录的某个子目录时,将会取得来自服务器端的NFS文件系统资源,并进行自动挂载的操作
#在客户端下载autofs这个服务
[root@rhcsa2 ~]# yum install nfs-utils -y
接着去autofs主配置文件中配置
[root@rhcsa2 ~]# vim /etc/auto.master
#父目录 挂载信息的配置文件
/nfsdata /etc/auto.nfs
#保存并退出
#编辑主配置文件中添加的挂载信息配置文件
[root@rhcsa2 upload]# vim /etc/auto.nfs
#子目录 | nfs服务器的ip地址 | 服务器共享的目录
data 192.168.112.131:/nfs
#将data目录挂载于服务器的/nfs目录下,当我们进入客户端的/nfsdata/data目录下,就相当
#于是进入服务器的/nfs目录下
#重启autofs服务
[root@rhcsa2 ~]# systemctl restart autofs
#进入nfsdata目录下,并查看目录下的内容
[root@rhcsa2 ~]# cd /nfsdata/
[root@rhcsa2 nfsdata]# ls -l
total 0
#发现什么都没有
#这是因为只有当我们使用data目录是才会帮我们自动挂载,所以我们先进入data目录
[root@rhcsa2 nfsdata]# cd data
[root@rhcsa2 data]#
#发现进去了,然后我们查看data目录里的文件(上面我们并没有对data目录进行编辑)
[root@rhcsa2 data]# ls
upload #这是nfs服务器中/nfs目录下的目录
[root@rhcsa2 data]#
#我们进入upload目录看有没有aa.txt文件,并查看它的内容
[root@rhcsa2 data]# cd upload/
[root@rhcsa2 upload]# ls -l
total 4
-rw-r--r-- 1 root root 14 Oct 23 20:20 aa.txt
[root@rhcsa2 upload]# cat aa.txt
一起学rhce
[root@rhcsa2 upload]#
此时已近共享成功。
2.配置dns正向解析 规划: 192.168.xxx.xxx dns1.abc.com主域名服务器(注意为真实的IP) 172.16.0.253 dns2.abc.com从域名服务器 172.16.0.100 fileserver.abc.com文件服务器 172.16.0.101 printserver.abc.com打印服务器 172.16.0.200 www.abc.com网站服务器 172.16.0.201 www.abc.com网站服务器 172.16.0.25 mail.abc.com邮件服务器 172.16.0.22 ntp.abc.com时间服务器
下载软件
[root@rhcsa2 ~]# yum install bind -y
#bind文件简介
[root@rhcsa2 ~]# rpm -ql bind
/etc/named.conf # bind主配置文件
/etc/named.rfc1912.zones # 定义zone的文件
/etc/rndc.conf # rndc配置文件
/usr/sbin/named-checkconf # 检测/etc/named.conf文件语法
/usr/sbin/named-checkzone # 检测zone和对应zone文件的语法
/usr/sbin/rndc # 远程dns管理工具
/usr/sbin/rndc-confgen # 生成rndc密钥
***\*/var/named/named.ca #\**** ***\*根解析库\****
/var/named/named.localhost # 本地主机解析库
/var/named/slaves # 从ns服务器文件夹
#进入主配置文件中进行配置(红色表示修改添加的部分)
[root@rhcsa2 ~]# vim /etc/named.conf
options {
listen-on port 53 { 192.168.112.132; };#修改IP地址,服务器的IP地址
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
secroots-file "/var/named/data/named.secroots";
recursing-file "/var/named/data/named.recursing";
allow-query { 192.168.112.0/24; }; #允许访问的用户
#添加区域:
zone "openlab.com" IN{ #修改域名
type master; # 主服务器
file "openlab.zone"; #指定区域的解析文件,注意此文件是在/var/named/目录下
};
保存并退出。
# 因为解析文件并不存在,所以我们还得去/var/named/目录下创建openlab.zone文件,并进行配置。
[root@rhcsa2 ~]# vim /var/named/openlab.zone
$TTL 1D #存活时间:全局时间 1D:表示一天
#DNS解析通过资源记录来设置的:解析文件中的注释使用“;”# SOA记录:起始记录:必须放在解析文件第一条记录
# @:特殊用法:指定的就是我们的域(此时我们的域是localhost)
# 第二个@与第一个@用法一样
# rname.invalid 是管理员的邮箱
# serial : 序列号,主从同步的时候,序列号越大代表越新
# refresh:刷性时间
# retry:从dns服务器请求主dns服务器的时候,当请求不到的时候,重新请求的间隔时间
# expire:从dns服务器和主dns服务器连接不上的时候,失效时间,就不能在请求了
# minimum:最小的缓存时间|
# “;”也是注释
$TTL 1D
@ IN SOA dns.abc.com test.163.com (
0 ;serial
1D ;refersh
1H ;retry
1W ;expire
3h ) ;minimum
IN NS dns.abc.com.
IN MX 10 mail.abc.com.
; 只写dns,会自动帮你加openlab.com,如果想写完整的域名的话,注意要加根域名“.”
dns.abc.com. IN A 192.168.112.132
dns2 IN A 192.16.0.253
fileserver IN A 192.16.100
printserver IN A 192.16.0.101
mail IN A 192.16.0.25
ntp IN A 192.16.0.22
www IN A 192.16.0.200
www IN A 192.16.0.201# NS:就是name Server的记录
当我们的连接的资源记录使用的是同一个name(@)时候,那么name可以省略
# A:ipv4的正向解析记录
#AAAA:ipv6的正向解析记录
使用检查命令检查主配置文件于区域解析文件
[root@rhcsa2 named]# named-checkconf /etc/named.conf
[root@rhcsa2 named]# vim /var/named/abc.zone
#没有报错后,我们重启named服务
[root@rhcsa2 named]# systemctl restart named
使用nslookup 命令校验:
[root@rhcsa2 named]# nslookup mail.abc.com 192.168.112.132
Server: 192.168.112.132
Address: 192.168.112.132#53
Name: mail.abc.com
Address: 192.16.0.25
[root@rhcsa2 named]# nslookup dns2.abc.com 192.168.112.132
Server: 192.168.112.132
Address: 192.168.112.132#53
Name: dns2.abc.com
Address: 192.16.0.253
[root@rhcsa2 named]# nslookup printserver.abc.com 192.168.112.132
Server: 192.168.112.132
Address: 192.168.112.132#53
Name: printserver.abc.com
Address: 192.16.0.101
[root@rhcsa2 named]#