linux用戶和組

*** Linux用戶和組:

1.用戶:Username/UID

    管理員:root, 0

    系統用戶:1-499(CENTOS6), 1-999(CENTOS7)

    對守護進程獲取資源進行權限分配

    登錄用戶:500(CENTOS6)+, 1000(CENTOS7)+

    交互式登錄

2.組:Groupname/GID

    管理員組:root, 0

    系統組:1-499, 1-999

    普通組:500+, 1000+

    

    用戶的主要組(主組):用戶必須屬於一個且僅一個主組  

    私有組:組名同用戶名,且包含一個用戶

    用戶的附加組(輔助組):一個用戶可屬於零個或多個輔助組

3.Linux用戶和組的主要配置文件:

    /etc/passwd: 用戶及其屬性信息(名稱、UID、主組ID等)

    /etc/shadow: 用戶密碼及其相關屬性

    /etc/group: 組及其屬性信息

    /etc/gshadow:組密碼及其相關屬性

    文件格式:

1)/etc/passwd:

login name :passwd  :UID       :GID     :GECOS      :home directory :shell:

登錄用名  :密碼(x) :用戶身份編號 :用戶組編號 :用戶全名或註釋:家目錄      :默認使用shell


      zhou:!!::::::   有歎號禁止登陸

    usermod -L zhou  鎖定用戶禁止登陸;加一個歎號  

    無密碼無法解鎖   usermod -U


2)/etc/shadow:

登錄用名

用戶密碼:一般用sha512加密

從1970年1月1日起 到密碼最近一次被更改的時間

密碼再過幾天可以被變更(0表示隨時可被變更)

密碼再過幾天必須被變更(99999表示永不過期)

密碼過期前幾天系統提醒用戶(默認爲一週)

密碼過期幾天後帳號會被鎖定

從1970年1月1日算起,多少天后帳號失效。

 更改加密算法authconfig--passalgo=sha512 --update

    md5: message digest, 128bits

    sha1: secure hash algorithm, 160bits

    sha224: 224bits

    sha256: 256bits

    sha384: 384bits

    sha512: 512bits

pwunconv  口令不轉換即將密碼保留在/etc/passwd;不安全


3)/etc/group

羣組名稱:就是羣組名

羣組密碼:通常不需要設定,密碼是被記錄在/etc/gshadow

GID:羣組的ID

以當前組爲主組或附加組的用戶列表(分隔符爲逗號)


4)/etc/gshadow

羣組名稱:就是羣組名稱

羣組密碼:*

組管理員列表:組管理員的列表,更改組密碼和成員

以當前組爲主組或附加組的用戶列表:(分隔符爲逗號)

    vipw;vigr   專用於編輯密碼文件

 執行時會爲文件上鎖,其他用戶或終端無法同時修改。避免修改失敗


    pwck;grpck  檢查密碼文件完整性 格式等

**useradd[options] LOGIN  添加用戶

    -u UID: [UID_MIN, UID_MAX]定義在/etc/login.defs

    -o 配合-u 選項,不檢查UID的唯一性 可創建uid相同的用戶

    -g GID:指明用戶所屬基本組,可爲組名,也可以爲GID

    -c "COMMENT":用戶的註釋信息

    -d HOME_DIR:以指定的路徑(需不存在)爲家目錄

    -s SHELL: 指明用戶的默認shell程序

    可用列表在/etc/shells文件中

    -G GROUP1[,GROUP2,...]:爲用戶指明附加組,組必須事先存在

    -N 不創建私用組做主組,使用users組做主組gid=100

    -r: 創建系統用戶CentOS 6: ID<500,CentOS 7: ID<1000

 新建用戶默認值設定:/etc/default/useradd文件中

 顯示或更改默認設置:

    useradd -D

    useradd -D -s SHELL


初始家目錄文件集:/etc/skel/*

設置用戶帳號限制的文件/etc/login.defs   密碼的最大過期天數,密碼的最大長度約束等

/etc/shadow的配置優先級高於/etc/login.defs 


newusers FILE(嚴格按照/etc/passwd格式編寫的文件)  可批量添加用戶

chpasswd FILE(嚴格按照/etc/shadow格式編寫的文件)  可批量更改用戶密碼

userdel [OPTIONG] USER  刪除用戶

-r刪除用戶及其家目錄


     finger顯示用戶信息   需安裝

  Login Name  Tty   Idle       Login Time Office Office Phone   Host

  root  root pts/0  Jul 30 13:17                      (10.1.250.32)

chfn可用來更改執行finger指令時所顯示的信息 

 若不指定任何參數,則chfn指令會進入問答式界面


**   usermod [OPTION] login  更改用戶配置

    -u UID: 新UID

    -g GID: 新基本組

    -G GROUP1[,GROUP2,...[,GROUPN]]]:新附加組,原來的附加組將會被覆蓋;

               若保留原有,則要同時使用-a選項,表示append;

    -s SHELL:新的默認SHELL;

    -c 'COMMENT':新的註釋信息;

    -d HOME: 新家目錄不會自動創建,原家目錄中的文件不會同時移動至新的家目錄;

               若要創建新家目錄並移動原家數據,同時使用-m選項

    -l login_name: 新的名字;

    -L: lock指定用戶,在/etc/shadow 密碼欄的增加!

    -U: unlock指定用戶,將/etc/shadow 密碼欄的! 拿掉

    -e YYYY-MM-DD: 指明用戶賬號過期日期;

    -f INACTIVE: 設定非活動期限;



#id [OPTION]... [USER]

-u: UID

-g: GID

-G: Groups

-n: Name


#su[options...] [-] [user [args...]]

-l 相當於'-'


切換用戶的方式:

#su UserName:非登錄式切換,即不會讀取目標用戶的配置文件,不改變當前工作目錄

#su - UserName:登錄式切換,會讀取目標用戶的配置文件,切換至家目錄,完全切換


root su至其他用戶無須密碼;非root用戶切換時需要密碼


換個身份執行命令:

su [-] UserName -c CMD



#passwd [OPTIONS] UserName: 修改指定用戶的密碼,僅root用戶權限

passwd      修改自己的密碼;

-l:鎖定指定用戶

-u:解鎖指定用戶 -f 強制執行

-e:強制用戶下次登錄修改密碼

-n mindays: 指定最短使用期限

-x maxdays:最大使用期限

-w warndays:提前多少天開始警告

-iinactivedays:非活動期限;

--stdin:從標準輸入接收用戶密碼;

echo "PASSWORD" | passwd --stdin USERNAME



#chage[OPTION]... LOGIN  更改賬號密碼有效期

-d  LAST_DAY  上一次更改的日期

-E  --expiredateEXPIRE_DATE  帳號到期的日期。過了這天,此帳號將不可用。

-I  --inactive INACTIVE   停滯時期。如果一個密碼已過期這些天,那麼此帳號將不可用。

-m  --mindaysMIN_DAYS   密碼可更改的最小天數。爲零時代表任何時候都可以更改密碼。

-M  --maxdaysMAX_DAYS   密碼保持有效的最大天數。

-W  --warndaysWARN_DAYS  用戶密碼到期前,提前收到警告信息的天數。

-l   例出當前的設置。由非特權用戶來確定他們的密碼或帳號何時過期。

*   組:groupadd [OPTION]... GROUP  添加組

-g GID: 指明GID號;[GID_MIN, GID_MAX]

-r: 創建系統組;


#groupmod [OPTION]... GROUP  編輯組

-n group_name: 新名字

-g GID: 新的GID;


#groupdel GROUP:刪除組


#gpasswd [OPTION] GROUP       更改組密碼

-a user: 將user添加至指定組中;   普通用戶必須先 成爲組管理員

-d user: 從指定組中移除用戶user;   普通用戶必須先 成爲組管理員

-A user1,user2,...: 設置有管理權限的用戶列表  root可設置



#groupmems [options] [action] 更改組成員  root可用

-g, --group groupname更改爲指定組

 動作:

-a, --add uname 指定用戶加入組

-d, --delete uname 從組中刪除用戶

-p, --purge 從組中清除所有成員

-l, --list 顯示組成員列表


#newgrp命令:臨時切換基本組;

如果用戶本不屬於此組,則需要組密碼




#chown [OPTION]... [OWNER][:[GROUP]] FILE... 改變文件屬主 屬組

-R: 遞歸

命令中的冒號可用.替換;

#chown [OPTION]... --reference=RFILE FILE...複製 一個文件的屬主


#chgrp [OPTION]... GROUP FILE...修改文件的屬組

-R 遞歸

#chgrp [OPTION]... --reference=RFILE FILE...  複製 一個文件的屬組

chmod[OPTION]... OCTAL-MODE FILE...

-R: 遞歸修改權限

 chmod[OPTION]... MODE[,MODE]... FILE...


 chmod[OPTION]... --reference=RFILE FILE...

參考RFILE文件的權限,將FILE的修改爲同RFILE


*文件權限:

owner: 屬主, u

group: 屬組, g

other: 其他, o

  每個文件對每類訪問者定義了三種權限:

r: Readable

w: Writable

x: eXcutable

 對應:

rwx  r-x  r--  權限

111  101  100  二進制

  4+2+1 4+1   4   十進制    數字法不支持-X

 對文件:

r: 可使用文件查看類工具獲取其內容

w: 可修改其內容

x: 可以把此文件提請內核啓動爲一個進程

  對目錄:

r: 可以使用ls查看此目錄中文件列表   沒有  看不到列表

w: 可在此目錄中創建文件,也可刪除此目錄中的文件沒有  無法修改 刪除文件

x: 可以使用ls -l查看此目錄中文件列表,可以cd進入此目錄  沒有不能cd 和訪問

X:遞歸-R給權限時,只給目錄x權限,不給文件x權限

(文件本身沒有執行權限,否則會ugo加x)

  chmod -R g+rwX /testdir

普通用戶不可更改自己的屬主,可以更改包含自己的屬組

umask  目錄文件初始權限   轉換爲二進制與運算

umask ###  設置umask   /etc/bashrc   ~/.bashrc

目錄=777-umask

文件=666-umask   結果有奇數+1  偶數不變



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章