賬號管理

一.用戶和用戶組     

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

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

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

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

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

1. /etc/passwd文件結構

[zhang@localhost ~]$ grep zhang /etc/passwd
zhang:x:500:500:zhang:/home/zhang:/bin/bash

    login name:登錄用名(wang)

    passwd:密碼(x)

    UID:用戶身份編號(1000)

    GID:登錄默認所在組編號(1000)

    GECOS:用戶全名或註釋

    home directory:用戶主目錄(/home/wang)

    shell:用戶默認使用shell (/bin/bash)

2./etc/group文件結構

[zhang@localhost ~]$ grep zhang /etc/group
zhang:x:500:

    羣組名

    羣組密碼

    GID

3./etc/shadow文件結構

[root@localhost /]# grep zhang /etc/shadow

zhang:$6$Vz/vlzvJ$iZKI7R7/OsdoMxGcn3sL8co2X50p4Nu.HApyLyTI0cdkd5cYNB0jJYJlOoaKUd6QqQf5oI2g48b1MTVGUOm.X1:17011:0:99999:7:::           

    登錄用名

    用戶密碼:一般用sha512加密

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

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

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

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

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

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

4./etc/gshadow

[root@localhost /]# head -3 /etc/gshadow
root:::
bin:::bin,daemon
daemon:::bin,daemon

    用戶組名

    密碼列,開頭爲!表示無合法密碼,所以無用戶管理員

    用戶組管理員的賬號

    該用戶組的所屬賬號


二.賬號管理

   要實現用戶的管理,要完成以下幾個方面,用戶賬戶的添加/刪除與修改,用戶口令的管理,用戶組的管理.

1.useradd

   useradd[options] LOGIN

   選項:

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

     -o 配合-u 選項,不檢查UID的唯一性

     -g GID:指定用戶登錄組的GID或組名

     -c "COMMENT":給新用戶添加備註

     -d HOME_DIR:指定用戶的家目錄,如果此目錄不存在,則使用-m選項,可以創建家目錄.

     -s SHELL: 指明用戶的默認shell程序  可用列表在/etc/shells文件中

     -G GROUP1[,GROUP2,...]:指定用戶所屬的附加組,組必須事先存在

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

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

實例:

(1)創建用戶gentoo,附加用戶組爲zhang,默認shell爲/bin/csh,註釋信息爲"GentooDistribution"   

[root@localhost /]# useradd -G zhang -s /bin/csh -c "GentooDistribution" gentoo

(2)創建用戶Tom,指定家目錄爲/usr/Tom

[root@centos7 ~]# useradd -d /usr/tom -m tom  (目錄不存在可以用-m選項)

  userdel

  userdel 選項 用戶名

  常用選項:

     -r:把用戶的主目錄一起刪除

實例:

刪除用戶sam

 [root@centos7 ~]# userdel tom
[root@centos7 ~]# ls /home/
123  test  zhang  zhangx

注意:(刪除/etc/passwd,/etc/shadow,/etc/group的記錄),同時刪除用戶的主目錄

  usermod

   usermod [ options ] LOGIN

   選項:

    - a:把用戶追加到某些組中,僅與-G選項一起使用

    - c:修改/etc/passwd文件第五段comment

    - d:修改用戶的家目錄通常和-m選項一起使用

    - e:指定用戶帳號禁用的日期,格式YY-MM-DD

    - f:用戶密碼過期多少天后採用就禁用該帳號,0表示密碼已過期就禁用帳號,-1表示禁用此功能,默認值是-1

    - g:修改用戶的gid,改組一定存

    - G:把用戶追加到某些組中,僅與-a選項一起使用

    - l:修改用戶的登錄名稱

    - L:鎖定用戶的密碼

    - m:修改用戶的家目錄通常和-d選項一起使用

    - s:修改用戶的shell

    - u:修改用戶的uid,該uid必須唯一

    - U:解鎖用戶的密碼,將!去掉

實例

用戶密碼在2016/8/1號失效

[root@centos7 ~]# usermod -e "2016-8-1" sam

把sam修改爲tom

[root@centos7 ~]# usermod -l tom sam

  passwd[--stdin]

  選項:

    -l:是lock的意思,會將?etc/shadow第二列最前面加上!是密碼失效

    -u:與l相對,是unlock的意思

    -S:列出密碼相關參數,即shadow文件內的大部分信息

    -n:後面接天數,shadow的第四字段,多久不可修改密碼

    -x:後面接天數,shadow的第五字段,多久內必須要改動密碼

    -w:後面接天數,shadow的第6字段,密碼過期前的警告天數

    -i:後面接日期,shadow的第七字段,密碼失效日期

實例:

(1)查看tom賬號,並讓它失效

[root@centos7 ~]# passwd -S tom
tom PS 2016-07-31 0 99999 7 -1 (Password set, SHA512 crypt.)
[root@centos7 ~]# passwd -l tom
Locking password for user tom.

(2)使用standard input 新建用戶密碼

[root@centos7 ~]# echo test |passwd --stdin tom
Changing password for user tom.
passwd: all authentication tokens updated successfully.


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