用戶和組相關的配置文件
目錄
一、創建用戶、組和權限相關命令… 1
1、useradd 帳號建立… 1
2、usermod 用戶屬性更改… 2
3、Passwd. 2
4、userdel 2
6、chfn. 3
7、Chsh. 3
8、finger. 3
9、groupadd. 3
10、Groupdel 3
11、groupmod. 3
12、gpasswd. 4
13、Id. 4
14、groups. 4
二、用戶、組相關配置文件… 4
1、/etc/passwd. 4
2、/etc/shadow.. 5
3、/etc/group. 5
3.1 /etc/group 內容具體分析… 6
4、/etc/gshadow 解說… 6
一、創建用戶、組和權限相關命令
1、useradd 帳號建立
-c<備注>:加上備注文字。描述信息
-d<登入目錄>:指定用戶主目錄;
-e<有效期限>:指定帳號的有效期限;
-f<緩沖天數>:指定在密碼過期后多少天即關閉該帳號;
-g<群組>:指定用戶所屬的主組;
-G<群組>:指定用戶所屬的附加組;
-m:自動建立用戶的登入目錄;
-M:不要自動建立用戶的登入目錄;
-n:取消建立以用戶名稱為名的群組;
-r:建立系統帳號;
-s<shell>:指定用戶登入后所使用的shell;
-u<uid>:指定用戶id。
-N 不創建私用組做主組,使用users組做主組
-r: 創建系統用戶 CentOS 6: ID<500,CentOS 7: ID<1000
2、usermod 用戶屬性更改
? 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: 設定非活動期限;
3、Passwd
?passwd [OPTIONS] UserName: 修改指定用戶的密碼,僅root用戶權限passwd
修改自己的密碼;
常用選項:
-l:鎖定指定用戶
-u:解鎖指定用戶
-e:強制用戶下次登錄修改密碼
-n mindays: 指定最短使用期限
-x maxdays:最大使用期限
-w warndays:提前多少天開始警告
-i inactivedays:非活動期限;
–stdin:從標準輸入接收用戶密碼;
echo "PASSWORD" | passwd –stdin USERNAME
4、userde -r: 刪除用戶家目錄;
5、chage
-d LAST_DAY
-E, –expiredate EXPIRE_DATE
-I, –inactive INACTIVE
-m, –mindays MIN_DAYS
-M, –maxdays MAX_DAYS
-W, –warndays WARN_DAYS
–l,顯示密碼策略
示例:
chage -d 0 tom 下一次登錄強制重設密碼
chage -m 0 –M 42 –W 14 –I 7 tom
chage -E 2016-09-10 tom
6、chfn 指定用戶信息
7、Chsh 指定shell
8、finger
查找并顯示用戶信息
-l:列出該用戶的帳號名稱,真實姓名,用戶專屬目錄,登入所用的Shell,登入時間,轉信地址,
電子郵件狀態,還有計劃文件和方案文件內容;
-m:排除查找用戶的真實姓名;
-s:列出該用戶的帳號名稱,真實姓名,登入終端機,閑置時間,登入時間以及地址和電話;
-p:列出該用戶的帳號名稱,真實姓名,用戶專屬目錄,登入所用的Shell,登入時間,轉信地址,
電子郵件狀態,但不顯示該用戶的計劃文件和方案文件內容。
9、groupadd
用于創建一個新的工作組,新工作組的信息將被添加到系統文件中。
-g:指定新建工作組的id;
-r:創建系統工作組,系統工作組的組ID小于500;
-K:覆蓋配置文件“/ect/login.defs”;
-o:允許添加組ID號不唯一的工作組。
10、Groupdel
用于刪除指定的工作組,本命令要修改的系統文件包括/ect/group和/ect/gshadow。若該群組中仍
包括某些用戶,則必須先刪除這些用戶后,方能刪除群組。
11、groupmod
更改群組識別碼或名稱。需要更改群組的識別碼或名稱時,可用groupmod
指令來完成這項工作。
g<群組識別碼>:設置欲使用的群組識別碼;
-o:重復使用群組識別碼;
-n<新群組名稱>:設置欲使用的群組名稱。
12、gpasswd
修改組密碼管理用戶組。
-a:添加用戶到組;
-d:從組刪除用戶;
-A:指定管理員;
-M:指定組成員和-A的用途差不多;
-r:刪除密碼;
-R:限制用戶登入組,只有組中的成員才可以用newgrp加入該組。
13、Id
顯示指定用戶或當前用戶(當未指定用戶時)的用戶與組信息。
-g或–group 顯示用戶所屬群組的ID。
-G或–groups 顯示用戶所屬附加群組的ID。
-n或–name 顯示用戶,所屬群組或附加群組的名稱。
-r或–real 顯示實際ID。
-u或–user 顯示用戶ID。
-help 顯示幫助。
-version 顯示版本信息。
14、group 顯示用戶所在的組
二、用戶、組相關配置文件
1、/etc/passwd
在/etc/passwd 中,每一行都表示的是一個用戶的信息;一行有7個段位;每個段位用:號分割,比如下面是
我的系統中的/etc/passwd 的兩行;
beinan:x:500:500:beinan sun:/home/beinan:/bin/bash
linuxsir:x:505:502:linuxsir open,linuxsir office,13898667715:/home/linuxsir:/bin/bash
beinan:x:500:500:beinan sun:/home/beinan:/bin/bash
linuxsir:x:501:502::/home/linuxsir:/bin/bash
第一字段:用戶名(也被稱為登錄名);在上面的例子中,我們看到這兩個用戶的用戶名分別是 beinan 和linuxsir;
第二字段:口令;在例子中我們看到的是一個x,其實密碼已被映射到/etc/shadow 文件中;
第三字段:UID ;請參看本文的UID的解說;
第四字段:GID;請參看本文的GID的解說;
第五字段:用戶名全稱,這是可選的,可以不設置,在beinan這個用戶中,用戶的全稱是beinan sun ;而linuxsir
這個用戶是沒有設置全稱;
第六字段:用戶的家目錄所在位置;beinan 這個用戶是/home/beinan ,而linuxsir 這個用戶是/home/linuxsir ;
第七字段:用戶所用SHELL 的類型,beinan和linuxsir 都用的是 bash ;所以設置為/bin/bash ;
2、/etc/shadow
/etc/shadow 的內容分析;
/etc/shadow 文件的內容包括9個段位,每個段位之間用:號分割;我們以如下的例子說明;
root:$6$gFokRPqvkR6xYILo$jj96SnqDa8R0MCoDbRRRntFzvPhRIWfiepMsnY3KKf8oKmPKnah0PdQVvTN5clkhn9nDBrlC0widkPHjG7ADp.:16968:0:99999:7:::
linuxsir:$1$IPDvUhXP$8R6J/VtPXvLyXxhLWPrnt/:13072:0:99999:7::13108:
第一字段:用戶名(也被稱為登錄名),在/etc/shadow中,用戶名和/etc/passwd 是相同的,這樣就把passwd 和shadow中
用的用戶記錄聯系在一起;這個字段是非空的;
第二字段:密碼(已被加密)$6 表示加密類型 $gFokRPqvkR6xYILo$表示“鹽”
加“鹽”后及時兩個用戶使用相同密碼加密后密文也不相同 系統默認“鹽”為系統時間。
第三字段:上次修改口令的時間;這個時間是從1970年01月01日算起到最近一次修改口令的時間間隔(天數),您可以通過passwd 來
修改用戶的密碼,然后查看/etc/shadow中此字段的變化;
第四字段:兩次修改口令間隔最少的天數;如果設置為0,則禁用此功能;也就是說用戶必須經過多少天才能修改其口令;此項功能用
處不是太大;默認值是通過/etc/login.defs文件定義中獲取,PASS_MIN_DAYS 中有定義;
第五字段:兩次修改口令間隔最多的天數;這個能增強管理員管理用戶口令的時效性,應該說在增強了系統的安全性;如果是系統默
認值,是在添加用戶時由/etc/login.defs文件定義中獲取,在PASS_MAX_DAYS 中定義;
第六字段:提前多少天警告用戶口令將過期;當用戶登錄系統后,系統登錄程序提醒用戶口令將要作廢;如果是系統默認值,是在添
加用戶時由/etc/login.defs文件定義中獲取,在PASS_WARN_AGE 中定義;
第七字段:在口令過期之后多少天禁用此用戶;此字段表示用戶口令作廢多少天后,系統會禁用此用戶,也就是說系統會不能再讓此用
戶登錄,也不會提示用戶過期,是完全禁用;
第八字段:用戶過期日期;此字段指定了用戶作廢的天數(從1970年的1月1日開始的天數),如果這個字段的值為空,帳號永久可用;
第九字段:保留字段,目前為空,以備將來Linux發展之用;如果更為詳細的,請用 man shadow來查看幫助,您會得到更為詳盡的資料;
3、/etc/group
/etc/group 文件是用戶組的配置文件,內容包括用戶和用戶組,并且能顯示出用戶是歸屬哪個用戶組或哪幾個用戶組,
因為一個用戶可以歸屬一個或多個不同的用戶組;同一用戶組的用戶之間具有相似的特征。比如我們把某一用戶加入到root用戶組,那么
這個用戶就可以瀏覽root用戶家目錄的文件,如果root用戶把某個文件的讀寫執行權限開放,root用戶組的所有用戶都可以修改此文件,
如果是可執行的文件(比如腳本),root用戶組的用戶也是可以執行的;用戶組的特性在系統管理中為系統管理員提供了極大的方便,
但安全性也是值得關注的,如某個用戶下有對系統管理有最重要的內容,最好讓用戶擁有獨立的用戶組,或者是把用戶下的文件的權限
設置為完全私有;另外root用戶組一般不要輕易把普通用戶加入進去.
3.1 /etc/group 內容具體分析
/etc/group 的內容包括用戶組(Group)、用戶組口令、GID及該用戶組所包含的用戶(User),
每個用戶組一條記錄;格式如下:
group_name:passwd:GID:user_list在/etc/group 中的每條記錄分四個字段:
第一字段:用戶組名稱;
第二字段:用戶組密碼;
第三字段:GID
第四字段:用戶列表,每個用戶之間用,號分割;本字段可以為空;如果字段為空表示用戶組為GID的
用戶名;我們舉個例子:
root:x:0:root,linuxsir 注:用戶組root,x是密碼段,表示沒有設置密碼,GID
是0,root用戶組下包括root、linuxsir以及GID為0的其它用戶(可以通過/etc/passwd查看);
4、/etc/gshadow 解說
/etc/gshadow是/etc/group的加密資訊文件,比如用戶組(Group)管理密碼就是存放在這個文件。/etc/gshadow
和/etc/group是互補的兩個文件;對于大型服務器,針對很多用戶和組,定制一些關系結構比較復雜的權限模型,設置用
戶組密碼是極有必要的。比如我們不想讓一些非用戶組成員永久擁有用戶組的權限和特性,這時我們可以通過密碼驗證的
方式來讓某些用戶臨時擁有一些用戶組特性,這時就要用到用戶組密碼; /etc/gshadow 格式如下,每個用戶組獨占一行;
groupname:password:admin,admin,…:member,member,…
第一字段:用戶組
第二字段:用戶組密碼,這個段可以是空的或!,如果是空的或有!,表示沒有密碼;
第三字段:用戶組管理者這個字段也可為空,如果有多個用戶組管理者,用,號分割;
第四字段:組成員,如果有多個成員,用,號分割;
舉例:
beinan:!::linuxsir
linuxsir:oUS/q7NH75RhQ::linuxsir
第一字段:這個例子中,有兩個用戶組beinan用linuxsir
第二字段:用戶組的密碼,beinan用戶組無密碼;linuxsir用戶組有已經,已經加密;
第三字段:用戶組管理者,兩者都為空;
第四字段:beinan用戶組所擁有的成員是linuxsir ,然后還要對照一下/etc/group和/etc/passwd 查看是否還有其它
用戶,一般默認添加的用戶,有時同時也會創建用戶組和用戶名同名稱;
原創文章,作者:秋季,如若轉載,請注明出處:http://www.www58058.com/53893