RHCSA
servera
1. 按要求配置网络
在 servera 上配置网络,要求如下:
- 主机名:servera.lab.example.com
- IP 地址: 172.25.250.10/24
- 网关: 172.25.250.1
- DNS: 172.25.250.1
登录servera虚拟机->输入root账号密码->输入init 5
进入图形化界面->再次登录root账号->系统设置中配置网络。
#物理终端窗口远程登录servera
ssh root@172.25.250.10
#输入密码
hostnamectl set-hostname servera.lab.example.com
exec bash
hostname
2. 给系统配置默认的存储库配置
给系统配置默认存储库,要求如下:
- YUM 的两个存储库的地址分别是:
http://content.example.com/rhel8.0/x86_64/dvd/BaseOS
http://content.example.com/rhel8.0/x86_64/dvd/AppStream
cd /etc/yum.repos.d
ls
vim rhel.repo
[a]
name=BaseOS
baseurl=http://content.example.com/rhel8.0/x86_64/dvd/BaseOS
gpgcheck=0
enabled=1
[b]
name=AppStream
baseurl=http://content.example.com/rhel8.0/x86_64/dvd/AppStream
gpgcheck=0
enabled=1
yum makecache
3. 调试 SELinux
非标准端口 82 上运行的 WEB 服务器在提供内容时遇到问题。根据需要调试并解决问题,并使其满足以下条件:
- 系统上的 web 服务器能够提供/var/www/html中所有现在有的html文件(注意:不要删除或者其他方式改动现有的文件内容)
- Web 服务器通过 82 端口访问
- Web 服务器在系统启动时自动启动
最初,浏览器访问172.25.250.10:82加载失败
cd /var/www/html
ls
#防火墙放行82端口
firewall-cmd --add-port=82/tcp
firewall-cmd --add-port=82/tcp --permanent
#semanage放行82端口
semanage port -l | grep http
semanage port -a -t http_port_t -p tcp 82
#开机自启
systemctl start httpd
systemctl enable httpd
至此,除访问file2还有问题,其余均无问题
ll -Z
#临时修改
chcon -t httpd_sys_content_t file2
restorecon -Rv file2
4. 创建用户
创建下列用户、用户组,并按要求完成设置:
- 组名为sysmgrs
- natasha 用户的附属组是 sysmgrs
- harry 用户的附属组是 sysmgrs
- jhon 用户的 shell 是非交互式 shell,且不是 sysmgrs 组的成员
- natasha、harry、jhon 的密码是 redhat
groupadd sysmgrs
useradd -G sysmgrs natasha
useradd -G sysmgrs harry
useradd -s /sbin/nologin jhon
for i in natasha harry jhon;do echo redhat | passwd --stdin $i;done
5. 配置 crontab
配置 cron 作业,该作业每隔 2 分钟运行并执行以下命令:
logger “EX200 in progress”,以用户natasha身份运行
crontab -e -u natasha
*/2 * * * * logger "EX200 in progress"
crontab -l -u natasha
tail -f /var/log/cron
配置 cron 作业,该作业每天 14 点 23 分运行并执行以下命令:
logger “EX200 in progress”,以用户harry身份运行
crontab -e -u harry
23 14 * * * logger "EX200 in progress"
crontab -l -u harry
tail -f /var/log/cron
6. 按要求创建目录
创建具有特殊权限的目录/home/managers,要求如下:
- /home/managers目录属于sysmgrs组
- 此目录可以被sysmgrs的组成员读取、写入和访问,但是其他任何用户不具备这些权限。(不包括 root 用户)
- 在/home/managers 目录中创建的文件的所属组自动变成 sysmgrs 组。
mkdir /home/managers
chgrp sysmgrs /home/managers
ll /home/managers
chmod 2770 /home/managers
ll /home/managers
7. 配置 NTP
配置servera作为NTP的客户端,跟时间服务器172.25.250.250同步时间。
systemctl status chronyd
vim /etc/chronyd.conf
systemctl restart chronyd
systemctl enable chronyd
chronyc sources
8. 配置 autofs
配置 autofs,按照以下要求自动挂载远程用户的家目录,要求如下:
- content.example.com (172.16.1.250)NFS 导出 /rhome 到您的系统。
- 此文件系统包含为用户user1预配置的主目录user1的主目录是:workstation.lab.example.com:/rhome/user1
- user1的主目录应自动挂载到本地/rhome下的 /rhome/user1
- 主目录必须可供其用户写入
- user1的密码是 redhat
yum install autofs -y
vim /etc/auto.master
vim /etc/auto.nfs
systemctl restart autofs
systemctl start autofs
systemctl enable autofs
ssh user1@127.0.0.1
df -Th
exit
9. 配置/var/tmp/fstab 权限
配置文件权限,将文件/etc/fstab复制到 /var/tmp/fstab。
配置 /var/tmp/fstab 文件的权限以满足如下条件:
- /var/tmp/fstab属于root用户和root组
- /var/tmp/fstab不能被任何人执行
- 用户natasha有读写权限
- 用户harry没有读写权限
- 所有其他用户(当前或者未来)能够读取/var/tmp/fstab
cp -a /etc/fstab /var/tmp/fstab
ll /var/tmp/fstab
setfacl -m u:natasha:rw- /var/tmp/fstab
setfacl -m u:harry:--- /var/tmp/fstab
getfacl /var/tmp/fstab
10. 配置用户账户
配置用户manalo,其用户ID为3533。此用户的密码应当为redhat
useradd -u 3533 manalo
echo redhat | passwd --stdin manalo
11. 查找文件
查找属 jacques用户所属的文件,并拷贝到/root/findfiles目录。
mkdir /root/findfiles
cp -a `find / -user jacques` /root/findfiles
12. 查找字符串
查找文件/usr/share/xml/iso-codes/iso_639_3.xml中包含字符串ng的所有行。并将所有这些行的内容放到文件/root/list 中,/root/list不得包含空行。
grep ng /usr/share/xml/iso-codes/iso_639_3.xml > /root/list
13. 创建归档
创建一个名为/root/backup.tar.gz的tar包,
采用gzip压缩方式,用来压缩/usr/local目录。
tar -cvzf /root/backup.tar.gz /usr/local
file /root/backup.tar.gz
创建一个名为 /root/backup.tar.bz 的 tar 包,
采用 bzip2 压缩方式,用来压缩 /usr/local 目录。
tar -cvjf /root/backup.tar.bz /usr/local
file /root/backup.tar.bz
14. 容器创建
在创建容器前,您需要成功登陆到容器注册服务器。按照以下要求创建容器(考试查看重要信息配置获取:①注册服务器registry.network.example.com②访问注册服务器用户名ahdifu密码redhat)
- 容器管理用户为eldorado(以考试要求为准,如果没有则需要创建)
- 使用registry.network.example.com/rsyslog镜像
- 创建一个名为logserver的容器,设置容器开机自启
15. 容器持久化存储
- 利用注册服务器上的rsyslog镜像,创建一个名为logserver的容器。面向eldorado用户,配置一个systemd服务。
- 该服务命名为container-logserver,并在系统重启时自动启动,无需干预将服务配置为在启动时自动将/home/eldorado/container_jorunal挂载到容器中的/var/log/journal下
- 在容器中执行命令
logger -p authpriv.info “This is an RHCSA exam”
#查看是否有这个用户
id eldorado
#题目要求以eldorado用户身份操作
ssh eldorado@127.0.0.1
#登陆注册服务器
podman login registry.network.example.com
podman search registry.network.example.com/rsyslog
podman pull registry.network.example.com/rsyslog
#查看镜像是否下载好
podman images
#创建本地目录
mkdir /home/eldorado/container_jorunal
#创建容器 映射,-v持久化,-Z代表selinux,/bin/bash交互式
podman run -itd --name=logserver -v /home/eldorado/container_jorunal:/var/log/journal:Z registry.network.example.com/rsyslog /bin/bash
podman ps
#设置开机自启
mkdir -p .config/systemd/user
cd !$
#刷新配置
podman generate systemd --name logserver --files --new
systemctl --user daemon-reload
systemctl --user status container-logserver.service
#强制删除podman rm -f logserver或用以下两条命令
podman stop logserver
podman rm logserver
podman ps -a
systemctl --user start container-logserver.service
podman ps
systemctl --user enable container-logserver.service
#后台逗留
loginctl enable-linger eldorado
loginctl show-user eldorado
podman exec -it logserver /bin/bash
logger -p authpriv.info “This is an RHCSA exam”
exit
reboot
随机题(七选一)
1.容器持久化
- 配置systemd-journald服务,要求永久保留日志数据。
- 将主机/var/log/journal目录及子目录中的*.journal文件复制到/home/eldorado/container-journal目录中
- 将容器应用启动时自动将/home/eldorado/container_journal目录挂载到容器中的/var/log/journal下面。
ssh eldorado@127.0.0.1
#登陆注册服务器
podman login registry.network.example.com
podman search regis