此文章是RHCE7.0考试下午考的题目,若要了解上午考的题目请看本人上篇文章
本人下午考试成绩如下图:由于本人做完题忘记重启虚拟机检查服务,导致smb、database两类题有误,其他类型题成绩都比较不错
操作计算机为:一台物理机、两台虚拟机
yum源需要自己提前配好,配置YUM源的要求在考试要求里注意看
考试题目如下:
1.配置 SELinux,SELinux 必须在两个系统 system1 和 system2 中运行于 Enforcing 模式
getenforce 查看当前模式
setenforce 1
vim /etc/selinux/config 编辑配置文件
改为SELINUX=enforcing
2.配置 SSH 访问按以下要求配置 SSH 访问,:用户能够从域 rhce.com 内的客户端通过 SSH 远程访问您的两个虚拟机系统,在域 my133t.org 内的客户端不能访问您的两个虚拟机系统。
host rhce.com 解析域名
vim /etc/hosts.allow
sshd : 192.168.122.0/255.255.255.0
vim /etc/hosts.deny
sshd : .my133t.org
3.自定义用户环境,在系统 system1 和 system2 上创建自定义命令名为 qstat 此自定义命令将执行以下命令:
/bin/ps -Ao pid,tt,user,fname,rsz,此命令对系统中所有用户有效。
vim /etc/bashrc
alias qstat=‘/bin/ps -Ao pid,tt,user,fname,rsz‘
source /etc/bashrc
4.配置端口转发
在系统 system1 配置端口转发, 要求如下:在 192.168.122.0/24 网络中的系统, 访问 system1 的本地端口 5423 将被转发到 80,此设置必须永久有效
man -k firewall 查看防火墙帮助手册
man firewalld.richlanguage
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" forward-port to-port="80" protocol="tcp" port="5423"‘
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" forward-port to-port="80" protocol="tcp" port="5423"‘ --permanent
5.配置聚合链路在 system1.rhce.com 和 system2.rhce.com 之间按以下要求配置一个链路:此链路使用接口 eth1 和 eth2,
此链路在一个接口失效时仍然能工作,此链路在 system1 使用下面的地址 172.16.11.25/255.255.255.0,此链路在 system2 使用下面的地址 172.16.11.35/255.255.255.0,此链路在系统重启之后依然保持正常状态
cd /usr/share/doc/teamd-1.9/
cd example_ifcfgs/1/
cp * /etc/sysconfig/network-scripts/
scp * system2:/etc/sysconfig/metwork-scripts/
cd /etc/sysconfig/network-scripts/
vim ifcfg-eth1
DEVICE="eth1"
ONBOOT="yes"
vim ifcfg-eth2
DEVICE="eth2"
ONBOOT="yes"
vim ifcfg-team_test0
ONBOOT=yes
NAME=team_test0
IPADDR=172.16.11.25
TEAM_CONFIG=‘{"runner": {"name": "activebackup"}}‘
6.配置 IPv6 地址,在您的考试系统上配置接口 eth0 使用下列 IPv6 地址:,system1 上的地址应该是 200e:ac18::e0a/64
system2 上的地址应该是 200e:ac18::e14/64,两个系统必须能与网络 200e:ac18/64 内的系统通信。,地址必须在重启后依旧生效。两个系统必须保持当前的 IPv4 地址并能通信。
nmcli connection 查看eth 对应的链接名是什么
nmcli connetcion modify eth0 ipv6.method auto
nmcli connetcion modify eth0 ipv6.addresses 200e:ac18::e0a/64
nmcli connetcion modify eth0 ipv6.methond manual
systemctl restart netwrok
7、在系统 system1 和 system2 上 配置邮件服务,满足以下要求:这些系统不接收外部发送来的邮件,在这些系统上本地发送的任何邮件都会自动路由到 rhce.com,从这些系统上发送的邮件显示来自于 rhce.com,您可以通过发送邮件到本地用户 ‘dave‘ 来测试您的配置, 系统 rhce.com 已经配置把此用户的邮件转到下列 URL http://rhce.com/received_mail/11
firewall-cmd --add-service=smtp
firewall -md --add-service=smtp --permanent
cd /etc/postfix/
vim main.cf
mydestination = 为空就是不接受外部发来的邮件
relayhost = [rhce.com] 任何邮件都会自动路由到 rhce.com
myorigin = rhce.com 设置邮件显示来自于 rhce.com
yum install malix
echo aaaaaaaaaa | mail -s ‘aaaaaaaaaaaaaaaa‘ dave 发送邮件测试
8.通过 SMB 共享目录,在 system1 上配置 SMB 服务,您的 SMB 服务器必须是 STAFF 工作组的一个成员
共享 /common 目录 共享名必须为 common,只有 rhce.com 域内的客户端可以访问 common 共享,common 必须是可以浏览的,用户 andy 必须能够读取共享中的内容,如果需要的话,验证的密码是 redhat
system1配置如下:
yum install samba -y 安装samba服务
vim /etc/samba/smb.conf 编辑samba配置文件
workgroup = STAFF 修改工作组
[common] 共享组名
path = /common 共享组目录
hosts allow = 192.168.122.0/24 允许可以访问共享目录的网段
mkdir /common 创建共享目录
chcon -R -t samba_share_t /common/ 修改目录的安全上下文
firewall-cmd --add-service=samba 允许防火墙通过所有samba服务
firewall-cmd --add-service=samba --permanent 永远允许防火墙通过所有samba服务
yum install samba-client.x86_64 -y 下载samba客户端
useradd andy 本地创建andy用户
smbpasswd -a andy smb创建用户
redhat 设置密码
redhat 重复设置密码
systemctl restart smb 重新启动smb服务
systemctl enable smb 设置开机自启smb服务
system2配置如下:
yum install samba-client.x86_64 -y 下载samba客户端
smbclient -L //system1 -U andy%redhat 查看system1分享出来的针对用户andy的资源。
9.配置多用户 SMB 挂载,在 system1 共享通过 SMB 目录 /miscellaneous 满足以下要求:,共享名为 miscellaneous
共享目录 miscellaneous 只能被 rhce.com 域中的客户端使用,共享目录 miscellaneous 必须可以被浏览,用户 silene 必须能以读的方式访问此共享, 访问密码是 redhat,用户 akira 必须能以读写的方式访问此共享, 访问密码是 redhat,此共享永久挂载在 system2.rhce.com 上的 /mnt/multi 目录, 并使用用户 silene 作为认
证 任何用户可以通过用户 akira 来临时获取写的权限
system1配置如下:
mkdir /miscellaneous 创建目录
chcon -R -t samba_share_t /miscellaneous 修改目录的上下文
vim /etc/samba.conf 编辑samba配置文件
[miscellaneous] 共享目录名称
path = /miscellaneous 共享目录路径
hosts allow = 192.168.122.0/24 可允许访问共享目录的网段
writable = no 可允许修改目录路径
write list = akira 允许写入的用户 (默认是有读的权限)
chmod o+w /miscellaneous/ 修改其他人的目录权限
useradd silene 本地创建用户
echo redaht | passwd --stdin silene 配置密码
useradd akira 本地创建用户
echo redaht | passwd --stdin akira 配置密码
smbpasswd -a silene 配置smb用户
redhat
redhat
smbpasswd -a akira配置smb用户
redhat
redhat
systemctl restart smb 重新启动smb服务
systemctl enable smb 设置开机自启
system2配置如下:
vim /etc/fstab 配置开机自动挂载
//system1/miscellaneous /mnt/multi cifs defaults,username=silene,password=redhat,multiuser,sec=ntlmssp 0 0
yum install cifs-utils.x86_64 -y
mount -a 重新挂载
useradd tom1
ssh [email protected]
cifscreds add system1 -u silene 使用silene用户获取权限
10.配置 NFS 服务,在 system1 配置 NFS 服务,要求如下:,以只读的方式共享目录 /public 同时只能被 rhce.com 域中的系统访问,以读写的方式共享目录 /protected 能被 rhce.com 域中的系统访问,访问 /protected 需要通过 Kerberos 安全加密, 您可以使用下面 URL 提供的密钥,http://rhce.com/materials/nfs_server.keytab.,目录 /protected 应该包含名为 confidential 拥有人为 ldapuser11 的子目录,用户 ldapuser11 能以读写方式访问 /protected/confidential
mkdir /public 创建目录
systemctl start nfs-server 启动nfs服务
systemctl enable nfs-server 开启nfs开机自启
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" service name="nfs" accept‘ 防火墙放行192.168.122.0/24网段对nfs服务的访问
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" service name="nfs" accept‘ --permanent 永远放行
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" service name="rpc-bind" accept‘ 防火墙放行192.168.122.0/24网段对rpc-bind服务的访问
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" service name="rpc-bind" accept‘ --permanent 永远放行
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" service name="mountd" accept‘ 防火墙放行192.168.122.0/24网段对mountd服务的访问
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" service name="mountd" accept‘ --permanent 永远放行
vim /etc/exports 编辑exports文件
/public *(ro,sync) 共享目录(只读方式)
exportfs -arv 不用重启nfs服务,配置文件就会生效在客户端查看
mkdir /protected 创建目录
wget -O /etc/krb5.keytab http://rhce.com/materials/nfs_server.keytab 下载密钥
vim /etc/exports 编辑文件
/protected *(rw,sync,sec=krb5p) 绑定密钥
mkdir /protected/confidential 创建目录
vim /etc/sysconfig/nfs
RPCNFSDARGS="-V 4.2"
chcon -R -t public_content_t /protected/ 设置安全上下文
chown ldapuser11 /protected/confidential/ 修改目录的所有者为ldapuser11
systemctl restart nfs-server 重启服务
systemctl restart nfs-secure-server 重启服务
systemctl enable nfs-secure-server
11.挂载一个 NFS 共享在 system2 上挂载一个来自 system1.rhce.com 的 NFS 共享, 并符合下列要求:
/public 挂载在下面的目录上 /mnt/nfsmount,/protected 挂载在下面的目录上 /mnt/nfssecure 并使用安全的方式,密钥下载 URL 如下: http://rhce.com/materials/nfs_client.keytab. 用户 ldapusre11 能够在 /mnt/nfssecure/confidential 上创建文件,这些文件系统在系统启动时自动挂载
showmount -e system1 查询system1能挂载 的目录
mkdir /mnt/nfsmount 创建目录
vim /etc/fstab 编辑fstab文件
system1.rhce.com:/public /mnt/nfsmount nfs defaults 0 0
mount -a 重新挂载
df -hT 查看是否挂载成功
mkdir /mnt/nfssecure 创建目录
wget -O /etc/krb5.keytab http://rhce.com/materials/nfs_client.keytab
客户端重启服务
systemctl restart nfs-secure
systemctl enable nfs-secure
vim /etc/fstab
system1.rhce.com:/protected /mnt/nfssecure nfs defaults,v4.2,sec=krb5p 0 0
mount -a 重新挂载
df -hT 查看是否挂载成功
ssh [email protected] 远程连接
cd /mnt/nfssecure/confidential
touch 1 创建文件测试
12.配置 web 站点system1 上配置一个站点 http://system1.rhce.com 然后执行下述步骤:
从 http://rhce.com/materials/station.html下载文件,并且将文件重命名为 index.html 不要修改此文件的内容
将文件 index.html 拷贝到您的 web 服务器的 DocumentRoot 目录下来自于 rhce.com 域的客户端可以访问此 Web 服务来自于 my133t.org 域的客户端拒绝访问此 Web 服务
yum groupinstall web* -y 安装web服务
systemctl restart httpd 重启httpd服务
systemctl enable httpd 设置开机自启
vim /etc/httpd/conf/httpd.conf 编辑http配置文件
ServerName system1.rhce.com:80 更改服务站点
wget -O /var/www/html/index.html http://rhce.com/materials/station.html 下载station.html到/var/www/html
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" service name="http" accept‘ 防火墙策略放行http
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" service name="http" accept‘ --permanent 防火墙策略永远放行http
systemctl restart httpd 重启httpd
vim /etc/hosts 编辑hosts文件
192.168.122.100 system1.rhce.com
13.配置安全 web 服务为 站 点http://system1.rhce.com 配 置 TLS 加 密一 个 已 签 名 证 书 从http://rhce.com/materials/system1.crt获 取此 证 书 的 密 钥 从http://rhce.com/materials/system1.key 获 取此 证 书 的 签 名 授 权 信 息 从http://rhce.com/materials/domain11.crt 获取
cd /etc/httpd/conf 移动到conf目录
wget http://rhce.com/materials/system1.crt 下载crt
wget http://rhce.com/materials/system1.key 下载key
wget http://rhce.com/materials/domain11.crt 下载crt
cd /etc/httpd/conf.d/ 移动到conf.d目录
vim ssl.conf 编辑 ssl.com
SSLCertificateFile /etc/httpd/conf/system1.crt 修改
SSLCertificateKeyFile /etc/httpd/conf/system1.key 修改
SSLCertificateChainFile /etc/httpd/conf/domain11.crt 修改
systemctl restart httpd 重启httpd服务
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" service name="https" accept‘
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" service name="https" accept‘ --permanent
14.配置虚拟主机在 system1 上扩展您的 web 服务器,为站点 http://www..rhce.com 创建一个虚拟主机,然后
执行下述步骤:设置 DocumentRoot 为 /var/www/virtual从 http://rhce.com/materials/www.html,下载文件并重命名为 index.html 不要对文件 index.html 的内容做任何修改将文件 index.html 放到虚拟主机的 DocumentRoot 目录下
确保 andy 用户能够在 /var/www/virtual 目录下创建文件,注意:原始站点 http://system1.rhce.com 必须仍然能够访问, 名称服务器 rhce.com 提供对主机名 www.rhce.com 的域名解析
ping www.rhce.com
64 bytes from 192.168.122.100: icmp_seq=2 ttl=64 time=1.12 ms
vim /etc/hosts 编辑hosts文件
192.168.122.100 www.rhce.com 将IP对应域名加进去
mkdir /var/www/virtual 创建目录
wget -O /var/www/virtual/index.html http://rhgls.rhce.com/materials/www.html 下载www.html到/var/www/virtual/index.html
setfacl -m u:andy:rwx /var/www/virtual/ 针对andy用户对virtual目录设置可读可写可执行权限
cd /etc/httpd/conf.d/
cp /usr/share/doc/httpd-2.4.6/httpd-vhosts.comf vhost.conf
vim /vhost.conf
<VirtualHost www.rhce.com:80> 写进新的站点到虚拟主机里
DocumentRoot /var/www/virtual
Serv erName www.rhce.com
</VirtualHost>
<VirtualHost system1.rhce.com:80> 将原有的站点写到虚拟主机里
DocumentRoot /var/www/html
ServerName system1.rhce.com
</VirtualHost>
systemcat restart httpd
15.配置 web 内容的访问在您的 system1 上的 web 服务器的 DocumentRoot 目录下 创建一个名为 secret 的目录,
要求如下:从 http://rhce.com/materials/private.html 下载一个文件副本到这个目录,并且重命名为 index.html。
不要对这个文件的内容做任何修改。从 system1 上,任何人都可以浏览 secret 的内容, 但是从其它系统不能访问这个目录的内容
mkdir /var/www/html/secret/ 创建目录
mkdir /var/www/virtual/secret/ 创建目录
wget -O /var/www/html/secret/index.html http://rhgls.rhce.com/materials/private.html
wget -O /var/www/virtual/secret/index.html http://rhgls.rhce.com/materials/private.html
cd /etc/httpd/conf.d/
vim vhost.conf
<Directory "/var/www/html/secret">
ALLowOverride None
Require local
</Directory>
<Directory "/var/www/virtual/secret">
ALLowOverride None
Require local
</Directory>
systemctl restart htppd 重新启动httpd服务
curl -s www.rhce.com/secret/index.html 本机验证浏览
16.实现动态 Web 内容在 system1 上配置提供动态 Web 内容,要求如下:www.rhce.com
动态内容由名为 dynamic.rhce.com 的虚拟主机提供虚拟主机侦听在端口 8998
从 http://rhce.com/materials/webapp.wsgi 下载一个脚本,然后放在适当的位置, 无论如何不要求修改此文件的内容
客户端访问 http://dynamic.rhce.com:8998/ 时 应该接收到动态生成的 web 页面此 http://dynamic.rhce.com:8998/ 必须能被 rhce.com 域内的所有系统访问
ping dynamic.rhce.com dynamic
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" port port="8998" protocol="tcp" accept‘ --permanent
vim /etc/httpd/conf/httpd.conf
Listen 8998
vim /etc/httpd/conf.d/vhosts.conf
<VirtualHost dynamic.rhce.com:8998> 写进新的站点到虚拟主机里
DocumentRoot /var/www/html/yy
ServerName dynamic.rhce.com
</VirtualHost>
mkdir /var/www/html/yy
yum install mod_wsgi -y
wget -p /var/www/html/yy http://rhgls.rhce.com/materials/webapp.wsgi
vim vhosts.conf
WSGIScriptAlias / /var/www/html/yy/webapp.wsgi 添加一个
vim /etc/ssh/sshd_config 找到模板
yum install policycoreutils-python.x86_64 安装semanage 软件包
semanage port -a -t http_port_t -p tcp 8998 更改 上下文
systemctl restart httpd
17.创建一个脚本在 system1 上创建一个名为 /root/script 的脚本, 让其提供下列特性:当运行 /root/script foo,输出为 bar当运行 /root/script bar,输出为 foo,当没有任何参数或者参数不是 foo 或者 bar 时, 其错误输出产生以下的信息:
/root/script foo|bar,
vim /root/script 创建script文件
#!/bin/bash 此脚本使用/bin/bash来解释执行,只能放到第一行,如果后面还有#!,那么只能看成是注释。(#!是一个特殊的表示符,其后,跟着解释此脚本的shell路径。)
case $1 in
foo)
echo bar
;; 结束
bar)
echo foo
;; 结束
*)
echo ‘/root/script foo|bar‘ ;;
esac
chmod +x script
18.创建一个添加用户的脚本在 system1 上创建一个脚本,名为 /root/mkusers , 此脚本能实现为系统 system1 创建本地用户, 并且这些用户 的用户名来自一个包含用户名列表的文件。同时满足下列要求:此脚本要求提供一个参数,此参数就是包含用户名列表的文件如果没有提供参数,此脚本应该给出下面的提示信息 Usage: /root/mkusers 然后退出并
返回相应的值如果提供一个不存在的文件名,此脚本应该给出下面的提示信息 Input file not found 然
后退出并返回相应的值,创建的用户登录 shell 为 /bin/false,此脚本不需要为用户设置密码
您可以从下面的 URL 获取用户名列表作为测试用 http://rhce.com/materials/userlist
vim mkusers
#!/bin/bash
if [ $# -eq 0 ] ; then
echo "Usage: root/mkusers"
exit 1
fi
if [ ! -f $1 ] ; then
echo "Input file not found"
exit 1
fi
while read aa
do
useradd -s /bin/false $aa
done < $1
19.配置 iSCSI 服务端配置 system1 提供一个 iSCSI 服务 磁盘名为 iqn.2014-09.com.example.domain11:system1 ,
并符合下列要求:服务端口为 3260,使用 iscsi_vol 作其后端卷 其大小为 3G,此服务只能被 system2.rhce.com 访问
yum install target* -y 安装target
systemctl restart target
systemctl enable target
fdisk /dev/vda
创建一个3g的主分区
partprobe /dev/vda
targetcli
ls /
/backstores/block create iscsi_vol /dev/vda4 创建block
ls /
/iscsi create iqn.2014-09.com.example.domain11:system1 创建target
cd /iscsi iqn.2014-09.com.example.domain11:system1/tpg1/ 进入tpg1
acls/ create iqn.2014-09.com.example.domain11:xx 创建acls
ls /
luns/ create /backstores/block/iscsi_vol 创建luns
portals/ create 0.0.0.0 3260 绑定0.0.0.0可以访问
firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.200" port port="3260" protocol="tcp" accept‘ --permanent
20.配置 iSCSI 的客户端,配置 system2 使其能连接在 system1 的上提供的 iqn.2014-09.com.example.domain11:system1,并符合以下要求:iSCSI 设备在系统启动的期间自动加载
块设备 iSCSI 上包含一个大小为 1700 MiB 的分区,并格式化为 xfs,此分区挂载在 /mnt/data 上 同时在系统启动的期间自动挂载
yum install iscsi* -y 安装iscsi
vim /etc/iscsi/initiatorname.iscsi
改为system1ACL的值
systemctl restart iscsid 重启iscid
systemctl enable iscsid 开机自启
iscsiadm -m discovery -t st -p system1.rhce.com -l 发现
lsblk
fdisk /dev/sda
创建一个大小1700M的分区
mkfs.xfs /dev/sda1
vim /etc/fstab 编辑自动挂载
/dev/sda1 /mnt/data xfs defaults,_netdev 0 0
mkdir /mnt/data
mount -a
df -hT
21.配置一个数据库在 system1 上创建一个 MariaDB 数据库, 名为 Contacts ,并符合以下条件:
数 据 库 应 该 包 含 来 自 数 据 库 复 制 的 内 容 , 复 制 文 件 的 URL 为
http://rhce.com/materials/users.mdb 。数据库只能被 localhost 访问。
除了 root 用户, 此数据库只能被用户 Luigi 查询。 此用户密码为 redhat。
root 用户的密码为 redhat , 同时不允许空密码登录。
yum install mariadb-server -y 安装数据库
systemctl restart mariadb 启动数据库
systemctl enable mariadb 设置开机自启
mysql 进入数据库
show databases; 查询数据库
create database Contacts; 创建数据库
exit 退出
wget http://rhce.com/materials/users.mdb 下载
mysql 进入数据库
use Contacts; 登录数据库
source /root/users.mdb 导入表
show tables; 查看数据库的表
默认情况只能localhos访问
grant select on Contacts.* to [email protected]‘localhost‘ identified by ‘redhat‘; 设置Luigi用户访问数据库
set password=password(‘redaht‘); 设置密码
22.数据库查询,在系统 system1 上使用数据库 Contacts , 并使用相应的 SQL 查询以回答下列问题:
密码是 tangerine 的人的名字?有多少人的姓名是 John 同时居住在 Santa Clara?
mysql -uroot -predhat
use Contacts
show tables;
select * from name join pass where name.aid=pass.bid;考试换成英文题 会提示让填什么name
select * from name join loc where name.aid=loc.cid;
select * from name join loc where name.aid=loc.cid and firstname=‘John‘ and location=‘Santa Clara‘; 1 考试直接蒙1
原文地址:https://blog.51cto.com/13585598/2460414