RHCE認證考前輔導


一:Linux認證題庫詳細說明

注意事項

(1) RHCSA上午2.5小時,RHCE下午3.5小時,考生需對題目非常熟練。

(2) 5樣東西必帶(身份證、1支黑色水筆、常用郵箱、姓名拼音、聰明的腦袋)。

(3) 考試的時候有3台機;1台物理機用來看題目/啟動/關閉/重啟虛擬機,不要動物理機上的任何配置;2台虛擬機用來考試的,所有的操作必需在虛擬機中完成。

(4) 不要嘗試SSH到其它人的機器,如果你的機器連過別人的機器,或者被別人連過,這2個人視為作弊。

(5) 考試題目可以選擇簡體中文,但是建議中英文切換着看,有些地方翻譯的不嚴謹,且中文斷句上有問題,某些地方少個逗號意思就變了。

(6) 總分都是300分,>=210分成績就算通過考試。

(7) 考試中如有不清楚請及時與考官聯系。

(8) 考試時一定要看清楚是否要求兩台虛擬機都要配置。

(9) 所有操作都設置為永久生效,意味着重啟系統還是生效。

(10)所有的服務既要start,同時也記得要enable。

(11)所有的掛載要寫到/etc/fstab里。

(12)本題庫只作為參考,考試中可能名字不一樣,因此需要大家靈活使用。

(13)做完每一題都檢查一下,看看自己做的對不對,那么怎么檢查?是一個問題,這些在下面的題庫中都有哈。

2017.05.28

二、RHCSA考點

1) 網絡與系統安全:

配置網絡

SElinux

改密碼,內核升級

2) 基本操作(用戶與組/目錄和權限):

用戶

目錄,權限,查找文件,目錄壓縮

計划任務

文字處理

3) 磁盤分區與卷管理:

lvm擴容,swap,lvm創建

4) 軟件安裝與配置:

yum

ntp

ldap

autofs

 

三、RHCSA題庫答案

下面我們來模擬RHCSA考試,首先在foundation上將實驗環境重置:  

  1 [root@localhost ~]#  rht-vmctl fullreset desktop        #重置虛擬機desktop

一台虛擬機system1,網絡環境為 desktopX.example.com( 172.25.X.0/24),有一個禁止網絡 test.com (172.10.0.0/24)。您可以通過物理機 ssh 到兩台虛擬機上進行操作。

您沒有物理機的 root 權限。考試服務器為 classroom.example.com(172.25.254.254/24)。

建議大家遠程過去做

image

記得加上-X,表示可以彈出圖形化界面(后面配置ldap時需要用到)。

題目0 破解密碼

A 重置虛擬機的Root 密碼,設置為redhat。

B 設置 system1 的網絡和主機名

你的虛擬機的網絡應該按照以下要求配置:

  1 *	Hostname:desktopX.example.com
  2 *	IP address:172.25.x.10
  3 *	Netmask:255.255.255.0
  4 *	Gateway:172.25.x.254
  5 *	Name server:172.25.254.254
  6 

參考步驟

  1 破解密碼:
  2 (1)開機,快速的按上下鍵,選擇第一個
  3 (2)按下字母e
  4 (3)找到linux16開頭的行
  5 (4)到該行的最后,刪除到ro
  6 (5)把ro 改成 rw rd.break
  7 (6)ctrl+x
  8 (7)chroot /sysroot/
  9 (8)這時就可以修改root密碼了
 10 passwd root
 11 (9) SElinux開啟時必須需要創建,重打selinux標簽,如果沒這步,系統起不來
 12 touch /.autorelabel
 13 (10)exit
 14 (11)reboot
 15 網絡和主機名:
 16 (1)hostnamectl set-hostname serverN.example.com
 17 (2)vim /etc/sysconfig/network-scripts/ifcfg-eth0
 18 DEVICE=eth0
 19 BOOTPROTO=none
 20 ONBOOT=yes
 21 TYPE=Ethernet
 22 IPADDR1=172.25.0.10
 23 PREFIX1=24
 24 GATEWAY1=172.25.0.254
 25 DNS1=172.25.254.254
 26 (3)systemctl restart network
 27 

模擬考試環境

下面我們模擬考試環境,破解desktop0的密碼。
破解密碼:

(1)開機,快速的按上下鍵,選擇第一個

image

(2)按下字母e
(3)找到linux16開頭的行

image

(4)到該行的最后,刪除到ro
(5)把ro 改成 rw rd.break
(6)ctrl+x     
(7)chroot /sysroot/,這里將文件系統切換到真正的根上面,可以看到提示符變成了“sh-4.2#”。


image

(8)這時就可以修改root密碼了

  1 passwd root

image

(9)重打selinux標簽,如果沒這步,系統起不來

  1 touch /.autorelabel


(10)exit
(11)reboot

image

在實驗環境中虛擬機是以DHCP的方式獲得IP的,因此在本實驗環境通過下面方法來修改IP。在考試中需要看清楚題目的要求的IP和網關和DNS,然后再修改網絡配置,評分時會登陸你的虛擬機,IP不對將無法評分。

  1 (1)ip addr show       #查看IP地址與子網掩碼並記錄下來
  2 (2)route              #查看網關並記錄下來
  3 (3)cat /etc/resolv.conf   #查看DNS並記錄下來
  4 (4)hostname           #查看主機名


image

(5)然后寫到配置文件中

  1 vim /etc/sysconfig/network-scripts/ifcfg-eth0
  2 DEVICE=eth0
  3 BOOTPROTO=none
  4 ONBOOT=yes
  5 TYPE=Ethernet
  6 IPADDR1=172.25.0.10
  7 PREFIX1=24
  8 GATEWAY1=172.25.0.254
  9 DNS1=172.25.254.254
 10 

(6)重啟網絡

  1 systemctl restart network

 

 

注意事項
⦁    這題做成功沒分,沒做成功全部為0分。
⦁    這里改密碼后要記得touch /.autorelabel,這里單詞經常有同學寫錯的哈。

 

題目1 selinux


保證系統SElinux運行在 enforcing 狀態.
參考步驟

  1 (1)vim /etc/selinux/config
  2        SELINUX=enforcing
  3  (2)setenforce 1
  4  (3)getenforce

模擬考試環境


(1)虛擬機配置selinux后是這樣的

image

注意事項
⦁    setenforce臨時生效,其中1為Enforcing狀態selinux表示是開啟的,0為Permissive狀態表示selinux是關閉的。
⦁    /etc/selinux/conf永久生效。

 

 

題目2 YUM源


配置你的本地默認 YUM 倉庫指向: http://classroom.example.com/content/rhel7.0/x86_64/dvd/   (考試環境服務器的地址)

參考步驟

  1 (1)[root@localhost ~]#  yum-config-manager --add-repo=http://classroom.example.com/content/rhel7.0/x86_64/dvd/ --enable --save
  2 (2)[root@localhost ~]# echo "gpgcheck=0">> /etc/yum.repos.d/classroom.example.com_content_rhel7.0_x86_64_dvd_.repo
  3 (3)[root@localhost ~]#  yum repolist
  4 


模擬考試環境

(1)我們先將原來的/etc/yum.repos.d/*.repo刪除

image

(2)通過yum-config-manager命令來自動生成,可以看到紫色部分的是自動生成到文件里的。

image

(3)但這里還少一條gpgcheck=0,通過echo寫進去。

image

這里的>>是追加到剛剛創建的.repo文件中
(4)使用yum clean all清除原來的緩存

image

(5)使用yum repolist查看yum源的包情況,可以看到有4305個包
 

image

注意事項
⦁    yum源的配置文件必須是在/etc/yum.repos.d目錄下,並且是以.repo結尾的文件,這里經常有同學不注意的;yum源語法格式如下:
[名字]
name=顯示的名字
baseurl=基於哪個yum源
例如基於http的為http://classroom.example.com/content/rhel7.0/x86_64/dvd/;基於本地ISO文件的為file:///mnt/iso(此時iso是掛載在/mnt/iso上的)。
enabled=是否啟用這個yum源,1為啟用,0為不啟用
gpgcheck=是否驗證yum源的合法性,1為驗證,0為不驗證

上面5條即為最基本的YUM源配置。

 

題目3 擴容LVM


調整你的本地邏輯卷 lvm1 及其文件系統的大小為 770MiB。
A 確保文件系統當中已存在的內容不能被損壞。注意:實際配置的大小可能會出現誤差,只要在 730MiB 與 805MiB之間都是允許的。
B 使其正常掛接的目錄不改變,並且其文件系統完整。
參考步驟

  1 (1)[root@localhost ~]#  lvextend -L 700M /dev/vg1/lv1
  2 (2)[root@localhost ~]#  resize2fs /dev/vg1/lv1
  3 


模擬考試環境


這里我們模擬考試環境,自己先創建一個500M的lvm1,然后掛載給/mnt/lvm1,然后再開始lvm的擴容。
(1) 使用fdisk進行分區,n表示創建分區,p創建一個主分區,1創建的是分區1,+1G分區容量為1G。

image

(2) 創建完后,p查看分區信息,可以看到多了一個/dev/vdb1的分區,w保存退出。

image

(3) 查看剛剛的分區是否生效,如果沒有/dev/vdb1出來,可用partprobe刷新分區信息。

image

(4) 創建lvm的順序為pv-vg-lv也就是物理卷-卷組-邏輯卷,這里先創建pv

image

(5) 創建vg

image

(6) 創建lv,-L指定創建的大小為500M,-n指定lv的名字為lvm1

image

(7) 查看lvm,創建了pv可用pvs來查看,對應的命令為pvs/vgs/lvs,這里可以看到lvm1屬於vg1並且lvm1為500M

image

(8) 創建了lvm后我們要使用這個塊設備,也就是掛載,但掛載前需要將它格式化為文件系統,這里我們將它格式化為ext4

image

(9) 創建掛載目錄並掛載lvm,這里/dev/mapper/vg1-lvm1與/dev/vg1/lvm1lvm都表示這個lvm。

image

(10)通過df -TH查看掛載結果。

image

------------------------OK,以上為模擬考試環境的步驟,下面開始答題------------------------------


題目說調整你的本地邏輯卷 lvm1 及其文件系統的大小為 770MiB。確保文件系統當中已存在的內容不能被損壞。這里我們的答題思路是這樣的先擴容lvm再擴容文件系統。
(1)通過vgs查看vg還有多少容量,可以看到還有520M。

image

(2)使用lvextend來擴容lv,這里它原來的容量為500M,使用-L將容量擴容到700M,也就是說添加了200M。

image

(3)用lvs查看擴容結果。

image

(3)用resize2fs擴容ext的文件系統;如果文件系統為xfs則用xfs_growfs來擴容文件系統,XFS不支持縮小,只支持擴大。

image

(4)通過df -TH查看擴容結果,可以看到從500M變成了703M。

image

注意事項
(1)如果創建錯了,可參考下列步驟刪除,創建是這樣:fdisk-pv-vg-lv-mkfs-mount,刪除的話反過來操作。

image

image

 

題目4 用戶與組


按照以下要求創建用戶,組,及用戶與組的關系
A 新建一個名為 adminuser 的組,組 id 為 40000
B 新建一個名為 natasha 的用戶,並將 adminuser 作為其附屬組
C 新建一個名為 harry 的用戶,也將 adminuser 作為其附屬組
D 新建一個名為 sarah 的用戶,其不屬於 adminuser 組,並將其 shell 設置為不可登錄 shell
E natasha、harry和sarah三用戶的密碼均設置為 glegunge
參考步驟

  1 [root@localhost ~]#   groupadd -g 40000 adminuser
  2 [root@localhost ~]#   useradd -G adminuser natasha
  3 [root@localhost ~]#   useradd -G adminuser harry
  4 [root@localhost ~]#   useradd -s /sbin/nologin sarah
  5 [root@localhost ~]#   cat /etc/passwd
  6 [root@localhost ~]#   passwd natasha
  7 [root@localhost ~]#   passwd harry
  8 [root@localhost ~]#   passwd sarah


模擬考試環境

注意事項


題目5 文件權限


復制文件/etc/fstab到/var/tmp目錄中,並按以下要求配置/var/tmp/fstab 文件的權限:
A 文件/var/tmp/fstab 的所屬人為 root
B 文件/var/tmp/fstab 的所屬組為 root
C 文件/var/tmp/fstab 對任何人均沒有執行權限
D 用戶 natasha 對文件/var/tmp/fstab 有讀和寫的權限
E 用戶 harry 對文件/var/tmp/fstab 既不能讀也不能寫
F 所有其他用戶( 包換當前用戶及未來創建的用戶)對文件/var/tmp/fstab 都有讀的權限

參考步驟

  1 [root@localhost ~]# 	cp /etc/fstab /var/tmp/
  2 [root@localhost ~]# 	chown root /var/tmp/fstab 
  3 [root@localhost ~]# 	chgrp root /var/tmp/fstab
  4 [root@localhost ~]# 	chmod -x /var/tmp/fstab
  5 [root@localhost ~]# 	setfacl -m u:natasha:rw /var/tmp/fstab
  6 [root@localhost ~]# 	setfacl -m u:harry:-- /var/tmp/fstab
  7 [root@localhost ~]# 	chmod o+r /var/tmp/fstab
  8 

 

模擬考試環境


(1)將/etc/fstab復制到/var/tmp目錄下,通過getfacl查看此文件的權限情況

image

(2)修改所屬者/所屬組為root

image

(3)設置任何人都沒有執行權限.

image

(4)使用setfacl設置單個用戶對此文件的權限,-m表示修改,格式為g/u/o:user:rwx,g表示組,u表示單個用戶,o表示其它人

image

(5)設置所有用戶都有讀的權限

image

(6)查看配置結果,可以看到
所屬者為root
所屬組為root
用戶natasha的權限是可讀可寫
用戶harry沒有任何權限
其它人只有計的權限
所有人都沒有執行的權限

image

 

注意事項

 

 

題目6 crontab


對 natasha 用戶配置計划任務,要求在本地時間的每天 14:23 分執行以下命令

  1 [root@localhost ~]#  /bin/echo “hi uplooking”


參考步驟

  1 [root@localhost ~]#     crontab -e -u natasha
  2 [root@localhost ~]#     crontab -l -u natasha


模擬考試環境


注意事項


⦁    crontab的格式為:
23 14  *  *  *  /bin/echo "hi uplooking"
對應:分 時 日 月 年

 

題目7 目錄權限


/home 目錄下創建子目錄名為 admins,按以下要求設置權限:
A   /home/admins 的所屬組為 adminuser
B  該目錄對 adminuser 組成員可讀可寫可訪問,但對其他用戶沒有任何權限( root 帳戶不 受該限制)
C /home/admins 目錄下所創建的文件的所屬組自動會被設置為 adminuser
參考步驟

  1 [root@localhost ~]#     chgrp adminuser /home/admins
  2 [root@localhost ~]#     chmod g=rwx /home/admins
  3 [root@localhost ~]#     chmod o= /home/admins
  4 [root@localhost ~]#     chmod g+s /home/admins
  5 [root@localhost ~]#     ll -d /home/admins

模擬考試環境
(1)題目說所屬組是adminuser,於是要先創建adminuser用戶

  1 [root@desktop0 tmp]# useradd adminuser 
  2 

image

(2)進到/home目錄下創建admin目錄,然后查看權限情況,可以看到默認的所屬者和所屬組是root

image

(3)修改所屬組為adminuser

image

(4)將所屬組的權限改為可讀可寫可執行,其它人沒有任何權限

image

(5)設置g+s將所創建的文件的所屬組自動會被設置為 adminuser

image

(6)查看結果,可以看到admins目錄的所屬組為adminuser,並且權限為rwx,其它人的權限為---,在所屬組那里的x位置顯示的是s。

image

(7)進入admins目錄,創建一個文件,可以看到所屬組自動變為adminuser

image

 

注意事項


 

題目8 更新內核


按以下要求更新系統的內核
A 新內核的 RPM 包在http://classroom.example.com/content/rhel7.0/x86_64/errata/Packages
B 重新重啟時,會默認以新內核啟動系統。原始的內核將繼續可用。
參考步驟

  1 [root@localhost ~]# 	wget http://classroom.example.com/content/rhel7.0/x86_64/errata/Packages/kernel-3.10.0-123.1.2.el7.x86_64.rpm
  2 [root@localhost ~]# 	uname -r
  3 [root@localhost ~]# 	rpm -ivh kernel-3.10.0-123.1.2.el7.x86_64.rpm
  4 [root@localhost ~]# 	reboot
  5 [root@localhost ~]# 	uname –r
  6 


模擬考試環境

⦁    首先SSH到虛擬機里面,這里-X表示可以打開圖形化工具

image

⦁    然后打開firefox瀏覽器,將安裝包的下載路徑復制出來

image

⦁    接着wget剛剛復制的路徑,將安裝包下載到當前目錄

image

⦁    查看操作系統版本

image

⦁    安裝新的內核包,然后重啟

image

 

注意事項


⦁    如果安裝不成功,可用rpm -ivh --force表示強制安裝的參數

 

 

題目8 ldap


在 classroom.example.com    上已部署了一台 LDAP 認證服務器,按以下要求配置你的系統
加入到該 LDAP 服務中,並使用 Kerberos 認證用戶密碼
該 LDAP 認證服務的Base DN為:dc=example,dc=com .   
該 LDAP 認證服務的LADP Server為 :classroom.example.com
該認證服務的 Kerbros Realm 為:EXAMPLE.COM
該認證服務的 Kerbros KDC為:classroom.example.com   
該認證服務的 Kerbros Admin Server為:classroom.example.com
認證的會話連接需要被加密,證書的下載地址為  http://classroom.example.com/pub/example-ca.crt

參考步驟

  1 [root@localhost ~]# 	yum install -y authconfig-gtk sssd krb*
  2 [root@localhost ~]# 	authconfig-gtk
  3 [root@localhost ~]# 	getent passwd ldapuser0
  4 


模擬考試環境


(1)先裝包,題目說要加到LDAP服務器,進行kerbros認證。sssd(訪問多種驗證服務器,如LDAP,Kerberos等,並提供授權)  authconfig-gtk(圖形化配置客戶端)  krb5-workstation(Kerberos客戶端軟件)

image

(2)通過SSH登陸,加上-X表示可以打開圖形化工具

image

(4)加入LDAP並進行kerberos認證,用戶信息在LDAP,密碼認證在Kerberos。下面這些根據題目給出的信息填寫即可,注意不要寫錯哦。
1 User  Account  database:LDAP
2 LDAP  Search  Base  DN:基准DN,指定LDAP search的起始DN,即從哪個DN下開始搜索
3 LDAP  Server:LDAP服務器域名
4 鈎上表示使用加密
5 Authentication  Method:Kerberos  password
6 Realm:Kerberos域(必須大寫)
7 KDCs:鑰匙分發中心/AD地址
8 Admin  Servers:Kerberos管理服務器地址
9 證書路徑

  image

image

(5)getent  passwd  用戶名(從passwd庫中得到賬號信息;支持AD、NIS等用戶賬號)

image

(6)切換到ldapuserX檢查一下剛剛的配置是否成功,可以看到切換用戶成功。但沒有家目錄,這個問題在下一題可以解決。

image

注意事項

 


題目9 autofs


配置autofs自動掛載LDAP用戶的家目錄,如下要求:

A classroom.example.com使用NFS共享了/home/guests給你的系統。這個文件系統包含了預先設置好的用戶ldapuserX的家目錄

B ldapuserX的家目錄是classroom.example.com:/home/guests/ldapuserX

C ldapuserX的家目錄應該自動掛載到本地的/home/guests/ldapuserX家目錄必須對用戶具有可寫權限

D ldapuserX的密碼是’kerberos’


參考步驟

  1 [root@localhost ~]#    yum install -y autofs
  2 [root@localhost ~]#    vim /etc/auto.master
  3 	/home/guests 	/etc/auto.ldap
  4 [root@localhost ~]#    cp /etc/auto.misc /etc/auto.ldap
  5 [root@localhost ~]#    vim /etc/auto.share
  6 	ldapuser0 -type=nfs classroom.example.com:/home/guests/ldapuser0
  7 [root@localhost ~]#     systemctl enable autofs
  8 [root@localhost ~]#     systemctl restart autofs
  9 [root@localhost ~]#     su - ldapuser0
 10 

模擬考試環境

(1)查看服務器的NFS共享

image

(2)安裝autofs軟件包

image

(3)配置autofs的監聽目錄配置文件

image

(4)配置autofs子目錄配置文件

image

(5)啟動autofs服務

image

(6)切換到普通用戶harry,再切換到ldapuser0,這時輸入題目給的密碼kerberos,可以看到有家目錄出現,表示autofs配置成功

image

注意事項

(1)如果切換到ldapuser0時沒有顯示家目錄,可以在配置文件中添加vers=3(表示通過NFS3的版本掛載)和_netdev(表示這是一個網絡設備,系統會等網絡啟動后再加載)的參數。&(表示跟子目錄掛載點一樣的目錄)(掛載多個用戶的家目錄)

  1 [root@localhost ~]#  vim /etc/auto.ldap
  2      * -type=nfs,_netdev,vers=3,rw classroom.example.com:/home/guests/&
  3 
  4 
  5 


 

題目10 NTP


配置你的系統時間與服務器 classroom.example.com同步

參考步驟

  1 [root@localhost ~]#  yum install -y chrony
  2 [root@localhost ~]#  vim /etc/chrony.conf
  3   server classroom.example.com
  4 [root@localhost ~]#  systemctl enable chronyd
  5 [root@localhost ~]#  systemctl restart chronyd.service
  6 [root@localhost ~]#  chronyc sources -v

模擬考試環境

(1)安裝時間同步軟件包,可以看到已安裝。

image

(2)編輯配置文件,將其它的server項都刪除,只留1條server classroom.example.com iburst

image

(3)啟動服務

image

(4)通過chronyc sources -v查看時間同步情況,可以看到同步成功。

image

注意事項


 

題目11 打包壓縮


對/etc/sysconfig目錄進行打包並用 bzip2 壓縮,生成的文件存儲為/root/sysconfig.tar.bz2

參考步驟

  1 [root@localhost ~]#  tar -cjvf /root/sysconfig.tar.bz2 /etc/sysconfig

模擬考試環境

(1)使用tar來打包,通過j的參數來壓縮為bzip2的格式

image

(2)查看打包壓縮的結果

image

 

注意事項

(1)j為bzip2的格式,z為gzip的格式。

 

 

題目12 創建用戶


創建一個名為 alex 的用戶,設置其用戶 ID為 3456,密碼為 glegunge

參考步驟

  1 [root@localhost ~]# useradd -u 3456 alex
  2 
  3 [root@localhost ~]# passwd alex

模擬考試環境

注意事項


 

題目13 swap


為你的系統增加一個 512MiBSWAP 分區,新的 SWAP 分區將會在重新啟動系統自動被激活。不要刪除或修改已存在的 SWAP 分區。

參考步驟

  1 [root@localhost ~]# fdisk /dev/vdb
  2 
  3 [root@localhost ~]# mkswap /dev/vdb6
  4 
  5 [root@localhost ~]# echo "/dev/vdb6 swap swap defaults 0 0" >> /etc/fstab
  6 
  7 [root@localhost ~]# swapon -a

模擬考試環境


考試環境的分區情況是這樣的,已經存在3個分區,但這題swap需要創建新的分區,后面有一題lvm也需要創建新的分區,現在只能創建一個主分區了,怎么辦?其實有很多種方法。
方法一:創建一個擴展分區,然后再創建多個邏輯分區。
方法二:創建一個主分區,將這個分區做成pv,然后創建2個lv。
方法三:通過dd命令創建一個文件,然后通過這個文件來創建swap。
這里我們只講第一種方法,其它的感興趣的同學可以自己玩一下。
(1)查看磁盤信息,這里我們找一塊未使用的磁盤來練習,可以看到一個/dev/vdb

image

(2)通過fdisk對這塊磁盤分區,p查看分區情況,n創建新的分區,這里創建一個1G的分區

image

(3)按照上面的方法創建3個分區出來

image

 

----------------------------到這步就是考試環境啦,接下來,開始創建swap分區--------------------

(1)創建擴展分區,這里的Last sector我們默認回車,表示剩下的容量作全部分給擴展分區

image

(3)通過p查看,可以看到擴展分區的System是Extended,然后在擴展分區的基礎上創建邏輯分區,這里創建一個512M的

image

(4)通過p查看分區情況

image

(5)通過lsblk查看分區的使用情況,如果用lsblk看不到分區,就用partprobe刷新,再不行就重啟

image

(6)將分區格式化成swap

image

(7)啟用swap

image

(8)查看swap信息

image

(9)配置永久掛載,重啟后再查看swap是否配置成功

image

 

注意事項

題目14 find


查找出當前系統中所屬者為 ira 的所有文件,並將其拷貝到/root/findfiles 目錄中。

參考步驟

  1 [root@localhost ~]#  find / -user ira -exec cp {} /root/findfiles/ \;

模擬考試環境


(1)首先切換為ira的用戶,然后通過ira用戶創建幾個文件,方便等一下檢查,考試中不用做此操作。

image

(2)通過find查找根目錄,要求用戶為ira,並且找出的文件要cp到/root/findfiles目錄中,這里需要用到find的exec參數

image

(3)查看find的執行結果,可以看到剛剛通過ira用戶創建的文件都在

image

注意事項


題目15 文字處理


查找出/usr/share/dict/words 文件當中所有包含 seismic 字符串的行,並將這些行仍按照原始文件中的順序存放入/root/wordlist 中, /root/wordlist 文件不能包含空行。

參考步驟

  1 [root@localhost ~]#  grep seismic /usr/share/dict/words >> /root/wordlist

模擬考試環境


(1)通過grep將今有seismic的過濾出來

image

(2)查看執行結果

image

 

注意事項

 

 

題目16 創建lvm

按照以下要求創建一個新的邏輯卷:

邏輯卷的名字為 lvm2,其屬於 exam 目錄,該邏輯卷由 8 個 LE 組成。

卷組 datastore 的單個 PE 大小為 16MiB

將新創建的邏輯卷格式化為 xfs 文件系統,在系統啟動時,該邏輯卷會被自動掛載到/exam/lvm2 目錄下。

參考步驟

  1 [root@localhost ~]# Partprobe
  2 
  3 [root@localhost ~]# pvcreate /dev/vdb6
  4 
  5 [root@localhost ~]# vgcreate -s 16M datastor /dev/vdb6
  6 
  7 [root@localhost ~]# lvcreate -l 8 datastor -n lvm2
  8 
  9 [root@localhost ~]# mkfs.xfs /dev/datastor/lvm2
 10 
 11 [root@localhost ~]# mkdir -p /exam/lvm2
 12 
 13 [root@localhost ~]# echo "/dev/datastor/lvm2 /exam/lvm2 xfs defaults 0 0" >> /etc/fstab
 14 
 15 [root@localhost ~]# mount -a

模擬考試環境

 

注意事項

 

 

 


 

四、RHCE考點


   網絡與安全:

selinux

防火牆nat

鏈路聚合

ipv6


⦁   服務類:

ssh

電子郵件

smb,smb多用戶

nfs,nfs掛載

web,https,基於端口/域名虛擬主機,動態web

iscsi,iscsi客戶端

數據庫,數據庫查詢

   shell類:

alias,腳本(case,if)

 

五、RHCE題庫答案


下面我們來模擬RHCE考試,首先將實驗環境重置:

  1 [root@localhost ~]# rht-vmctl fullreset desktop
  2 [root@localhost ~]# rht-vmctl fullreset server


您有三台主機,分別為物理機 foundationX.example.com。及兩台 kvm 虛擬機分別為 desktopX.example.com(172.25.X.10/24)serverX.example.com(172.25.X.11/24)。

兩台虛擬機網絡和主機名已經配置好,均位於 example.com(172.25.X.0/24)域中。

您的所有題目要求都將在兩台虛擬機上完成。您可以通過物理機 ssh 到兩台虛擬機上進行操作。

您沒有物理機的 root 權限。考試服務器為 classroom.example.com(172.25.254.254/24)。

 

建議大家遠程過去做

image

 

題目1 selinux


1.在 desktopX 和 serverX 上 selinux 要求設置為 enforcing 狀態.

參考步驟

  1 [root@localhost ~]#  vim /etc/selinux/config
  2 
  3     SELINUX=enforcing
  4 
  5     setenforce 1
  6 
  7     getenforce

模擬考試環境

下面2台虛擬機配置selinux后是這樣的。

image

desktop的步驟同上。

注意事項

⦁    setenforce 1是臨時生效

⦁    修改/etc/selinux/conf里的是永久生效

 

 

題目2 ssh


2.在 desktopXserverX 上分別設置防火牆,針對 SSH

允許 example.com 的域對 desktopX 和 serverX 進行 SSH

禁止 deny.com 的域對 desktopX 和 serverX 進行 SSH

參考步驟

  1 [root@localhost ~]#   vim /etc/hosts.allow
  2 
  3 sshd: example.com
  4 
  5 [root@localhost ~]#   vim /etc/hosts.deny
  6 
  7 sshd: deny.com

模擬考試環境


這里我們模擬考試的環境並驗證,假設是這樣:

在server上

允許foundationX對serverX 進行 SSH

禁止 desktopX對 serverX 進行 SSH

image

image

注意事項

⦁    寫到這個文件的配置是馬上生效的。

⦁    如果寫域名,冒號后面要加一個空格,再寫域名。

⦁    正確表達:

sshd: 172.25.0.0/24

sshd: 172.25.0.0/255.255.255.0

sshd: 172.25.0.

sshd: example.com

⦁    錯誤表達:

sshd:172.25.0

 

題目3 自定義用戶環境


3.在 serverX 和desktopX上自定義一個命令,要求所有用戶執行 show 等同於執行“ ls -al ; pwd ; echo ok”

參考步驟

  1 [root@localhost ~]#  vim /etc/bashrc
  2 
  3     alias show='ls -al;pwd;echo ok'

模擬考試環境

下面在server上面的/etc/bashrc配置完后退出當前ssh再登陸查看結果。


image

image

desktop的步驟同上。

注意事項

⦁    退出當前ssh,重新登陸后,通過alias查看是否生效

⦁    執行剛剛自定義的show,查看是否生效

 

題目4 端口轉發


4.在serverX 上設置端口轉發,要求如下:

將example.com 域(172.25.X.0/24)訪問該主機的5423端口的轉到 80 端口

此設置必須永久有效

參考步驟

  1 [root@localhost ~]#  firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=172.25.0.0/24 forward-port port=5423 protocol=tcp to-por=80'
  2 
  3 [root@localhost ~]#  firewall-cmd --reload

模擬考試環境


下面模擬考試環境,在server上安裝http,然后配置端口轉發,通過desktop來驗證。

image

確認防火牆是開的

image

配置端口轉發,並將防火牆重新加載

image

通過desktop訪問5423端口驗證

image

注意事項

⦁    這里的=(等號)兩邊沒有空格:--add-rich-rule=’rule’

⦁    防火牆原理:

防火牆分為不同的ZONE,每個ZONE都有自己的規則(基本規則,富規則)。

當防火牆收到一個數據包的處理流程如下:

⦁    先檢查其源IP,如果該源IP關聯到了一個ZONE,則送往該ZONE。

⦁    如果該源IP沒有關聯ZONE,則查看接收該數據包的網關所關聯的ZONE。

⦁    如果該網卡也沒有關聯ZONE,則送往默認ZONE。

⦁    如果配置錯了,通過firewall-cmd --permanent --remove-rich-rule=’rule’來刪除規則,這里的rule復制通過firewall-cmd --list-all --zone=public看到的,具體如下:

image

 

 

 

 

題目5 鏈路聚合

5.在 serverX 和desktopX上做鏈路聚合

使用 team1 將 eth1 和 eth2 聚合

要求在任意一個成員接口down 的情況下 team1 口保持正常使用

serverX的Ipv4地址配置如下192.168.0.111/24

desktopX的Ipv4地址配置如下192.168.0.110/24

此鏈路聚合重啟后依然保持正常狀態

參考步驟

首先將2台虛擬機的eth0配置成靜態IP,方法如下:

  1 [root@localhost ~]#   ip addr show       #查看IP地址與子網掩碼並記錄下來
  2 [root@localhost ~]#   route              #查看網關並記錄下來
  3 [root@localhost ~]#   cat /etc/resolv.conf   #查看DNS並記錄下來


然后寫到配置文件中:

  1 [root@localhost ~]#  vim /etc/sysconfig/network-scripts/ifcfg-eth0 
  2 		DEVICE=eth0
  3 		BOOTPROTO=none
  4 		ONBOOT=yes
  5 		TYPE=Ethernet
  6 		IPADDR1=172.25.0.11
  7 		PREFIX1=24
  8 		GATEWAY1=172.25.0.254
  9  		DNS1=172.25.254.254


重啟網絡:

  1 [root@localhost ~]#  systemctl restart network


最后開始配置鏈路聚合:

  1 [root@localhost ~]#  nmcli connection add type team con-name team1 ifname team1 config '{"runner":{"name":"activebackup"}}'
  2 [root@localhost ~]#  nmcli connection add type team-slave con-name team1-slave1 ifname eth1 master team1
  3 [root@localhost ~]#  nmcli connection add type team-slave con-name team1-slave2 ifname eth2 master team1
  4 [root@localhost ~]#  teamdctl team1 state
  5 [root@localhost ~]#  vim /etc/sysconfig/network-scripts/ifcfg-team1
  6  
IPADDR=192.168.0.111 7 PREFIX=24 8 ONBOOT=yes
  9 [root@localhost ~]#   
systemctl restart network
 10 
 11 
 12 

模擬考試環境

下面模擬考試環境,先將IP地址配置為靜態,然后手動在foudationX上添加2張網卡給2台虛擬機,然后配置鏈路聚合進行驗證。

查看IP地址/子網掩碼/網關DNS

image

配置靜態IP

image

重啟網絡服務

image

image

desktop的配置同上。
下面在foundation上添加2張網卡給虛擬機。
首先切換到root用戶,打開virt-manager

image

下面這個就是virt-manager界面

image

下面添加2張網卡到虛擬機上

image

image

下面就是添加好的樣子
  image

desktop的步驟同上。
可以看到2張網卡是沒有配置的

image

下面創建team1並查看網卡狀態。
可以看到多了一個CONNECTION為team1的,和DEVICE為team1的。

image

將2張網卡添加到這個team1中

image

配置team1的IP地址

image

 image

image

image

image

desktop的配置同上。
下面進行驗證,server ping desktop

image

注意事項

⦁    鏈路聚合team的config配置格式如下:config '{"runner":{"name":"activebackup"}}'可以這樣記“運行名字為主備”。

⦁    team的網卡配置文件中只配置IP地址和子網掩碼就OK。

⦁    如果配置錯了通過nmcli connection delete team1來刪除原來的配置文件。



題目6 IPV6


6.在 desktopX serverX 上給接口 eth0 設置靜態ipv6 地址

serverX的ipv6 addrees: 2001::1/64

desktopX的ipv6 addrees: 2003::10/64

兩個系統必須能與網絡2003::/64內的系統通信

地址必須在重啟后依舊生效

兩個系統必須保持當前的IPV4地址並能通信。

參考步驟

  1 [root@localhost ~]# nmcli connection modify "System eth0" ipv6.method auto
  2 
  3 [root@localhost ~]# nmcli connection modify "System eth0" ipv6.addresses 2001::1/64
  4 
  5 [root@localhost ~]# nmcli connection modify "System eth0" ipv6.method manual
  6 
  7 [root@localhost ~]# systemctl restart network
  8 
  9 [root@localhost ~]#  ping6 2001::10

模擬考試環境

在2台虛擬機通過命令配置IPV6並驗證,首先需要先設置為auto再配置IP再設置為manual。

image

image

desktop的步驟同上。

image

 

 

注意事項

⦁    配置IPV6之前要記得將method設置成auto,然后再配置IP地址

⦁    使用ping6進行驗證


題目7 電子郵件


7.在 desktopX 和server X上 建 立 一 個電子郵件服務

這些系統不接收外部發送來的郵件

在這些系統上本地發送的任何郵件都會自動路由到foundationX

在這些系統上發送的郵件顯示來自於example.com

防火牆

參考步驟

  1 [root@localhost ~]#  yum install -y postfix
  2 
  3 [root@localhost ~]#  vim /etc/postfix/main.cf
  4 
  5 	inet_interfaces = loopback-only              #監聽本地
  6 
  7 	myorigin = example.com                    #發送的郵件顯示為example.com
  8 
  9 	relayhost = [foundationX.example.com]         #轉發
 10 
 11 	mydestination =                             #不接受任何郵件
 12 
 13 	local_transport = error:local delivery disabled      #不會把郵件郵放MDA
 14 
 15 	mynetworks = 127.0.0.1/8                      #中繼哪些網段
 16 
 17 [root@localhost ~]# 	systemctl restart postfix
 18 
 19 [root@localhost ~]#   systemctl enable postfix

模擬考試環境

注意事項

⦁    這里的實驗環境模擬不了考試環境。

⦁    在考試環境中可以測試,題目有告訴如何測試。

 

 

題目8 SMB


8.通過SMB共享目錄
在server X上配置SMB服務
您的SMB服務器必須是STAFF工作組的一個成員
共享/common目錄共享名必須為common
只有example.com域內的客戶端可以訪問common共享
common必須是可以瀏覽的
用戶andy必須能夠讀取共享中的內容,如果需要的話,驗證的密碼是redhat
參考步驟

  1 [root@localhost ~]# yum install -y samba samba-common samba-client
  2 [root@localhost ~]#  systemctl restart smb nmb
  3 [root@localhost ~]#  systemctl enable smb nmb
  4 [root@localhost ~]# firewall-cmd --permanent --add-rich-rule=’rule family=ipv4 source address=172.25.0.0/24 service name=samba accept’
  5 [root@localhost ~]# firewall-cmd --reload
  6 [root@localhost ~]#  useradd andy
  7 [root@localhost ~]#  smbpasswd -a andy
  8 [root@localhost ~]#  semanage fcontext -a -t samba_share_t “/common(/.*)?”
  9 [root@localhost ~]# restorecon -Rv /common/
 10 [root@localhost ~]#  ll -dZ /common/
 11 [root@localhost ~]#  vim /etc/samba/smb.conf
 12 [root@localhost ~]#  workgroup = STAFF
 13 		       [common]
 14 			path = /common
 15  			browseable = yes
 16  [root@localhost ~]# systemctl restart smb nmb
 17  [root@localhost ~]# su - andy
 18  [root@localhost ~]# ll /common


模擬考試環境
這里模擬考試環境,考試的時候可能common已經有了。本題思路如下:
⦁    裝包
⦁    start和enable服務
⦁    防火牆
⦁    創建用戶
⦁    創建目錄/目錄權限
⦁    selinux
⦁    修改配置文件
⦁    重啟服務
此題目沒有要求客戶端掛載,這里不講。首先是常規操作(裝包,start和enable服務,防火牆),samba要裝3個包,samba是控制smb和nmb服務的,samba-common是samba相關命令,samba-client是samba客戶端用於測試。

 

image

題目說:只有example.com域內的客戶端可以訪問common共享
首先通過ping 域名得出網段,然后通過防火牆規則來實現只有172.25.0.0/24可以訪問共享。

image

接下來創建用戶與目錄並配置selinux。因為默認就有讀的權限,因此不用做權限的修改。

image

下面按照題目要求修改配置文件,修改配置文件的workgroup,添加common共享目錄信息。

image

 

下面我們來測試一下哈,題目說andy有讀的權限是吧,那在服務器端通過andy來訪問這個common共享目錄,看看是否有讀的權限。

image

 

注意事項

⦁    創建samba用戶前需要創建本地用戶。

⦁    如果配置不成功,可通過systemctl status samba 查看報錯信息,通過/var/log/message查看日志。

 

 

題目9 SMB多用戶


9.配置SMB多用戶掛載

在serverX 上配置SMB目錄/devops滿足以下要求

共享名為devops

共享目錄devops只能被example.com域中的客戶端使用

共享目錄devops必須可以被瀏覽

用戶kenji必須能以讀的方式訪問此共享,訪問密碼是atenorth

用戶chihiro必須能以讀寫的方式訪問此共享,訪問密碼是atenorth

此共享永久掛載在desktop上的/mnt/dev目錄,並使用戶kenji作為任何用戶可以通過用戶chihiro來臨時獲取寫的權限

參考步驟

 

  1 server:
  2 [root@localhost ~]#  firewall-cmd --permanent --add-rich-rule=’rule family=ipv4 source address=172.25.0.0/24 service name=samba accept’
  3 [root@localhost ~]# firewall-cmd --reload
  4 [root@localhost ~]#  useradd kenji
  5 [root@localhost ~]#  useradd chihiro
  6 [root@localhost ~]# smbpasswd kenji
  7 [root@localhost ~]#  smbpasswd chihiro
  8 [root@localhost ~]#  mkdir /devops
  9  [root@localhost ~]# semanage fcontext -a -t samba_share_t “/devops(/.*)?”
 10 [root@localhost ~]# restorecon -Rv /devops/
 11 [root@localhost ~]#  ll -dZ /devops/
 12 [root@localhost ~]#  setfacl -R -m u:chihiro:rwx /devops/
 13 [root@localhost ~]#  vim /etc/samba/smb.conf
 14
[devops] 15 path = /devops 16 browseable = yes 17 write list = chihiro
 18 [root@localhost ~]#  systemctl restart smb nmb
 19  desktop:
 20 [root@localhost ~]#  yum install -y samba-client
 21 [root@localhost ~]#  yum install -y cifs-utils.x86_64
 22 [root@localhost ~]#  echo "//172.25.0.11/devops /mnt/dev cifs username=kenji,password=redhat,multiuser,sec=ntlmssp 0 0" >> /etc/fstab
 23 [root@localhost ~]#  mount -a
 24 [root@localhost ~]#  su - student
 25 [root@localhost ~]# cifscreds add 172.25.0.11 -u chihiro
 26 [root@localhost ~]#  touch /mnt/dev/test5


模擬考試環境
這里模擬考試環境,考試的時候可能devops已經有了,裝包和防火牆前面那題已經配置了。本題思路如下:
⦁    創建用戶
⦁    創建目錄/目錄權限
⦁    selinux
⦁    修改配置文件
⦁    重啟服務
⦁    客戶端(裝包,創建掛載目錄,永久掛載,提升憑證測試)
下面模擬考試環境,server為samba服務器,desktop為客戶端進行samba多用戶掛載與提升憑證測試。首先創建用戶,創建目錄/配置目錄權限與selinux,由於這里是多個用戶場景,因此使用setfacl對單個用戶進行權限的設置。

image

image

image

題目說:用戶chihiro必須能以讀寫的方式訪問此共享,訪問密碼是atenorth。
前面我們使用setfacl對chihiro用戶進行了權限設置后配置文件里也要有寫的權限,下面配置共享目錄/devops的共享參數,write list = chihiro表示哪些用戶有寫的權限。

image

使用testparm命令測試配置的語法是否有錯

image

接下來通過desktop客戶端來測試,首先要裝2個包samba-client(用於samba客戶端測試)和cifs-utils(用於samba掛載),創建掛載目錄,然后配置基於kenji的samba多用戶掛載,通過chihiro用戶來提升憑證,獲得寫devops目錄的權限。

image

手動掛載測試一下,沒問題后,再配置永久掛載

image

配置永久掛載

image

cifscreds add 172.25.0.11 -u chihiro表示提升到chihiro的憑證,因為這個用戶有寫的權限,因此需要用到寫功能時,就提升下權限來寫。
注意事項
⦁    掛載的時候要寫multiuser多用戶掛載,才可提升憑證,寫權限才能生效。
⦁    一定要使用普通用戶來提升憑證,在客戶端提升憑證使用cifscreds add 172.25.0.11 -u chihiro,清除憑證使用cifscreds clearall。
⦁    使用testparm可以檢查samba配置文件的語法。
⦁    永久掛載時
//172.25.0.11/devops /mnt/dev cifs username=kenji,password=redhat,multiuser,sec=ntlmssp 0 0
這里表示使用kenji這個用戶來掛載,密碼為redhat,掛載參數是multiuser(多用戶),加載方式是sec=ntlmssp。

image

 

 

題目10 NFS

10.在serverX配置NFS服務,要求如下:


以只讀的方式共享目錄/public同時只能被example.com域中的系統訪問
以讀寫的方式共享目錄/protected能被example.com域中的系統訪問
訪問/protected需要通過kerberos安全加密,您可以使用下面的URL提供的密鑰
http://classroom.example.com/pub/keytabs/server0.keytab
目錄/protected應該包含名為project擁有人為ldapuserX的子目錄
用戶ldapuserX能以讀寫方式訪問/protected/project


參考步驟

 

  1 [root@localhost ~]# wget -O /etc/krb5.keytab http://classroom.example.com/pub/keytabs/server0.keytab
  2 [root@localhost ~]# systemctl start nfs-server rpcbind
  3 [root@localhost ~]# systemctl enable nfs-server rpcbind
  4 [root@localhost ~]# systemctl start nfs-secure-server
  5 [root@localhost ~]# systemctl enable nfs-secure-server
  6  [root@localhost ~]# firewall-cmd --permanent --add-service=nfs
  7 [root@localhost ~]# firewall-cmd --permanent --add-service=mountd 
  8 [root@localhost ~]#  firewall-cmd --permanent --add-service=rpc-bind 
  9 [root@localhost ~]# firewall-cmd --reload
 10 [root@localhost ~]#  mkdir /public
 11  [root@localhost ~]# mkdir /protected
 12 [root@localhost ~]# mkdir /protected/project
 13 [root@localhost ~]# setfacl -m u:ldapuser0:rwx /protected/
 14 [root@localhost ~]# chown ldapuser0 /protected/project/
 15 [root@localhost ~]# vim /etc/exports
 16 
/public 172.25.0.0/24(ro) 17 /protected 172.25.0.0/24(rw,sec=krb5p) 18 exportfs -rv


模擬考試環境
考試的時候2台虛擬機已通過kerberos認證,這里模擬考試環境因此需要手動添加kerberos認證,本題配置思路:
⦁    kerberos認證,下載密鑰
⦁    裝包
⦁    start和enable服務
⦁    防火牆
⦁    創建目錄/目錄權限
⦁    修改配置文件
⦁    重啟服務
首先將server加入kerberos認證,這里server的密鑰在 http://classroom.example.com/pub/keytabs/server0.keytab

image

接下來是常規操作,在server上裝包,start和enable服務,配置防火牆

image

image

目錄/protected應該包含名為project擁有人為ldapuserX的子目錄
用戶ldapuserX能以讀寫方式訪問/protected/project

image

通過ldapuserX測試是否對/protected/project可讀寫

image

 

注意事項
⦁    記得是nfs-secure-server。因為是通過kerberos安全加密的,所以服務器使用的是nfs-secure-server這個服務。
⦁    kerberos認證原理:
首先server和desktop都要成為kerberos的client才能進行安全加密傳輸。
然后kerberos會將加進來的client都生成密鑰。
server和desktop有自己的密鑰。
如果desktop要和server通信,desktop怎么才能知道server就是真server呢?
kerberos將server的密鑰進行加密生成一個憑證發給desktop。
desktop會拿着kerberos發給它的憑證和server通信。
server收到憑證后通過自己的密鑰來解密,如果解密成功,說明這是真server。

 

 

 

 

題目11 NFS掛載

11.在 desktopX 上掛載一個serverX.example.com的NFS共享,並符合下列要求:


/public掛載在下面的目錄上/mnt/nfsmount
/protected掛載在下面的目錄上/mnt/nfssecure並使用安全的方式。密鑰下載URL如下:
http://classroom.example.com/pub/keytabs/desktop0.keytab
ldapuserX能夠在/mnt/nfssecure/project上創建文件
這此文件系統在系統啟動時自動掛載

參考步驟

  1 [root@localhost ~]# wget -O /etc/krb5.keytab http://classroom.example.com/pub/keytabs/desktop0.keytab
  2 [root@localhost ~]# systemctl start nfs-secure
  3 [root@localhost ~]# systemctl enable nfs-secure
  4 [root@localhost ~]#  mkdir /mnt/nfsmount
  5 [root@localhost ~]# mkdir /mnf/nfssecure
  6 [root@localhost ~]# vim /etc/fstab
  7
server0.example.com:/public /mnt/nfsmount nfs defaults,vers=3 0 0 8 server0.example.com:/protected /mnt/nfssecure nfs defaults,vers=3,sec=krb5p 0 0
  9 [root@localhost ~]# mount -a
 10 [root@localhost ~]#  df -TH



模擬考試環境


考試的時候2台虛擬機已通過kerberos認證,這里模擬考試環境因此需要手動添加kerberos認證,本題配置思路:
⦁    kerberos認證,下載密鑰
⦁    裝包
⦁    start和enable服務
⦁    創建目錄
⦁    掛載
⦁    測試
首先將desktop加入kerberos認證, desktop的密鑰在
http://classroom.example.com/pub/keytabs/desktop0.keytab
加入kerberos與下載密鑰步驟請參考上題。
接下來在desktop上裝包,start和enable服務,創建目錄。為什么客戶端也要安裝nfs-utils的包呢?因為nfs是c/s架構,nfs-utils包含了服務器的包和客戶端工具(client-tools)。

image

image

image

 

注意事項

⦁    因為是基於kerberos,所以客戶端要記得啟動nfs-secure服務。

⦁    在客戶端掛載/etc/fstab里的參數是sec=krb5p

 

 

 

題目12 WEB

12.配置WEB站點


serverX上配置一個站點http://serverX.example.com然后執行下述步驟:
從ftp://172.25.254.250/pub/RHCE/12.html下載文件,並且將文件重命名index.html不要修改此文件的內容
將文件index.html拷貝到您的web服務器的documentroot目錄下
來自於example.com域的客戶端可以訪問此web服務
來自於deny.com域的客戶端拒絕訪問此web的服務

參考步驟

  1 server:
  2 [root@localhost ~]# yum install httpd -y
  3 [root@localhost ~]# systemctl start httpd
  4 [root@localhost ~]#  systemctl enable httpd
  5 [root@localhost ~]#  firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=172.25.0.0/24 port port=80 protocol=tcp accept'
  6 [root@localhost ~]#  firewall-cmd --reload
  7 [root@localhost ~]#  vim /usr/share/doc/httpd-2.4.6/httpd-vhosts.conf   #在模板文件中8yy復制,然后在server0.conf中p粘貼
  8 [root@localhost ~]# vim /etc/httpd/conf.d/server0.conf
  9 
<VirtualHost *:80> 10 ServerAdmin root@server0.example.com 11 DocumentRoot "/var/www/html" 12 ServerName server0.example.com 13 ErrorLog "/var/log/httpd/server0.example.com-error_log" 14 CustomLog "/var/log/httpd/server0.example.com-access_log" common 15 </VirtualHost>
 16 [root@localhost ~]#  cd /var/www/html/
 17 [root@localhost ~]#  wget ftp://172.25.254.250/pub/RHCE/12.html  #進入站點目錄將主頁wget下來
 18 [root@localhost ~]# systemctl restart httpd
 19  desktop:
 20 [root@localhost ~]#  curl http://server0.example.com



模擬考試環境

下面模擬考試環境,WEB的配置思路如下:

⦁    裝包

⦁    start和enable服務

⦁    防火牆

⦁    修改配置文件(不需要修改主配置文件/etc/httpd/conf/httpd.conf,所有配置在/etc/httpd/conf.d/server0.conf里面(所有頁面配置成虛擬主機),這樣可以保持主配置文件的干凈,方便排錯。)

⦁    selinux

⦁    配置主頁

⦁    restart服務

⦁    客戶端測試

 

image

測試

image

 

 

注意事項

⦁    不需要修改主配置文件/etc/httpd/conf/httpd.conf,所有配置在/etc/httpd/conf.d/server0.conf里面(所有頁面配置成虛擬主機),這樣可以保持主配置文件的干凈,方便排錯。

⦁    確保主機名(ServerName)沒有寫錯例如14.example.com。多一字符或者空格都是不行的。

 

題目13 HTTPS


13.配置安全web服務


為站點http://serverX.example.com配置
TLS加密一個已簽名證書從http://classroom.example.com/pub/tls/certs/www0.crt獲取,
此證書的密鑰從http://classroom.example.com/pub/tls/private/www0.key獲取,
此證書的簽名授權信息從http://classroom.example.com/pub/example-ca.crt獲取。

參考步驟

 

  1 [root@localhost ~]# yum install mod_ssl -y
  2 [root@localhost ~]# wget -O /etc/pki/tls/certs/www0.crt http://classroom.example.com/pub/tls/certs/www0.crt
  3 [root@localhost ~]# wget -O /etc/pki/tls/private/www0.key http://classroom.example.com/pub/tls/private/www0.key
  4 [root@localhost ~]#  wget -O /etc/pki/tls/certs/example-ca.crt http://classroom.example.com/pub/example-ca.crt
  5 [root@localhost ~]# vim /etc/httpd/conf.d/server0.conf
6 <VirtualHost *:443> 7 ServerAdmin root@server0.example.com 8 DocumentRoot "/var/www/html" 9 ServerName server0.example.com 10 ErrorLog "/var/log/httpd/server0_443.example.com-error_log" 11 CustomLog "/var/log/httpd/server0_443.example.com-access_log" common 12 SSLEngine on 13 SSLProtocol all -SSLv2 -SSLv3 14 SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5 15 SSLCertificateFile /etc/pki/tls/certs/www0.crt 16 SSLCertificateKeyFile /etc/pki/tls/private/www0.key 17 SSLCACertificateFile /etc/pki/tls/certs/example-ca.crt 18 </VirtualHost>
 19 [root@localhost ~]#  systemctl restart httpd


模擬考試環境

image
  這里可以進入/etc/pki/tls/certs后再wget,這樣selinux不需要修改,或者wget -O 指定路徑

image

image

image

image

image

通過grep ssl.conf將https配置參數復制出來,這里的最后一條記得把#去掉。

image

image

image

image

 

注意事項

1. 下載文件時,先cd到要保存的位置,再wget;或者使用wget -O指定絕對路徑。

 

 

 

 

 

題目14 虛擬主機

14.配置虛擬主機

在serverX上擴展您的web服務器,為站點http://14.example.com創建一個虛擬主機,然后執行下述步驟:

設置DocumentRoot為/var/www/virtual

從ftp://172.25.254.250/pub/RHCE/14.html下載文件並重命名為index.html不要對文件index.html的內容做任何修改

將文件index.html放到虛擬主機的DocumentRoot目錄下

確保floyd用戶能夠在/var/www/virtual目錄下創建文件

注意:原始站點http://server0.example.com必須仍然能夠訪問

參考步驟

  1 [root@localhost ~]# vim /etc/httpd/conf.d/server0.conf
  2 
  3 
<VirtualHost *:80> 4 5 ServerAdmin root@server0.example.com 6 7 DocumentRoot "/var/www/virtual" 8 9 ServerName 14.example.com 10 11 ErrorLog "/var/log/httpd/server0_14.example.com-error_log" 12 13 CustomLog "/var/log/httpd/server0_14.example.com-access_log" common 14 15 </VirtualHost> 16 17 <Directory "/var/www/virtual"> 18 19 AllowOverride None 20 21 Require all granted 22 23 </Directory>
 24 
 25 [root@localhost ~]#  systemctl restart httpd
 26 
模擬考試環境

 

image

image

其中<Directory>這個在/etc/httpd/conf/httpd.conf里面復制

image

 

 

題目15 虛擬主機2

15.配置WEB內容的訪問

為您的serverX上的web服務器的DocumentRoot目錄下創建一個名為private的目錄,要求如下:

從ftp://172.25.254.250/pub/RHCE/15.html下載一個文件副本到這個目錄,並且重命名為index.html

不要對這個文件的內容做任何修改

在serverX上任何人都可以瀏覽private的內容,但是從其他系統不能訪問這個目錄的內容

參考步驟

  1 [root@localhost ~]# vim /etc/httpd/conf.d/server0.conf
  2 
  3 <VirtualHost *:80>
  4 
  5 ServerAdmin root@server0.example.com
  6 
  7 DocumentRoot "/var/www/html"
  8 
  9 ServerName server0.example.com
 10 
 11 ErrorLog "/var/log/httpd/server0.example.com-error_log"
 12 
 13 CustomLog "/var/log/httpd/server0.example.com-access_log" common
 14 
 15 </VirtualHost>
 16 
 17 <Directory "/var/www/html/private"> #在第一個站點后面添加
 18 
 19 Require all denied
 20 
 21 Require local
 22 
 23 </Directory>
 24 
 25 [root@localhost ~]# systemctl restart httpd
 26 

模擬考試環境

image

image

這里說的DocumentRoot,我們就在默認的/var/www/html里創建就OK

其中<Directory>這個在/etc/httpd/conf/httpd.conf里面復制

image

image

desktop測試

image

server測試

image

注意事項

1. 下載文件時,先cd到要保存的位置,再wget;或者使用wget -O指定絕對路徑。

 

 

題目16 動態WEB

16.實現動態WEB內容

在serverX上配置提供動態web內容,要求如下:

動態內容為16.example.com的虛擬主機提供

虛擬主機偵聽在端口8909

從ftp://172.25.254.250/pub/RHCE/webinfo.wsgi下載一個腳本,然后放在適當的位置,無論如何都不要修改此文件的內容

客戶端訪問http://14.example.com:8909時應該接到動態生成的WEB頁面

此http://14.example.com:8900必須被example.com域內的所有系統訪問

參考步驟

  1 [root@localhost ~]# yum install -y mod_wsgi
  2 
  3 [root@localhost ~]# firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=172.25.0.0/24 port port=8990 protocol=tcp accept'
  4 
  5 [root@localhost ~]# firewall-cmd --reload
  6 
  7 [root@localhost ~]# vim /etc/httpd/conf.d/server0.conf
  8 
  9
Listen 8909 10 11 <VirtualHost *:8909> 12 13 ServerName 16.example.com 14 15 WSGIScriptAlias / /var/www/html/webapp.wsgi 16 17 </VirtualHost>
 18 
 19 [root@localhost ~]# systemctl restart httpd
 20 
 21 [root@localhost ~]# semanage port -a -t http_port_t -p tcp 8909
 22 
 23 [root@localhost ~]# systemctl restart httpd
 24 

模擬考試環境

image

image

image

image

image

image

題目17 case腳本

17.在serverX上創建一個名為/root/foo.sh的腳本,讓其提供下列特征

當運行/root/foo.sh redhat,輸出為fedora

當運行/root/foo.sh fedora,輸出為redhat

當沒有任何參數或者參數不是redhat或者fedora時,其錯誤輸出產生以下的信息:

  1 [root@localhost ~]#  /root/foo.sh redhat|fedora
  2 
  3 #參考步驟
  4 
  5 [root@localhost ~]#  vim /root/foo.sh
  6 
  7 
#!/bin/bash 8 9 case $1 in 10 11 redhat) 12 13 echo “fedora”; 14 15 ;; 16 17 fedora) 18 19 echo “redhat”; 20 21 ;; 22 23 *) 24 25 echo ‘/root/foo.sh redhat|fedora’ 26 27 ;; 28 29 esac
 30 
 31 [root@localhost ~]# chmod +x /root/foo.sh
 32 

模擬考試環境

image

image

image

注意事項

 

題目18 if腳本

18.創建一個添加用戶的腳本

在serverX上創建一個腳本,名為/root/batchusers,此腳本能實現為系統server創建本地用戶,並且這些用戶的用戶名來自一個包含用戶名列表的文件。同時滿足下列要求:

此腳本要求提供一個參數,此參數就是包含用戶名列表的文件

如果沒有提供參數,此腳本應該給出下面的提示信息Usage:/root/bachuser然后退出並返回相應的值

如果提供一個不存在的文件名,此腳本應該給出下面的提示信息input file not found然后退出並返回相應的值

創建的用戶登錄shell為/bin/false

此腳本不需要為用戶設置密碼

你可以從下面的URL獲取用戶名列表作為測試用  http://172.25.254.250/pub/RHCE/userlist

參考步驟

  1 [root@localhost ~]# vim /root/batchusers
  2 
3 #!/bin/bash 4 5 if [ $# -eq 0 ] ; then 6 7 echo "Usage:/root/bachusers"; 8 9 exit 1; 10 11 fi 12 13 if [ ! -f $1 ] ; then 14 15 echo "input file not found"; 16 17 exit 2; 18 19 fi 20 21 for USERNAME in $(cat $1) ; 22 23 do 24 25 useradd -s /bin/false $USERNAME 26 27 id $USERNAME 28 29 done
 30 
 31 [root@localhost ~]#  chmod +x /root/foo.sh
 32 

模擬考試環境

image

image

image

注意事項

 

題目19 ISCSI服務端

19.配置iSCSI服務端

配置serverX提供一個iSCSI服務磁盤名為iqn.2017-05.com.example:serverX並符合下列要求

服務器端口為3260

使用iscsi——store作其后端卷其大小為3G

從服務只能被desktopX.example.com訪問

參考步驟

  1 [root@localhost ~]#  fdisk /dev/vdb
  2 
  3                      Command (m for help): p
  4 
  5 Command (m for help): n
  6 
  7 Select (default p): p
  8 
  9                      Partition number (1-4, default 1): 1
 10 
 11                      First sector (2048-20971519, default 2048): 
 12 
 13                      Using default value 2048
 14 
 15                       Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +3G
 16 
 17                       Command (m for help): w
 18 
 19 [root@localhost ~]# yum install -y targetcli
 20 
 21 [root@localhost ~]# targetcli
 22 
23 /> backstores/block create disk1 /dev/vdb1 24 25 /> iscsi/ create iqn.2017-05.com.example:server0 26 27 /> iscsi/iqn.2017-05.com.example:server0/tpg1/acls create iqn.2017-05.com.example:desktop0 28 29 /> iscsi/iqn.2017-05.com.example:server0/tpg1/luns create /backstores/block/disk1 30 31 /> iscsi/iqn.2017-05.com.example:server0/tpg1/portals create 172.25.0.11
 32 
 33 [root@localhost ~]# systemctl start target
 34 
 35 [root@localhost ~]# systemctl enable target
 36 
 37 [root@localhost ~]# firewall-cmd --permanent --add-port=3260/tcp
 38 
 39 [root@localhost ~]# firewall-cmd --reload
 40 
模擬考試環境

image

image

image

image

題目20 ISCSI客戶端

20.配置ISCSI客戶端

配置desktopX使其能連接在serverX上提供的iqn.2017-05.com.example:serverX並符合以下要求

iSCSI設備在系統啟動的期間自動加載

塊設備iSCSI上包含一個大小為2100MIB的分區,並格式化為ext4

此分區掛載在/mnt/data上同時在系統啟動的期間自動掛載

參考步驟

  1 [root@localhost ~]# yum install iscsi* -y
  2 
  3 [root@localhost ~]# vim /etc/iscsi/initiatorname.iscsi
  4 
  5                     InitiatorName=iqn.2017-05.com.example:desktop0
  6 
  7 [root@localhost ~]# systemctl restart iscsi
  8 
  9 [root@localhost ~]# systemctl restart iscsid
 10 
 11 [root@localhost ~]# systemctl enable iscsid
 12 
 13 [root@localhost ~]# systemctl enable iscsi
 14 
 15 [root@localhost ~]# man iscsiadm |grep EXAMPLE -A 10
 16 
 17 [root@localhost ~]# iscsiadm --mode discoverydb --type sendtargets --portal 172.25.0.11 --discover
 18 
 19 [root@localhost ~]# iscsiadm --mode node --targetname iqn.2017-05.com.example:server0 --portal 172.25.0.11:3260 --login
 20 
 21 [root@localhost ~]# lsblk
 22 
 23 [root@localhost ~]# fdisk /dev/sda
 24 
 25                     Command (m for help): p
 26 
 27                     Command (m for help): n
 28 
 29                     Select (default p): p
 30 
 31                     Partition number (1-4, default 1): 1
 32 
 33                     First sector (8192-6291455, default 2048):
 34 
 35                     Using default value 8192
 36 
 37                     Last sector, +sectors or +size{K,M,G} (8192-6291455, default 6291455): +2100M
 38 
 39                      Command (m for help): w
 40 
 41 [root@localhost ~]# mkdir /mnt/data
 42 
 43 [root@localhost ~]# vim /etc/fstab
 44 
 45 [root@localhost ~]# /dev/sda1 /mnt/data ext4 defaults,_netdev 0 0
 46 
 47 [root@localhost ~]# mount -a
 48 
 49 [root@localhost ~]# df -TH
 50 
 51 [root@localhost ~]# shutdown -h 0
 52 

模擬考試環境

image

image

image

  image

 

題目21 數據庫

21.配置一個數據庫

在serverX上創建一個MariaDB數據庫,名為Contacts,並符合以下要求

數據庫應該包含來自數據庫復制的內容,復制文件的URL為

ftp://172.25.254.250/pub/RHCE/user.mdb

數據庫只能被localhost訪問

除了root用戶,此數據庫只能被用戶Raikon查詢,此用戶的密碼為atenorth

root用戶的密碼為atenorth,同時不允許空密碼登錄

參考步驟
  1 [root@localhost ~]# yum groupinstall mariadb mariadb-client -y
  2 
  3 [root@localhost ~]# systemctl start mariadb
  4 
  5 [root@localhost ~]# systemctl enable mariadb
  6 
  7 [root@localhost ~]# mysql_secure_installation
  8 
  9 		Set root password? [Y/n] y
 10 
 11 		New password:
 12 
 13 		Re-enter new password:
 14 
 15 		Remove anonymous users? [Y/n] y
 16 
 17 		Disallow root login remotely? [Y/n] y
 18 
 19 		Remove test database and access to it? [Y/n] y
 20 
 21 		Reload privilege tables now? [Y/n] y
 22 
 23 [root@localhost ~]# ll /root/users.mdb
 24 
 25 [root@localhost ~]# cd /root/ #進入users.mdb所在的目錄,方便后面source
 26 
 27 [root@localhost ~]# mysql -u root -p
 28 
 29 			create database Contacts;
 30 
 31 			use Contacts;
 32 
 33 			source users.mdb #source一下,前提當前目錄有這個文件
 34 
 35 			create user r1@localhost identified by 'redhat';
 36 
 37 			grant select on Contacts.* to r1@localhost;
 38 
模擬考試環境

這里我們將foundation0上的users.mdb復制到server上。

image

image

image

在serverX上創建一個MariaDB數據庫,名為Contacts

root用戶的密碼為atenorth,同時不允許空密碼登錄

image

image

image

image

 

數據庫應該包含來自數據庫復制的內容, user.mdb

 

image

數據庫只能被localhost訪問

除了root用戶,此數據庫只能被用戶Raikon查詢,此用戶的密碼為atenorth

image

 

注意事項

 

題目22 數據庫查詢

22.數據庫查詢

在系統serverX上使用數據庫Contacts,並使用相應的SQL查詢以回答下列問題:

密碼是tangerine的人的名字?

有多少人的姓名是John同時居住在guangzhou?

參考步驟

  1 [root@localhost ~]# mysql -u root -p
  2 
  3 		use Contacts;
  4 
  5 		show tables;
  6 
  7 		desc pass;
  8 
  9 		select * from pass where password="tangerine"; #根據題目要求
 10 
 11 		desc name;
 12 
 13 		select * from name where aid=3; #根據上面查詢結果
 14 
 15 		desc loc;
 16 
 17 		select * from name inner join loc where name.aid=loc.cid and loc.loction='guangzhou';
 18 

模擬考試環境

image

image

image

image

 

密碼是tangerine的人的名字?通過上面的2次查詢看到mary的密碼是這個。

image

 

有多少人的姓名是John同時居住在guangzhou?

image

 

這里1 row in set,表示即叫John又住在廣州的有1個人。

 

注意事項

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM