天天看點

Linux運維 第二階段 (四)使用者及使用者組管理

1、配置檔案(/etc/passwd,/etc/shadow,/etc/group,/etc/gshadow):

#whatis passwd

#man 5  passwd(配置檔案中各字段表示的内容)

account登入名:password密碼:UID:GID基本組ID:GECOS注釋comment:home  directory:shell使用者的預設shell

#man 5  shadow

account:encrypted  passwd加密的密碼:date of lastpassword change:minimum password age:maximum password age:password warningperiod:password inactivity period:account expiration date:reserved field

/etc/skel(模闆檔案目錄,skeleton骨骼,骨架,包括:.bashrc,.bash_logout,.bash_profile)

/etc/default/useradd(指定建立使用者時的某些預設值)

/etc/login.defs(指定建立使用者時的某些預設值)

2、使用者類别:

管理者:用0表示;

普通使用者(1-65535):系統使用者(1-499);一般使用者(500-65535)

使用者組類别:

管理者組;

普通組:系統組;一般組

注:私有組,建立使用者時如果沒有為其指定所屬的組,系統會自動為其建立一個與使用者名同名的組作為私有組或初始組;基本組,使用者的預設組;附加組,額外組,預設組以外的其它組。

3、指令:

使用者管理指令: useradd,userdel,usermod,id,passwd,chsh,chfn,chage

組管理指令:groupadd,groupdel,groupmod,gpasswd,newgrp

#useradd options  USERNAME

options:

-u UID(--uid,UID,添加使用者時UID預設從最後一個添加的使用者ID号加1,無論中間是否有未被使用的号)

-g GID(--gid,GID基本組,初始組)

-G GID(--groups,GID附加組)

-d /PATH/TO/SOMEDIRECTORY(--home,/path/to/somedirectory指定預設家目錄)

-s SHELL(--shell,SHELLPATH,/etc/shells檔案中指定了目前系統可用的安全shell,若使用者的shell不可用則無法切換,檢視目前使用者shell:#echo  $SHELL)

-m -k(--create-home,--skel,強制建立家目錄并将模闆目錄下的檔案複制到建立的家目錄中)

-M(不建立家目錄,但會應用配置檔案/etc/login.defs中的各項值)

#userdel options  USERNAME

#userdel -r  USERNAME(-r同時删除使用者家目錄及郵件目錄/var/spool/mail)

#id options  USERNAME

-u(--user顯示的是UID)

-g(--group,GID)

-u|-g -n(--name,與-u或-g合用,顯示名稱)

#usermod options  USERNAME

-u UID(--uid)

-g GID(--gid)

-a -G  GID(--apend添加使用者至一附加組,必須要與-G合用,否則會覆寫此前的附加組)

-c   “.....”(--comment,注釋資訊)

-d HOME_DIR  -m(--home,--move-home,既指定新的家目錄位置,又移動此前家目錄下的檔案到新指定的目錄下)

-s  SHELL(--shell)

-l NEW_LOGIN(--login,改變登入的使用者名)

-L(--lock鎖定賬号)

-U(--unlock解鎖)

#passwd (更改目前使用者密碼,RHS333加密機制)

#passwd options  USERNAME(更改指定使用者密碼,僅管理者使用)

--stdin(用于标準輸入,如#echo  “redhat” |  passwd  --stdin USERNAME)

-d(用于清空密碼,預設禁止空密碼登陸)

-l(鎖定賬号)

-u(解鎖)

#chsh USERNAME(change your login shell修改使用者的預設SHELL)

#chfn USERNAME(change your finger information修改注釋資訊)

#pwck(verify integrity ofpassword files檢查使用者賬号完整性)

#chage options  USERNAME

-d LAST_DAY(--lastday最近一次的修改時間)

-E EXPIRE_DATE(--expiredate過期時間)

-I INACTIVE(--inactive非活動時間)

-m MIN_DAYS(--mindays最短使用期限)

-M MAX_DAYS(--maxdays最長使用期限)

-W WARN_DAYS(--warndays警告時間)

#groupadd options  GROUPNAME

-r  (--system,添加為系統組)

#groupmod options  GROUPNAME

-n NEW_GROUPNAME(--new-name,更改組名)

#groupdel GROUPNAME

#gpasswd GROUPNAME(為組設密碼)

#newgrp GROUPNAME(從基本組臨時切換到其它組,可退出)

#su [-l]  USER(switch user)

#su user1(半切換)

#exit

#su -l  user1(完全切換,使用-l(--login)或-均可)

以上是學習《馬哥網絡視訊》做的筆記。

一、相關檔案

         》/etc/passwd                  使用者資訊檔案

         root:x:0:0:root:/root:bin/bash(以下依次為第1到第7字段)

         1、使用者名

         2、密碼标記

         3、uid:超級使用者root的uid為0,普通使用者要更新為管理者,uid改為0即可(不建議建立多個管理者賬号;1-499系統使用者uid(僞使用者),不能登入系統,用來運作系統或服務的,其中1-99是系統保留的賬号,自動建立,100-499是預留給使用者建立系統賬号的;500-65535普通使用者的uid,2.6核心之後uid可支援232

         4、gid:如果不指定使用者所屬的初始組,那麼會建立和使用者名相同的組

         5、使用者說明

         6、使用者家目錄

         7、登入shell

         》/etc/shadow                  影子檔案

         root:密碼位:15775:0:99999:7: : :         (以下依次為第1到第9字段)

         2、加密密碼:可在密碼前人為加入“!”或“*”讓密碼暫時失效,使這個使用者無法登入;所有僞使用者密碼都是“!!”或“*”代表沒有密碼不能登入,新建立的使用者不設密碼也是“!!”

         3、密碼最近更改時間:用時間戳顯示,以1970-01-01作為标準時間

時間戳轉日期:#date  -d  “1970-01-01  15775 days”

日期轉時間戳:#echo $(($(date  --date=”2015/04/28”  +%S)/86400 +1))

         4、兩次密碼的修改間隔時間(與3相比)

         5、密碼有效期(與3相比)

         6、密碼修改到期前的警告天數(和5相比)

         7、密碼過期後的寬限天數(和5相比)

         8、密碼失效時間,用時間戳表示

         9、保留

         》/etc/group                      組資訊檔案

         root:x:0:root

         1、組名

         2、組密碼位

         3、GID

         4、此組中支援其它使用者,附加組是此組的使用者

         》/etc/gshadow                組密碼檔案

         如果給使用者組設定了組管理者,并給該使用者組設定了組密碼,組密碼就儲存在這個檔案中,且管理者可利用這個密碼管理這個使用者組

         》使用者的家目錄

         》使用者郵箱目錄              /var/spool/mail

         》使用者模闆目錄               /etc/skel

         》手工删除使用者,需處理以下檔案

         /etc/passwd ;/etc/shadow; /etc/group;/etc/gshadow;/home/user;/var/spool/mail/user

         》useradd的預設值與/etc/default/useradd和/etc/login.defs有關

二、使用者管理指令

         #useradd   使用者名                     (常用)

         #useradd  -u|-g|-G|-c|-d|-s  使用者名

         #userdel  -r  使用者名                  (删除使用者,連帶家目錄一并删除)

         #passwd -l|-u  使用者名                 (#passwd回車修改目前使用者密碼,#passwd 使用者名,隻有root用,-l(lock),-u(unlock))

         #usermod  -u|-G|-c|-d|-s|-L|-U  使用者名(修改已存在的使用者資訊)

         #usermod  -l  新名  舊名            (使用者改名)

         #groupadd  組名

         #groupdel  組名

         #usermod  -G  組名 使用者名     (已存在的使用者加入組,注意以下幾條指令的差別)

         #gpasswd  -a  使用者名 組名

         #gpasswd  -d  使用者名 組名

三、使用者相關指令

         #id 使用者名                         (顯示使用者的UID初始組、附加組)

         #su -  使用者名                      (切換使用者身份,連帶環境變量一直切換)

         #newgrp group1                     (改變有效組的指令,有效組,建立新檔案時的預設屬組)

四、使用者權限賦予

         #groupadd  testgroup

         #gpasswd  -a aa  testgroup

         #chmod 770  /test

         #chgrp testgroup  /test

本文轉自 chaijowin 51CTO部落格,原文連結:http://blog.51cto.com/jowin/1641469,如需轉載請自行聯系原作者