在真機上操作,還原環境
[root@room9pc14 桌面]# rht-vmctl reset cla***oom
[root@room9pc14 桌面]# rht-vmctl reset server
[root@room9pc14 桌面]# rht-vmctl reset desktop
###################################################
爲虛擬機 server 配置以下靜態地址參數
– 主機名:server0.example.com
– IP地址:172.25.0.11
– 子網掩碼:255.255.255.0
– 默認網關:172.25.0.254
– DNS服務器:172.25.254.254
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# cat /etc/resolv.conf
測試DNS解析
[root@server0 ~]# nslookup server0.example.com
###################################################
cron計劃任務
系統服務:crond
日誌文件:/var/log/crond
• 使用 crontab 命令
– 編輯:crontab -e [-u 用戶名]
– 查看:crontab -l [-u 用戶名]
– 清除:crontab -r [-u 用戶名]
1.查看服務狀態
[root@server0 ~]# systemctl status crond
2.書寫計劃任務,
* * * * *
分 時 日 月 周
[root@server0 ~]#useradd hanjie
[root@server0 ~]#ls /home
[root@server0 ~]#su - hanjie
[root@server0 ~]#$ touch a.txt
[root@server0 ~]#crontab -e -u hanjie
*/1 * * * * /usr/bin/date >> /home/hanjie/abc.txt
[root@server0 ~]#watch -n 1 cat /home/natasha/abc.txt
[root@server0 ~]# useradd natasha
[root@server0 ~]# which ifconfig #查詢命令所對應的程序在那裏
[root@server0 ~]# which date
[root@server0 ~]# crontab -e -u natasha
[root@server0 ~]# crontab -l -u natasha
*/1 * * * * /usr/bin/date >> /home/natasha/abc.txt
[root@server0 ~]# watch -n 1 cat /home/natasha/abc.txt
#######################################################
基本權限的類別
• 訪問方式(權限)
– 讀取:允許查看內容-read r
– 寫入:允許修改內容-write w
– 可執行:允許運行和切換-execute x
對於文本文件:
r: cat head tail less
w: vim
x: 運行
• 權限適用對象(歸屬)
– 所有者:擁有此文件/目錄的用戶-user u
– 所屬組:擁有此文件/目錄的組-group g
– 其他用戶:除所有者、所屬組以外的用戶-other o
權限位 硬連接數 屬主 屬組 大小 最後修改時間 文件/目錄名稱
[root@server0 ~]# ls -l /etc/passwd
[root@server0 ~]# ls -ld /etc/
[root@server0 ~]# ls -ld /root
[root@server0 ~]# ls -ld /home/student
[root@server0 ~]# ls -ld /tmp----是一個特殊的基本權限
以“-”開頭: 文件
以“l”開頭: 快捷方式
以“d”開頭: 目錄
• 使用 chmod 命令
– chmod [-R] 歸屬關係+-=權限類別 文檔...
[-R] 遞歸賦予權限
[root@server0 ~]# mkdir /nsd010
[root@server0 ~]# ls -ld /nsd01
[root@server0 ~]# chmod u-x /nsd01
[root@server0 ~]# ls -ld /nsd01
[root@server0 ~]# chmod g+w /nsd01
[root@server0 ~]# ls -ld /nsd01
[root@server0 ~]# chmod o=rwx /nsd01
[root@server0 ~]# ls -ld /nsd01
[root@server0 ~]# chmod u=rwx,g=rx,o=r /nsd01
[root@server0 ~]# ls -ld /nsd01
################################################
如何判斷用戶具備權限
1.判斷用戶所屬的身份 所有者>所屬組>其他人 匹配及停止
2.看相應權限位的權限劃分
目錄的 r 權限:能夠 ls 瀏覽此目錄內容
目錄的 w 權限:能夠執行 rm/mv/cp/mkdir/touch/... 等更改目錄內容的操作
目錄的 x 權限:能夠 cd 切換到此目錄
####################################################
以root用戶新建/nsddir/目錄,在此目錄下新建readme.txt文件,並進一步完成下列操作
1)使用戶zhangsan能夠在此目錄下創建子目錄 切換用戶 su - zhangsan
chmod o+w /nsddir/
[root@S ~]# mkdir /nsddir
[root@S ~]# touch /nsddir/readme.txt
[root@S ~]# useradd zhangsan
[root@S ~]# su - zhangsan
[zhangsan@S ~]$ exit
[root@S ~]# chmod o+w /nsddir/
[root@S ~]# su - zhangsan
[zhangsan@S ~]$ mkdir /nsddir/abc
[zhangsan@S ~]$ ls /nsddir/
2)使用戶zhangsan不能夠在此目錄下創建子目錄
chmod o-w /nsddir/
3)使用戶zhangsan能夠修改readme.txt文件
chmod o+w /nsddir/readme.txt
4)調整此目錄的權限,使所有用戶都不能進入此目錄
chmod u-x,g-x,o-x /nsddir/
5)爲此目錄及其下所有文檔設置權限 rwxr-x---
chmod -R u=rwx,g=rx,o=--- /nsddir/
###############################################
設置文檔歸屬
• 使用 chown 命令
– chown [-R] 屬主 文檔...
– chown [-R] :屬組 文檔...
– chown [-R] 屬主:屬組 文檔...
[root@server0 ~]# mkdir /nsd05
[root@server0 ~]# ls -ld /nsd05
[root@server0 ~]# groupadd tedu
[root@server0 ~]# chown dc:tedu /nsd05
[root@server0 ~]# ls -ld /nsd05
[root@server0 ~]# chown student /nsd05
[root@server0 ~]# ls -ld /nsd05
[root@server0 ~]# chown :root /nsd05/
[root@server0 ~]# ls -ld /nsd05/
####################################################
特殊權限(附加權限)
Set UID
• 附加在屬主的 x 位上
– 屬主的權限標識會變爲 s
– 適用於可執行文件,Set UID可以讓使用者具有文件屬
主的身份及部分權限(傳遞所有者身份)
Set GID
• 附加在屬組的 x 位上
– 屬組的權限標識會變爲 s
– 適用於可執行文件,功能與Set UID類似(傳遞所屬組身份)
– 適用於目錄,Set GID可以使目錄下新增的文檔自動設
置與父目錄相同的屬組
[root@server0 ~]# mkdir /tarena
[root@server0 ~]# ls -ld /tarena
[root@server0 ~]# chown :tedu /tarena
[root@server0 ~]# ls -ld /tarena
[root@server0 ~]# mkdir /tarena/nsd01
[root@server0 ~]# ls -ld /tarena/nsd01
[root@server0 ~]# chmod g+s /tarena/
[root@server0 ~]# ls -ld /tarena/
[root@server0 ~]# mkdir /tarena/nsd02
[root@server0 ~]# ls -ld /tarena/nsd02
[root@server0 ~]# touch /tarena/nsd02/abc.txt
[root@server0 ~]# ls -l /tarena/nsd02/abc.txt
#################################################
Sticky Bit
• 附加在其他人的 x 位上
– 其他人的權限標識會變爲 t
– 適用於開放 w 權限的目錄,可以阻止用戶濫用 w 寫入
權限(禁止操作別人的文檔)
[root@server0 ~]# mkdir /public
[root@server0 ~]# chmod u=rwx,g=rwx,o=rwx /public
[root@server0 ~]# ls -ld /public
[root@server0 ~]# chmod o+t /public
[root@server0 ~]# ls -ld /public
###################################################
acl策略的作用
• 文檔歸屬的侷限性
– 任何人只屬於三種角色:屬主、屬組、其他人
– 無法實現更精細的控制
• acl訪問策略
– 能夠對個別用戶、個別組設置獨立的權限
– 大多數掛載的EXT3/4、XFS文件系統默認已支持
[root@server0 ~]# mkdir /test
[root@server0 ~]# ls -ld /test
[root@server0 ~]# chmod o=--- /test
[root@server0 ~]# ls -ld /test
[root@server0 ~]# su - zhangsan
[zhangsan@server0 ~]$ cd /test/
-bash: cd: /test/: Permission denied
[zhangsan@server0 ~]$ exit
logout
[root@server0 ~]# setfacl -m u:zhangsan:rx /test/
[root@server0 ~]# getfacl /test/
[root@server0 ~]# su - zhangsan
[zhangsan@server0 ~]$ cd /test/
[zhangsan@server0 test]$ pwd
[zhangsan@server0 test]$ exit
• 使用 getfacl、setfacl 命令
– getfacl 文檔...
– setfacl -m u:用戶名:權限類別 文檔...
– setfacl -m g:組名:權限類別 文檔...
– setfacl -x u:用戶名 文檔... #刪除指定的ACL策略
– setfacl -b 文檔... #清空ACL策略
[root@server0 ~]# getfacl /test/
[root@server0 ~]# setfacl -m u:dc:rwx /test/
[root@server0 ~]# setfacl -m u:natasha:rx /test/
[root@server0 ~]# getfacl /test/
[root@server0 ~]# setfacl -x u:dc /test/ #刪除指定的ACL
[root@server0 ~]# getfacl /test/
[root@server0 ~]# setfacl -b /test/ #清空所有的ACL
[root@server0 ~]# getfacl /test/
##################################################
[root@server0 ~]# mkdir /nsd20
[root@server0 ~]# chmod u=rwx,g=rwx,o=rwx /nsd20
[root@server0 ~]# ls -ld /nsd20
drwxrwxrwx. 2 root root 6 10月 30 15:49 /nsd20
[root@server0 ~]# setfacl -m u:natasha:--- /nsd20
###################################################
使用LDAP認證
傳統用戶名密碼:本地創建,用於本地登陸 /etc/passwd
網絡用戶: 在LDAP服務器上創建,可以登陸域中每一臺機器
LDAP服務器: cla***oom
客戶端:指定服務端LDAP位置
1.安裝客戶端軟件
– 軟件包:
sssd:與服務端溝通軟件
authconfig-gtk:圖形配置sssd工具
[root@server0 ~]# rpm -q sssd #驗證軟件包安裝成功
[root@server0 ~]# rpm -q authconfig-gtk
2.運行圖形配置sssd工具:authconfig-gtk
[root@server0 ~]# authconfig-gtk
用戶賬戶數據庫:LDAP
LDAP搜索基礎DN:dc=example,dc=com
LDAP服務器: cla***oom.example.com
鉤選:用TLS加密連接
指定證書加密:
http://172.25.254.254/pub/example-ca.crt
認證方法:LDAP密碼
3.啓動sssd服務,並設置爲開機自起
[root@server0 ~]# systemctl restart sssd
[root@server0 ~]# systemctl enable sssd
4.驗證
[root@server0 ~]# grep 'ldapuser0' /etc/passwd
[root@server0 ~]# id ldapuser0
##################################################
家目錄漫遊
• Network File System,網絡文件系統
– 由NFS服務器將指定的文件夾共享給客戶機
– 客戶機將此共享目錄 mount 到本地目錄,訪問此共享
資源就像訪問本地目錄一樣方便
– 類似於 EXT4、XFS等類型,只不過資源在網上
• 查看NFS資源
[root@server0 ~]# showmount -e 172.25.254.254
• 進行掛載,將服務端NFS共享內容掛載到本地目錄
[root@server0 ~]# mkdir /home/guests
# mount 172.25.254.254:/home/guests/ /home/guests
[root@server0 ~]# ls /home/guests
[root@server0 ~]# su - ldapuser0