目录
- 项目标题与需求
- 一 配置IP地址
- server机
- node02机
- 二 配置web服务
- 三 搭建dns服务器
- 四 开启防火墙
- server firewalld
- 五 配置nfs服务器
- node02 nfs
- server autofs
- 六 开启SELinux
- 七 验证是否能访问www.rhce.com
项目标题与需求
项目标题:
项目需求:
现有主机 node01 和 node02,完成如下需求:
- 在 node01 主机上提供 DNS 和 WEB 服务
- dns 服务提供本实验所有主机名解析
- web服务提供 www.rhce.com 虚拟主机
- 该虚拟主机的documentroot目录在 /nfs/rhce 目录
- 该目录由 node02 主机提供的NFS服务共享
- 该目录可以通过autofs服务实现自动挂载
- 所有服务应该在重启之后依然可以正常使用
项目规划:
- 准备两台机子,并配置IP地址
- node01配置web服务和dns服务,
- node02 配置nfs共享文件
- node01 配置nfs接受文件及其设置autofs开机自动挂载
- 要求防火墙及其SELinux都是开启
一 配置IP地址
server机
node01(以下我使用service代替)下载相关文件 包括相关工具,服务
[root@server ~]# dnf install vim lrz* tree httpd bind bash-com* net-tools nfs-utils autofs -y
server配置IP地址
[root@server ~]# nmcli connection modify ens160 ipv4.addresses 172.16.10.10/24 ipv4.method manual connection.autoconnect yes ipv4.dns 172.16.10.10
node02机
node02配置IP地址
[root@server ~]# nmcli connection modify ens160 ipv4.addresses 172.16.10.40/24 ipv4.method manual connection.autoconnect yes ipv4.dns 172.16.10.10
安装nfs服务器
[root@server ~]# dnf install nfs-utils -y
二 配置web服务
下载httpd服务
[root@server ~]# dnf install httpd -y
配置文件
[root@server ~]# vim /etc/httpd/conf.d/vhost.conf
<directory /nfs >
allowoverride none
require all granted
</directory>
<virtualhost 172.16.10.10:80>
documentroot /nfs/rhce
servername 172.16.10.10
</virtualhost>
新建nfs的文件夹
[root@server ~]# mkdir /nfs
重启服务
[root@server ~]# systemctl restart httpd
查看端口
[root@server ~]# netstat -lntup | grep httpd
三 搭建dns服务器
下载DNS服务
[root@server ~]# dnf install bind -y
配置文件/etc/named.conf
[root@server ~]# vim /etc/named.conf
options {
listen-on port 53 { 172.16.10.10; };
directory "/var/named";
};
zone "rhce.com" IN {
type master;
file "named.nfs";
};
删除了多余配置,只保留了最主要配置
配置/var/named/named.nfs
[root@server nfs]# vim /var/named/named.nfs
$TTL 1d
@ IN SOA @ admin.rhce.com. (1
1
1
1
1 )
IN NS ns.rhce.com.
ns IN A 172.16.10.10
www IN A 172.16.10.10
重启服务
[root@server named]# systemctl restart named
验证dns是否通
四 开启防火墙
server firewalld
firewalld
[root@server ~]# systemctl start firewalld
[root@server ~]# systemctl enable firewalld
[root@server ~]# firewall-cmd --permanent --add-service=nfs
[root@server ~]# firewall-cmd --permanent --add-service=mountd
[root@server ~]# firewall-cmd --permanent --add-service=rpc-bind
[root@server ~]# firewall-cmd --permanent --add-port=80/tcp
[root@server ~]# f rewall-cmd --reload
查看防火墙放行的端口及其服务
[root@server ~]# firewall-cmd --list-services
[root@server ~]# firewall-cmd --list-ports
五 配置nfs服务器
node02 nfs
node02安装并启动NFS服务器
[root@node ~]# dnf install nfs-utils -y
开机自启服务
[root@node ~]# systemctl enable --now nfs-server
查看状态
[root@node ~]# systemctl status nfs-server
配置导出目录,修改文件权限,写入html文件内容
[root@node rhce]# mkdir /rhce
[root@node rhce]# chmod 777 /rhce/ -R
[root@node rhce]# vim /etc/exports
/rhce 172.16.10.10(rw)
server autofs
查看导出的目录
[root@server ~]# showmount -e 172.16.10.40
配置autofs自动挂载
# 下载autofs软件包
[root@server ~]# yum install autofs -y
修改配置文件
[root@server rhce]# vim /etc/auto.master
/nfs /etc/auto.nfs
#本地端目录 具体挂载配置文件
[root@server rhce]# vim /etc/auto.nfs
rhce 172.16.10.40:/rhce
#本地端子目录 挂载参数 服务器 :服务器对应目录
重启服务
systemctl restart autofs
进入rhce目录,切nfs目录无法查看rhce,需要切进rhce目录,使用后方可查看
使用后可查看挂载详情
df -h
六 开启SELinux
SELinux
查看端口类型是否匹配
[root@server ~]# ll /var/www -Z # 查看端口类型
更改/nfs文件及其子目录的标签
[root@server ~]# chcon -t httpd_sys_content_t /nfs/ -R
# 开启SELinux
[root@server ~]# setenforce 1
修改bool值
setsebool -P httpd_use_nfs 1
当 httpd进程使用 nfs 文件系统时,需要打开一个selinux 布尔值 这个提示会在系统日志中出现,setsebool -P httpd_use_nfs 1 这个是开启的命令