将备考RHCE期间的练习题做一巩固,供参考
准备工作
1.设定SELinux
2.配置防火墙
3.自定义用户环境
4.配置端口转发
5.配置链路聚合
6.配置IPV6地址
7.配置本地邮件服务
8.通过 SMB 共享目录
9.配置多用户SMB挂载
10.配置NFS服务
11.挂载一个NFS共享
12.实现一个 web 服务器
13.配置安全web服务
14.配置虚拟主机
15.配置 web 内容的访问
16.实现动态WEB内容
17.创建一个脚本
18.创建一个添加用户的脚本
19.配置 ISCSI 服务端
20.配置 iSCISI 的客户端
21.配置一个数据库
22.数据库查询
准备工作
开启一台server服务器(无需操作,开机即可),两台需要操作的主机system1、system2,配置过程中,我们以system1作为服务端,system2作为客户端。记得首先给两台操作的主机system1、system2配置YUM源
[base]
name=base
baseurl=http://server.group8.example.com/yum
gpgcheck=0
OK,开整!!
1.设定SELinux
在 system1 和 system2 上要求 SELinux 的工作模式为 enforcing : 要求系统重启后依然生效。
system1、system2配置:

2.配置防火墙
请按下列要求在 system1 和 system2 上设定防火墙系统:
允许 group8.example.com 域的客户对 system1 和 system2 进行 ssh 访问。
禁止 my133t.org 域的客户对 system1 和 system2 进行 ssh 访问。
备注: my133t.org 是在 172.13.8.0/24 网络
system1、system2配置:

3.自定义用户环境
在系统system1和system2上创建自定义命令为qstat ,要求:
此自定义命令将执行以下命令:/bin/ps -Ao pid,tt,user,fname,rsz
此命令对系统中的所有用户有效
system1、system2配置:

4.配置端口转发
在系统 system1 设定端口转发,要求:
在172.24.8.0/24网络中的系统,访问system1的本地端口 5423 将被转发到 80
此设置必须永久有效
system1配置:

5.配置链路聚合
在system2和system1之间按以下要求设定一个链路:
此链路使用接口eth1和eth2
此链路在一个接口失效时仍然能工作
此链路在system1使用下面的地址172.16.3.40/255.255.255.0
此链路在system2使用下面的地址172.16.3.45/255.255.255.0
此链路在系统重启之后依然保持正常状态
system1配置:

system2配置:

6.配置IPV6地址
在考试系统上设定接口eth0使用下列IPV6地址:
system1上的地址应该是2003:ac18::305/64
system2上的地址应该是2003:ac18::30a/64
两个系统必须能与网络2003:ac18/64内的系统通信
地址必须在重启后依然生效
两个系统必须保持当前的IPV4地址并能通信
system1配置:

system2配置:

7.配置本地邮件服务
在系统 system2 和system1 上配置邮件服务,要求:
这些系统不接受外部发送来的邮件
在这些系统上本地发送的任何邮件都会自动路由到mail.group8.example.com
从这些系统上发送的邮件显示来自于server.group8.example.com
您可以通过发送邮件到本地用户 dave 来测试您的配置,系统 server.group8.example.com 已经配置把此用户的邮件转到URL http://server.group8.example.com/pub/received_mail/8
system1、system2配置:

测试:
8.通过 SMB 共享目录
在 system1 上配置SMB服务 ,要求:
您的 SMB 服务器必须是 STAFF 工作组的一个成员
共享 /common 目录,共享名必须为 common
只有 group8.example.com 域内的客户端可以访问common共享
common 必须是可以浏览的
用户 andy 必须能够读取共享中的内容,如果需要的话,验证密码是redhat
①装包yum install samba -y



system2验证 yum install samba-client.x86_64 -y

9.配置多用户SMB挂载
共享名为 devops
共享目录 devops 只能 group8.example.com 域中的客户端使用
共享目录 devops 必须可以被浏览
用户 silene 必须能以读的方式访问此共享,访问密码是redhat
用户 akira 必须能以读写的方式访问此共享,访问密码是redhat
此共享永久挂载在 system2.group8.example.com 上的 /mnt/dev 目录,并使用用户 silene 作为认证用户,可以通过用户 akira 来临时获取写的权限


system2验证:yum install cifs-utils.x86_64 -y


10.配置NFS服务
在 system1 配置NFS服务,要求如下:
以只读的方式共享目录 /public ,同时只能被 group8.example.com 域中的系统访问
以读写的方式共享目录 /protected ,同时只能被 group8.example.com 域中的系统访问
访问 /protected 需要通过Kerberos安全加密,您可以使用下面URL提供的密钥http://server.group8.example.com/pub/keytabs/system1.keytab
目录 /protected 应该包含名为 project 拥有人为 andres 的子目录
用户 andres 能以读写方式访问 /protected/project
system 1配置:

上图中的错误你发现了吗??现在下图对比上图卡瞧瞧

11.挂载一个NFS共享
在 system2 上挂载一个来自 system1.group8.example.com 的NFS共享,并符合下列要求:
/public 挂载在下面的目录上 /mnt/nfsmount
/protected挂载在下面的目录上 /mnt/nfssecure 并使用安全的方式,密钥下载URL如下: http://server.group8.example.com/pub/keytabs/system2.keytab
用户 andres 能够在 /mnt/nfssecure/project 上创建文件
这些文件系统在系统启动时自动挂载
system2配置:



切记:在服务端需要开启的服务是nfs-server和nfs-secure-server
在客户端,需要开启的服务是nfs-server和nfs-secure
12.实现一个 web 服务器
在 system1 上配置一个站点 http://system1.group8.example.com/,然后执行下述步骤:
从 http://server.group8.example.com/pub/system1.html 下载文件,并且将文件重名为 index.html 不要修改此文件的内容
将文件 index.html 拷贝到您的 web 服务器的 DocumentRoot 目录下
来自于 group8.example.com 域的客户端可以访问此web服务
来自于 my133t.org 域的客户端拒绝访问此web服务
system1配置:
①装包yum install httpd -y

配置文件(上图中不应该叫做主配置文件,而是次配置文件下的虚拟主机)

②设置防火墙规则(同时将https也设置)

13.配置安全web服务
为站点 http://system1.group8.example.com 配置TLS加密:
一个已签名证书从 http://server.group8.example.com/pub/tls/certs/system1.crt 获取
此证书的密钥从 http://server.group8.example.com/pub/tls/private/system1.key 获取
此证书的签名授权信息从 http://server.group8.example.com/pub/tls/certs/ssl-ca.crt 获取
①装包yum install mod_ssl -y
②写配置文件f,分屏命令,即同时打开两个文件,方便复制粘贴vim /etc/httpd/conf.d/vhost.conf -o /etc/httpd/conf.d/ssl.conf


14.配置虚拟主机
在 system1 上扩展您的web服务器,为站点 http://www8.group8.example.com 创建一个虚拟主机,然后执行下述步骤:
设置 DocumentRoot 为 /var/www/virtual
从 http://server.group8.example.com/pub/www8.html 下载文件重名为 index.html ,不要对文件 index.html 的内容做任何修改
将文件 index.html 放到虚拟主机的 DocumentRoot 目录下
确保 andy 用户能够在 /var/www/virtual 目录下创建文件
注意:原站点 http://system1.group8.example.com 必须仍然能够访问,名称服务器 server.group8.example.com 已经提供对主机名 www8.group8.example.com 的域名解析


15.配置 web 内容的访问
在您的 system1 上的 web 服务器的 DocumentRoot 目录下,创建一个名为 private 的目录,要求如下:
从 http://server.group8.example.com/pub/private.html 下载一个文件副本到这个目录,并且重命名为 index.html
不要对这个文件的内容做任何修改
从 system1 上,任何人都可以浏览 private 的内容,但是从其它系统不能访问这个目录的内容。
system1配置:

system2测试:

16.实现动态WEB内容
在 system1 上配置提供动态web内容,要求:
动态内容由名为 wsgi.group8.example.com 的虚拟主机提供
虚拟主机侦听在端口 8909
从 http://server.group8.example.com/pub/webinfo.wsgi 下载一个脚本,然后放在适当的位置,无论如何不要求修改此文件的内容
客户端访问 http://wsgi.group8.example.com:8909/ 时,应该接收到动态生成的web页面
此 http://wsgi.group8.example.com:8909/ 必须能被 group8.example.com 域内的所有系统访问

17.创建一个脚本
在system1上创建一个名为 /root/foo.sh 的脚本,让其提供下列特性:
当运行 /root/foo.sh redhat ,输出为 fedora
当运行 /root/foo.sh fedora ,输出为 redhat
当没有任何参数或者参数不是 redhat 或者 fedora 时,其错误输出产生以下的信息:
/root/foo.sh redhat | fedora


18.创建一个添加用户的脚本
在 system1 上创建一个脚本,名为 /root/batchusers ,此脚本能实现为系统 system1 创建本地用户,并且这些用户的用户名来自一个包含用户名列表的文件,同时满足下列要求:
此脚本要求提供一个参数,此参数就是包含用户名列表的的文件
如果没有提供参数,此脚本应该给出下面的提示信息 Usage: /root/batchusers userfile 然后退出并返回相应的值
如果提供一个不存在的文件名,此脚本应该给出下面的提示信息 Input file not found 然后退出并返回相应的值
创建的用户登录shell为 /bin/false
此脚本不需要为用户设置密码
您可以从下面的URL获取用户名列表作为测试用 http://server.group8.example.com/pub/userlist


19.配置 ISCSI 服务端
配置 system1 提供一个 ISCSI 服务 磁盘名为 iqn.2014-08.com.example.group8:system1 ,并符合下列要求:
服务端口为 3260
使用 iscsi_store 作其后端逻辑卷名称,其大小为 3G
此服务只能被 system2.group8.example.com 访问
①装包yum install targetcli.noarch -y

②重启服务systemctl restart target.service
20.配置 iSCISI 的客户端
配置 system2 使其能连接在 system1 上提供的
iqn.2014-08.com.example.group8:system1,并符合以下要求:
iSCISI 设备在系统启动的期间自动加载
块设备 iSCISI 上包含一个大小为 2100 MiB 的分区,并格式化为 ext4
此分区挂载在 /mnt/data 上,同时在系统启动的期间自动挂载
①装包yum install iscsi-initiator-utils -y





21.配置一个数据库
①装包yum install mariadb* -y

22.数据库查询
在 system1 上使用数据库 Contacts ,并使用相应的 SQL 查询以回答下列问题
1.密码是fadora 的人的名字是什么?
2.有多少人的姓名是 John ,同时居住在 Santa Clara ?

重启测试
system1重启后:

system2重启后:

RHCE的练习题就做到这块。想了解更多RHCSA练习题,点击>>RHCSA
完结。