1. 程式人生 > >權限和歸屬、使用LDAP認證、家目錄漫遊、總結和答疑

權限和歸屬、使用LDAP認證、家目錄漫遊、總結和答疑

ren roo 服務端 快捷 ls -ld gre lis 標識 ssi

權限和歸屬

基本權限的類別
? 訪問方式(權限)
– 讀取:允許查看內容-read r
– 寫入:允許修改內容-write w
– 可執行:允許運行和切換-execute x

文本文件:
r: cat less head tail grep
w: vim 保存
x: 可以執行

? 權限適用對象(歸屬)
– 所有者:擁有此文件/目錄的用戶-user u
– 所屬組:擁有此文件/目錄的組-group g
– 其他用戶:除所有者、所屬組以外的用戶-other o

查看權限
? 使用 ls -l 命令
– ls -ld 文件或目錄...

以 - 開頭:文本文件
以 d 開頭:目錄
以 l 開頭:快捷方式

設置基本權限
? 使用 chmod 命令
– chmod [-R] 歸屬關系+-=權限類別 文檔...

-R : 遞歸修改目錄下所有內容,及子目錄所有內容

[root@server0 ~]# mkdir /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# chmod u-w /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# chmod g+w /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# chmod o=--- /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# chmod u=rwx,g=rwx,o=rwx /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# chmod ugo=r /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# chmod ug=rw /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# mkdir -p /opt/tarena/nsd/nsd1802
[root@server0 ~]# ls -ld /opt/tarena/

[root@server0 ~]# chmod -R ugo=r /opt/tarena/
[root@server0 ~]# ls -ld /opt/tarena/

[root@server0 ~]# ls -ld /opt/tarena/nsd/
[root@server0 ~]# ls -ld /opt/tarena/nsd/nsd1802/

#########################################################

Linux判斷用戶具備的權限:
1.判斷用戶所屬的身份(角色) 所有者>所屬組>其他人 匹配及停止
2.相應權限位的權限

Permission denied : 權限不足

目錄的 r 權限:能夠 ls 瀏覽此目錄內容
目錄的 w 權限:能夠執行 rm/mv/cp/mkdir/touch/... 等更改目錄內容的操作
目錄的 x 權限:能夠 cd 切換到此目錄

#######################################################
以root用戶新建/nsddir/目錄,在此目錄下新建readme.txt文件,並進一步完成下列操作
1)使用戶zhangsan能夠在此目錄下創建子目錄 切換用戶 su - zhangsan
chmod o+w /nsddir/

2)使用戶zhangsan不能夠在此目錄下創建子目錄
chmod o-w /nsddir/

3)使用戶zhangsan能夠修改readme.txt文件
chmod o+w /nsddir/readme.txt

4)調整此目錄的權限,使所有用戶都不能cd進入此目錄
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 /nsd06
[root@server0 /]# ls -ld /nsd06

[root@server0 /]# useradd tom
[root@server0 /]# groupadd stugrp
[root@server0 /]# chown tom:stugrp /nsd06
[root@server0 /]# ls -ld /nsd06

[root@server0 /]# chown root /nsd06
[root@server0 /]# ls -ld /nsd06

[root@server0 /]# groupadd tedu
[root@server0 /]# chown :tedu /nsd06
[root@server0 /]# ls -ld /nsd06

########################################################
附加權限(特殊權限)

Set GID
? 附加在屬組的 x 位上
– 屬組的權限標識會變為 s
– 適用於目錄,Set GID可以使目錄下新增的文檔自動設置與父目錄相同的屬組
– 繼承所屬組身份

[root@server0 /]# mkdir /nsd09
[root@server0 /]# chown :stugrp /nsd09
[root@server0 /]# ls -ld /nsd09

[root@server0 /]# mkdir /nsd09/test01
[root@server0 /]# ls -ld /nsd09/test01

[root@server0 /]# chmod g+s /nsd09
[root@server0 /]# ls -ld /nsd09

[root@server0 /]# mkdir /nsd09/abc01
[root@server0 /]# ls -ld /nsd09/abc01

[root@server0 /]# ls -ld /nsd09/test01

[root@server0 /]# mkdir /nsd09/abc01/nsd
[root@server0 /]# ls -ld /nsd09/abc01/nsd

#########################################################
acl訪問控制列表

? acl訪問策略
– 能夠對個別用戶、個別組設置獨立的權限
– 大多數掛載的EXT3/4、XFS文件系統默認已支持

[root@server0 /]# mkdir /nsd11
[root@server0 /]# chmod o=--- /nsd11
[root@server0 /]# ls -ld /nsd11

[root@server0 /]# su - zhangsan
[zhangsan@server0 ~]$ cd /nsd11
-bash: cd: /nsd11: Permission denied
[zhangsan@server0 ~]$ exit
logout

[root@server0 /]# setfacl -m u:zhangsan:rx /nsd11
[root@server0 /]# su - zhangsan

[zhangsan@server0 ~]$ cd /nsd11
[zhangsan@server0 nsd11]$ pwd
[zhangsan@server0 nsd11]$ exit

##########################################################

– getfacl 文檔... #查看ACL訪問控制列表
– setfacl [-R] -m u:用戶名:權限類別 文檔...
– setfacl [-R] -m g:組名:權限類別 文檔...

– setfacl [-R] -x u:用戶名 文檔... #刪除指定ACL
– setfacl [-R] -b 文檔... #清空ACL

[root@server0 /]# mkdir /nsd12
[root@server0 /]# setfacl -m u:zhangsan:rwx /nsd12
[root@server0 /]# useradd lisi
[root@server0 /]# setfacl -m u:lisi:rx /nsd12
[root@server0 /]# setfacl -m u:tom:rx /nsd12

[root@server0 /]# getfacl /nsd12

[root@server0 /]# setfacl -x u:lisi /nsd12 #刪除指定用戶的ACL
[root@server0 /]# getfacl /nsd12

[root@server0 /]# setfacl -b /nsd12 #刪除目錄所有的ACL
[root@server0 /]# getfacl /nsd12

#########################################################

[root@server0 /]# ls -ld /public

[root@server0 /]# setfacl -m u:tom:--- /public
[root@server0 /]# getfacl /public

#########################################################
使用LDAP認證

LDAP服務器: 網絡用戶 用戶的集中管理 ,用戶信息由LDAP服務器提供

  本地用戶: 用戶信息由/etc/passwd

LDAP服務器: cla***oom.example.com

客戶端:虛擬機Server
1.安裝客戶端軟件sssd,與LDAP網絡用戶服務器溝通

[root@server0 /]# yum -y install sssd

2.安裝圖形工具 authconfig-gtk 配置sssd

[root@server0 /]# yum -y install authconfig-gtk

[root@server0 /]# exit
登出
[root@room9pc01 ~]# ssh -X [email protected]
[root@server0 ~]# authconfig-gtk

  選擇LDAP
  dc=example,dc=com             #指定服務端域名
  cla***oom.example.com         #指定服務端主機名

勾選TLS加密
使用證書加密:  http://cla***oom.example.com/pub/example-ca.crt

   選擇LDAP密碼

3.重起sssd服務,驗證

[root@server0 ~]# systemctl restart sssd
[root@server0 ~]# grep ‘ldapuser0‘ /etc/passwd
[root@server0 ~]# id ldapuser0
[root@server0 ~]# id ldapuser1

#######################################################
家目錄漫遊

? Network File System,網絡文件系統
– 由NFS服務器將指定的文件夾共享給客戶機
– 客戶機將此共享目錄 mount 到本地目錄,訪問此共享
資源就像訪問本地目錄一樣方便

– 類似於 EXT4、XFS等類型,只不過資源在網上

NFS共享服務器:cla***oom.example.com

虛擬機Server:

1.查看cla***oom有那些共享
[root@server0 ~]# showmount -e cla***oom.example.com
Export list for cla***oom:
/home/guests 172.25.0.0/255.255.0.0

2.掛載訪問

mkdir /nfs

ls /nfs

mount cla***oom.example.com:/home/guests /nfs

ls /nfs

# mkdir /home/guests
# umount /nfs
# ls /nfs
# mount cla***oom.example.com:/home/guests  /home/guests
# ls /home/guests
# su - ldapuser0
$ exit

#########################################################

權限和歸屬、使用LDAP認證、家目錄漫遊、總結和答疑