1. 程式人生 > >Linux學習筆記(五)----理解Linux檔案許可權

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 即可.