一、開始
1、啟動rhcsa環境
2、點擊題目,看題
3、通過控制器來啟動所有虛擬機
控制器
打開后點start,然后ok
之后進入一個有classroom、servera、serverb(考試不一定叫這些名,但大差不差)什么之類的界面,點擊all全選,都啟動
二、做題
1、servera(考試的虛擬機不一定叫這個名)的題1
1.配置網絡,要求如下:
主機名: ? ?servera.lab.example.com
IP地址: ? ?172.25.250.10/24
網關: ? ? ?172.25.250.254
dns: ? ? ?172.25.250.220
配置網絡相關參數:
(1)啟動servera虛擬機
既然做servera的題,那自然啟動servera的虛擬機
打開控制器
點view,ok
之后選擇servera,然后再ok,就進入登錄servera的登錄指令頁面
輸入用戶和密碼,用戶為root、密碼一般為redhat
(2)ip a查看虛擬機的網卡名
這里開始正式做第一題
輸入ip a
這邊網卡顯示是eth0,記住名字
(3)查看是否有網絡連接(有)
nmcli connection show查看
有的話,就直接在這個上面修改,沒有的話則自己創建
這里有,則直接修改這個網絡連接的參數
(3')查看是否有網絡連接(無)
先記著ip a的網卡名,這里是eth0
然后輸入指令
nmcli connection add con-name (自己起名,如果考試有要求名字叫啥就寫這,一般建議直接和網卡名相同,即eth0)type ethernet ifname eth0(這里必須寫自己的網卡名!!!tab補齊!)?ipv4.method manual ipv4.addresses (ip地址)?ipv4.gateway (網關地址)?ipv4.dns (dns地址)
(4)配置網絡(nmtui圖形配置)
nmtui圖形配置(推薦)
上下鍵選擇,enter選中點擊
這里選擇Edit a connection
選已有的唯一網絡連接,點擊edit
這里的device一定要是剛剛ip a查看的網卡
選擇ipv4旁邊的Auto....,點進去選擇manual手動,再選擇旁邊的show
編輯填寫題目要求的ip地址、網關、dns,然后點擊下面的ok
之后點擊back回到主界面,再點擊quit即可
(4')配置網絡(命令配置)
nmcli connection modify 網絡連接名(tab補齊) ipv4.method manual ipv4.addresses (ip地址)?ipv4.gateway (網關地址)?ipv4.dns (dns地址)
(5)重啟
nmcli connection reload
nmcli connection up 網絡連接名字(tab補齊)
(6)檢查測試
ip a來看ip地址
route -n來看網關
cat /etc/resolv.conf來看dns
額外步驟——搞好ssh,方便從終端配置指令
進入ssh的配置文件
vim /etc/ssh/sshd_config
找到Permit開頭的root用戶登錄項,先復制(yy復制),然后粘貼(p粘貼)
復制粘貼后,去掉井號#,后面改成yes
wq退出保存后,重啟sshd
!!!注意!!!?
考完試做完題后把這個改回去!!!就是把復制的那一行直接全部刪掉!考試沒讓你開sshd!所以怕扣不必要的分!
搞完后回桌面終端試一下
ssh -l root 172.25.250.10
?登錄成功
配置主機名:
(1)hostnamectl
都復制粘貼,別自己手打,怕打錯扣不必要的分!
hostnamectl hostname servera.lab.example.com
改完后ctrl+d,然后再登錄一次ssh
ctrl+d
再登錄一次ssh
名字就變了
PS:
如果此條命令報錯,那就把hostname改成set-hostname,再試
hostnamectl set-hostname servera.lab.example.com
2、servera的題2
2.配置系統的軟件倉庫
YUM 的兩個存儲庫的地址分別是:?
http://content.example.com/rhel9.0/x86_64/dvd/BaseOS
http://content.example.com/rhel9.0/x86_64/dvd/AppStream
(1)先試試能不能訪問倉庫
不然的話就得和監考老師溝通了
復制考題的軟件倉庫地址,去虛擬機的瀏覽器搜
都能訪問則沒問題
(2)進入并創建所需的庫
進入
cd /etc/yum.repos.d/
這里邊就算有東西也不要刪
創建
vim rhel.repo
創建后配置
PS:
要是有說倉庫名字要求,那就修改中括號 [ ] 里邊的內容
要是有說要檢測gpg,那就把gpgcheck = 0的0修改成1,即gpgcheck = 1,并且后面還有加多一行gpgkey = 題目給的gpg鏈接地址
(3)測試
直接安裝autofs(因為后面題目也要用)來測試?
成功?
3、servera的題3
3.配置 SELinux
非標準端口 82 上運行的 WEB 服務器在提供內容時遇到問題。根據需要調試
并解決問題, 并使其滿足以下條件:?
web 服務器能夠提供 /var/www/html 中所有現有的 html 文件(注意:不要刪除或改動現有的文件內容)
Web 服務器通過 82 端口訪問
訪問:
? ? http://servera:82/test0.html 時可以顯示web內容為:?
? ? 172.25.250.10 servera.lab.example.com?
Web 服務器在系統啟動時自動啟動
(1)先檢查虛擬機裝沒裝web(httpd)
1)通過安裝命令檢查
dnf install httpd -y
顯示已安裝過就可以下一步了
?2)通過端口檢查
netstat -antlupe | grep 80
(2)修改端口
vim /etc/httpd/conf/httpd.conf
找到Listen行,將后面的80改成82即可
wq保存退出
(3)放通http新端口的SELinux
修改完后重啟時,http會被SELinux攔截,所以需要放通http
通過semanage port -l | grep http查看可以發現,http的82端口并沒有被放通
所以,我們要放通,就要添加82的端口
semanage port -a -t http_port_t -p tcp 82
這時再查看(semanage port -l | grep http)?
就能發現82已被添加,已經放通了
(4)設置開機自啟動,并啟動httpd
?設置開機自啟動
systemctl enable --now httpd
?再啟動httpd
systemctl start httpd
(5)檢查測試
查看82端口
netstat -antlupe | grep 82
已有,成功?
(6)設置訪問內容
echo "172.25.250.10 servera.lab.example.com" > /var/www/html/test0.html
(7)更改?
不更改訪問不了
chcon -t httpd_sys_content_t /var/www/html/ -R
(8)訪問測試?
使用curl來訪問
curl http://servera:82/test0.html
出現指定內容,代表訪問成功?
4、servera的題4
4.創建用戶
創建下列用戶、用戶組,并按要求完成設置:
組名為 sysmgrs
natasha 用戶的附屬組是 sysmgrs
harry 用戶的附屬組是 sysmgrs
john 用戶的 shell 是非交互式 shell,且不是 sysmgrs 組的成員
natasha、harry、john 的密碼是 redhat
(1)建立組
沒有指定id,則直接建立;有指定id,則-g
這里題目沒有指定,則直接創建
groupadd sysmgrs
(2)將natasha、harry歸類成附屬組
-g(小g)是主組,-G(大G)是附屬組
題目要求natasha、harry用戶都是sysmgrs的附屬組,所以:
useradd -G sysmgrs natasha
useradd -G sysmgrs harry
(3)處理john的非交互式與不是 sysmgrs 組的成員
useradd -s /sbin/nologin john
(4)設置三個用戶密碼
natasha、harry、john 的密碼是 redhat
echo redhat | passwd --stdin 用戶名
(5)測試檢查?
切換到john,切不了則成功
切換到natasha,并看其組
?harry,輸入密碼看是否是對的,并看其組
再切回natasha,輸入密碼看密碼正不正確(因為是從harry這登的)
ok,這樣測試就完畢,都成功,接下來逐一退出(exit)回到root
5、servera的題5
5.配置 cron 計劃任務
該作業每隔兩分鐘執行以下命令:
logger “hello rhcsa”, 以用戶 natasha 身份運行
(1)打開cron?
不然用不了
systemctl enable --now crond
(2)查看logger的絕對路徑??
重開一個終端窗口, 用which來查看
which logger
復制絕對路徑
(3) 創建natasha的cron任務
crontab -u natasha -e
進入后編輯,把剛剛的絕對路徑粘貼上去
wq退出保存
(4)確認檢查
cat /var/spool/cron/natasha
natasha打的時候能補全就代表成功?
6、servera的題6
6.按要求創建目錄
/home/managers 目錄屬于 sysmgrs 組
此目錄可以被 sysmgrs 的組成員讀取、寫入和訪問
但是其他任何用戶不具備這些權限。(不包括 root 用戶)
在/home/managers 目錄中創建的文件的所屬組自動變成sysmgrs組
(1)建立目錄
建立題目要的目錄/home/managers
mkdir -p /home/managers
?(2)將此目錄歸屬組
chgrp sysmgrs /home/managers/
(3) 編寫權限
chmod 2770 /home/managers/
7、?servera的題7
7.配置 NTP
配置 servera 作為 NTP 的客戶端,跟時間服務器 172.25.250.254 同步時間
(1)編輯chrony.conf?
進入/etc/chrony.conf
vim /etc/chrony.conf
進入后編輯
(2)開機自啟動chrony、重啟chrony
chrony后面有個d,記住
(3)檢查
chronyc來檢查同步時間
8、?servera的題8?
8.配置 autofs
配置 autofs,按照以下要求自動掛載遠程用戶的家目錄,要求如下:?
NFS 服務器 172.25.250.254 的共享目錄是/rhome,此文件系統包含為用戶
testuser 預配置的家目錄
testuser 的家目錄是 172.25.250.254:/rhome/testuser?
testuser 的家目錄應該自動掛載到/rhome 下的/rhome/testuser 家目錄允許用戶寫入
testuser 的密碼是 redhat
(1)安裝autofs
這步已經在測試軟件倉庫時做過了
(2)編輯auto.master
進入后,在這個位置編輯
(3)?編輯auto.rhome
退出保存后,再進入剛剛寫的那個子文件,即/etc/auto.rhome
?
編輯題目要的東西
(4)開機自啟動,重啟autofs
systemctl enable --now autofs
重啟
(5)檢查
切換到testuser用戶
切換后,df -h查看有沒有自動掛載
有則成功
?9、?servera的題9?
9.配置用戶賬戶
配置用戶賬戶 alex,用戶的 ID 為 1234,此用戶的密碼應當為 redhat.
簡單,直接做了,記得先把用戶切回來root
?10、?servera的題10?
10.查找文件
查找屬與 harry 用戶的所有文件,并拷貝到/root/findfiles 目錄
(1)先創建目錄
(2)查找harry的文件,并匯總到/root/findfiles
用find查找,-user按照用戶來找、-exec將權限都復制過去、cp復制
(3)查看
ls查看
?11、?servera的題11??
11.查找字符串
查找文件/usr/share/xml/iso-codes/iso_639_3.xml 中包含字符串 ng 的所有行。
并將所有這些行的內容放到文件/root/list 中,/root/list 不得包含空行
(1)grep來查找,并放入進/root/list
grep ng /usr/share/xml/iso-codes/iso_639_3.xml > /root/list
(2)查看
?12、?servera的題12??
12.創建歸檔
創建名為/root/backup.tar.gz 的 tar 包,用來壓縮/usr/local 目錄
(1)看清楚要求是什么格式的
要求歸檔格式:
gz —— zcf
bz2 —— jcf
xz —— Jcf
(2)對應格式來下載安裝對應的軟件包
就怕考試的虛擬機沒裝
都可以通過dnf search來查找,找到后復制包名再dnf install安裝即可
gz —— gzip包(dnf search gzip)
bz2 —— bzip2包(dnf search bzip2)
xz —— xz包(dnf search xz)
題目要求是gz,則我們安裝gzip的包
?
(3)壓縮歸檔
tar zcf /root/backup.tar.gz /usr/local
?(4)查看
通過file來查看
?13、?servera的題13(難)
13.創建容器鏡像
在servera上以用戶身份contsvc:
使用題目提供的 Containerfile,構建名為 watcher 的容器鏡像
Containerfile的位置為:
? ? http://servera:82/Containerfile
請勿更改 Containerfile 中的內容
?有鏡像才能運行容器
(1)安裝podman鏡像
安裝完后,可以用podman images來查看有多少個鏡像,鏡像相當于一個虛擬機
(2)ssh登錄servera上的用戶contsvc
(3)登錄倉庫地址
podman login utility.lab.example.com
(4)wget下載題目的地址
題目說:
Containerfile的位置為:
? ? http://servera:82/Containerfile
我們下載這個地址
下載完成
下完后,ls查看一下是否有
(5) build剛剛下載的東西
最后面的點. 代表當前路徑位置
記住!!!?
剛剛下載的東西在哪,那就在哪build!
(6)查看?
看一下是否有我們剛剛創建的東西?
podman images查看
有則成功?
(7)總結
總的來說就是先登錄,登錄后下載,下載后去build它即可
?14、?servera的題14(難)
14.將容器配置為服務
在 servera 創建一個無根容器以作為 systemd 服務自動啟動,要求如下:
容器名稱為 rh134
容器使用上題創建的 watcher 鏡像
容器僅為現有用戶 contsvc 作為 systemd 服務運行
服務名為 container-rh134
系統重新啟動后,容器會自動啟動
本地目錄 /opt/rh124 附加到容器 /opt/level1 目錄
本地目錄 /opt/rh134 附加到容器 /opt/level2 目錄
如果服務工作正常,則放入本地 /opt/rh124 或 /opt/rh134 目錄的文件都將置入
容器的 /opt/level1 和 /opt/level2 目錄
(1)先建立所需文件
題目要求:
本地目錄 /opt/rh124 附加到容器 /opt/level1 目錄
本地目錄 /opt/rh134 附加到容器 /opt/level2 目 錄
那就建立 /opt/rh124和 /opt/rh134,記得切回root建立
(2)更改屬性
更改剛剛創建的兩個文件的屬性
chown contsvc.contsvc /opt/rh124/ /opt/rh134/
(3)切換回指定用戶contsvc
ssh來登錄
(4)切換后運行鏡像
在用戶contsvc下運行鏡像watcher,并按題目要求進行相應的掛載
podman run -d --name rh134 -v /opt/rh124:/opt/level1 -v /opt/rh134:/opt/level2 watcher:latest
run —— 運行
--name rh134 —— 題目指定名字
-v —— 掛載
: —— 掛載到...
(5)測試一下
用root在/opt/rh124和 /opt/rh134下分別建立a和b兩個文件來測試
之后再登錄回contsvc(ssh登錄)
運行podman,
進入容器時是可以看到剛剛建立的a和b的
?
??注意??
測試所建立的文件在測試完后要刪除!!!怕扣不必要的分
切回root再刪
(6)將rh134變為Systemd的啟動方式
先重回contsvc(ssh登錄)
再建立并進入
將rh134變為Systemd的啟動方式
這樣做好后, 把我們剛剛那個給關了
(7)取得授權
loginctl enable-linger contsvc
(8)設置自啟動
systemctl --user enable --now container-rh134.service
(9)檢查
podman ps查看一下
這樣就成功了,我們reboot試一下,如果重啟后還在,那就成功
再contsvc下reboot一次,期間等待些許時間
等待些許時間后,我們退出contsvc,在root下再次reboot
再次等待些許時間
之后我們重登servera(ssh)
再登contsvc(ssh)
再用podman ps查看,發現有就是成功
?15、?servera的題15(此題可能有,可能沒有)
15.執行程序
主機上有一個程序 rhcsa,
要求運行該程序,屏幕則顯示 hello rhcsa
(1)進入
(2)編輯
wq退出保存
(3)授予權限
(4)測試
完成
?16、?servera的題16
16.系統用戶密碼的有效期
在系統中新增的用戶,要求 25 天后密碼自動失效,密碼過期前 5 天警告
(1)進入/login.defs
(2)找到并修改
找到PASS_...開頭的行
按題目要求修改
最大天數改成25、警告天數改成5
wq退出保存,就完成了
17、?servera的題17
17.配置 sudo 提權
為你的系統配置 sudo 提權,具體要求如下:
- 創建 user1 用戶,設置用戶密碼為 test。
- 授權 user1 組中的任何用戶都可以無密碼執行管理員命令。
(1)建立user1
(2)修改密碼為test
(3)授權user1組中的任何用戶都可以無密碼執行管理員命令
visudo進入
在此位置添加這些
wq保存
注意:user1前面的%代表user1組(即用戶組);而沒有百分號%則就表示用戶user1,這個注意一下
(4)測試
切換到user1
sudo id來查看一下
退出user1(exit)
至此,servera的題搞完
!!!注意注意!!!
考完試要把測試或者為了方便所用的操作刪干凈,避免扣分!
如:最開始把servera的sshd文件里的PermitRootLogin改成yes了,考完要把它改回去!!!