Linux學習筆記(五)----理解Linux檔案許可權
Linux允許使用者和組根據每個檔案和目錄的安全性來訪問檔案
Linux的安全性
Linux安全系統的核心是使用者賬戶;使用者許可權根據每個使用者的UserID 跟蹤
新增新使用者
useradd (預設值設定在/etc/default/useradd 檔案中) -D 引數可以檢視 這些預設值
useradd 預設不會建立HOME目錄 加 -m 即可
刪除使用者
userdel 只會刪除/etc/passwd 中的使用者資訊 -r 可以刪除HOME目錄
修改使用者
1.usermod
-l 修改使用者賬戶的登入名
-L 鎖定賬戶, 使使用者無法登入
-p 修改賬戶密碼
-U 解除鎖定
2.passwd 和 chpasswd
passwd 修改自己密碼. root使用者 可以修改別人密碼
chpasswd 能從標準輸入 讀取 (由冒號分割)
3.chsh shfn chage
chsh 修改預設使用者登入shell(必須是shell全路徑名)
chfn 提供 /etc/passwd 檔案的備註欄位中儲存資訊的標準方法
chage 管理使用者賬戶的有效期
使用Linux組
組許可權允許多個使用者對系統中物件共享一組共用的許可權
建立新組
groupadd 建立新組
usermod -G 會把新組新增到使用者的賬戶組列表中 (-g 會替換掉預設組)
修改組
groupmod (只有組名發生改變)
理解檔案許可權
把使用者分為三種:檔案擁有者、群組以及其它人,對不同的使用者有不同的檔案許可權。
使用 ls 檢視一個檔案時,會出現一個檔案的資訊,例如 drwxr-xr-x. 3 root root 17 May 6 00:14 .config,對這個內容的解釋如下:
- drwxr-xr-x:檔案型別以及許可權,第 1 位為檔案型別欄位,後 9 位為檔案許可權欄位。
- 3:連結數;
- root:檔案擁有者;
- root:所屬群組;
- 17:檔案大小;
- May 6 00:14:檔案最後被修改的時間;
- .config:檔名。
常見的檔案型別及其含義有:
- d:目錄;
- -:檔案;
- l:連結檔案;
9 位的檔案許可權欄位中,每 3 個為一組,共 3 組,每一組分別代表對檔案擁有者、所屬群組以及其它人的檔案許可權。一組許可權中的 3 位分別為 r、w、x 許可權,表示可讀、可寫、可執行。
umask 設定預設許可權 第一位為粘著位 後三位 為許可權欄位 檔案全許可權666 目錄全許可權777
例子 umask 0022 檔案 對應 666 - 022 = 644
檔案屬性以及許可權的修改
1. 修改檔案所屬群組
# chgrp [-R] groupname dirname/filename -R:遞迴修改
2. 修改檔案擁有者
不僅可以修改檔案擁有者,也可以修改檔案所屬群組。
# chown [-R] 使用者名稱:群組名 dirname/filename
3. 修改許可權
可以將一組許可權用數字來表示,此時一組許可權的 3 個位當做二進位制數字的位,從左到右每個位的權值為 4、2、1,即每個許可權對應的數字權值為 r:4、w:2、x:1。
# chmod [-R] xyz dirname/filename
範例:將 .bashrc 檔案的許可權修改為 -rwxr-xr--。
# chmod 754 .bashrc
也可以使用符號來設定許可權。
# chmod [ugoa] [+-=] [rwx] dirname/filename - u:擁有者 - g:所屬群組 - o:其他人 - a:所有人 - +:新增許可權 - -:移除許可權 - =:設定許可權
範例:為 .bashrc 檔案的所有使用者新增寫許可權。
# chmod a+w .bashrc
共享檔案
共享檔案的方法為建立組
SGID 可以強制在共享目錄下建立的新檔案都屬於該組
mkdir 建立共享的目錄 然後 chgrp 修改目錄預設屬組 然後將SGID置位 umask 002 即可.