用戶配置文件和密碼配置文件,用戶組管理,用戶管理,usermod命令,用戶密碼管理,mkpasswd命令
用戶配置文件和密碼配置文件
- cat /etc/passwd 能夠查看密碼配置文件
- passwd配置文件的每一行都是一個用戶,第一行是root用戶,下面是安裝系統時系統建立的一些用戶
- 每一行信息都由冒號 : 來分隔列,每隔一個冒號 : 就是新的一列信息
- 用root用戶行舉例,第一列是 root 用戶名信息
- 第二列表示密碼信息,全部用戶第二列都是 x ,由於密碼信息實際並不在這裏,用x暫代
- 第三列是用戶的uid信息,也就是說全部者的id,root uid 是0
- 第四列是用戶的gid信息,也就是說所屬組的id,root的gid是0
- 第五列表示註釋信息,沒有實質的做用,有些用戶第五列是空的
- 第六列是用戶的家目錄路徑信息,root的家目錄路徑就是 /root
- 第七列是用戶的shell路徑信息,用戶登陸通常都有一個交互界面
- 這個交互界面就是shell,人使用這個交互界面來與機器交互
- 通常用戶的交互界面都是 /bin/bash,若是shell信息顯示爲 /sbin/nologin ,那麼就不能夠登陸
- root行往下拉,chrony行下面,新創建的用戶信息會在chrony行下面出現
- 好比新建的 aming ,user1等用戶的信息就出如今chrony下面
- aming,user1,用戶的第五列註釋信息就是空的,什麼也沒寫,他們的shell都是 /bin/bash
- 他們的家目錄跟root不一樣,都在/home下面
- cat /etc/shadow 能夠查看存放用戶密碼的文件
- shadow文件跟passwd文件的每一行都是 一 一 對應的,passwd第一行是root,shadow第一行也是root
- passwd 最後一行是 user1,shadow 最後一行也是user1
- shadow文件裏面每一行信息也是用冒號 : 來分隔每一列
- shadow文件第一列與passwd的第一列同樣,是用戶名稱信息
- 第二列是用戶密碼信息,若是用戶沒有設置密碼,這一列就是空的,這裏存放的密碼是通過加密的,並且不能解密
- 想在同一行執行兩條命令,這兩條命令可使用分號 ; 來分隔
- 即便兩個用戶設置了相同的密碼,可是在shadow裏面記錄的加密密碼信息也是不同的
- 第三列信息是天數,是距離1970年1月1日,到密碼修改的這一天,有多少天的天數信息
- 第四列也是天數,最少多少天后才能更改密碼的天數,好比3,那麼3天后才能修改密碼
- 第五列也是天數,是指最多多少天后必須修改密碼,好比3,超過3天后密碼就不能修改了,3天內才能修改密碼
- 第六列也是天數,表明警告,提醒用戶,密碼將在多少天后過時
- 第七列也是天數,若是設置爲3,那麼當帳號密碼過時3天后,這個帳號就會被鎖定,不能再使用
- 第八列也是天數,設置距離1970年1月1日多少天后,就鎖定帳號,不能再使用
- 第九列是保留字段,沒有實際意義
用戶組管理
- cat /etc/group 查看組配置文件
- cat /etc/gshadow 查看組密碼配置文件
- 如圖所示,在shadow,gshadow,passwd,group等目錄裏面,除了shadow,gshadow,passwd,group等文件外,還有 shadow~,gshadow~,passwd~,group~等備份文件,這是源文件的備份,系統自動備份的
- 可是有時候數據不必定同樣,源文件修改以後,這個備份文件不必定會及時被修改
- groupadd grp1 建立一個叫作 grp1 的組
- groupadd -g 1005 grp2 建立一個叫作 grp2 的組,指定gid爲1005
- 參數 -g 1005 能夠指定gid爲1005, cantos7自定義id號必需要在1000以上,1000如下的爲系統保留
- groupdel grp1 能夠刪除用戶組 grp1
- 可是 groupdel user1 不能刪除用戶組 user1 ,由於user1組裏面有用戶存在
- groupdel 只能刪除空的用戶組,不能刪除非空用戶組
用戶管理
- 查看group組配置文件,能夠看到grp2組的信息,gid是1005
- 建立一個新用戶 user3,指定 user3 的uid爲1004 用戶組-g爲grp2組
- 參數 -u 1004能夠指定uid爲1004,-g 能夠指定用戶組爲grp2
- 查看passwd配置文件,能夠看到,user3用戶信息,uid=1004,gid=1005, grp2的gid就是1005
- user3的gid與grp2的gid是一致的
- 除了能夠指定uid和gid以外,還能夠指定家目錄跟shell
- 如圖所示,-d 參數能夠指定用戶家目錄爲 /home/aming111
- 參數 -s 能夠指定用戶的shell爲 /sbin/nologin
- 查看passwd文件能夠看到,user4的用戶家目錄爲 /home/aming111,shell爲/sbin/nologin
- 如圖所示,-M 參數能夠指定不建立用戶家目錄
- 使用 -M 參數建立 user5 以後,查看passwd文件能夠看到,user5的家目錄是/home/user5
- 可是查看home目錄,home目錄裏面並無user5目錄存在
- 這就是-M的做用,建立用戶後,用戶信息有家目錄信息存在,可是實際並不建立這個目錄
- 關於建立用戶後,默認的uid跟gid
- 若是建立的時候,沒有特別指定uid,那麼默認uid會根據上一條用戶的uid信息自動增長1
- 若是指定了uid,那麼uid就爲指定的數值,可是不能夠與已經存在的用戶uid一致
- 而gid的狀況又有一些不一樣
- 若是沒有特別指定gid的狀況下,建立的新用戶gid會根據uid自動增長
- 好比已經存在用戶組grp3,gid=1003
- 我建立一個uid=1003的新用戶,通常來講,gid也會等於1003
- 可是由於已經存在gid=1003的用戶組grp3,因此這個時候,gid會自動增加爲1004
- 若是指定了用戶組的話,那麼gid就等於指定用戶組的gid
- 建立用戶的時候,可使用useradd, 也可使用adduser,效果同樣
- 使用userdel user8 就能夠把user8用戶刪除
- 可是這樣刪除用戶後,user8的家目錄/home/user8目錄並無被刪除
- 由於centos7設計時考慮家目錄可能有重要文件,爲了防止誤刪除,家目錄讓管理員手動刪除
- 如圖,實際仍是能夠在刪除用戶的時候,把家目錄也一塊兒刪除的
- 使用 -r 參數就能夠在刪除用戶的同時,把用戶家目錄也一塊兒刪除
- 刪除user7用戶後,查看/hmoe目錄,user7目錄也不見了
usermod命令
- usermod能夠更改用戶屬性,
- 使用 usermod 能夠更改用戶uid,如圖,-u參數能夠更改uid
- 參數-g 能夠更改用戶gid或者更改成指定的用戶組
- 參數 -d 能夠更改用戶家目錄,參數 -s 能夠更改用戶shell
- 還有一個參數 -G 能夠更改用戶擴展組
- 一個用戶只能有一個gid,可是一個用戶能夠屬於多個用戶組,除了gid所屬的用戶組以外
- 其它用戶組就會在擴展組裏面顯示
- 如圖,使用 usermod -G grp2 aming 就能夠把grp2用戶組添加到用戶aming的擴展組裏面
- aming的擴展組有兩個用戶組, aming 和 grp2
- 若是再使用一次 usermod -G user5 ,那麼grp2會被替換爲user5
- 若是想同時將grp2組和user5組添加到aming的擴展組裏面
- 可使用 usermod -G grp2,user5 aming
- 就是在使用-G參數的時候,同時將兩個組都寫出來,這樣就能夠同時添加兩個組進入擴展組裏面去
- 參數 -g 只能修改gid不能修改擴展組
用戶密碼管理
- cat /etc/shadow 查看shadow文件,看第二列密碼位置
- 能夠發現有一些行的第二列是 !! 或者 *
- 兩個感嘆號!! 表明密碼爲空,這些用戶是不能登陸的
- 星號* 表明密碼被鎖定了,也是不能使用了
- 查看用戶信息若是發現密碼處是以上兩種狀況就知道這個用戶是有問題的
- 使用參數 -l 就能夠鎖定用戶,如圖所示,passwd -l user5 就把user5鎖定了
- 如圖,把aming帳號鎖定,在查看aming的用戶信息
- 能夠看到,aming用戶原來的密碼前面多了兩個感嘆號 !! 這就表示這個密碼被鎖定了
- 使用 -u 參數就能夠解鎖用戶密碼,如圖,passwd -u aming 這樣就解鎖了aming用戶
- 查看用戶信息,能夠看到aming密碼前面的感嘆號 !! 已經消失
- 還可使用 usermod -L aming 來鎖定aming用戶
- 能夠看到,aming用戶信息密碼處,前面多了一個感嘆號 !
- 因此,只要看到用戶信息密碼前面有感嘆號,就知道這個用戶被鎖定了
- 解鎖可使用 usermod -U aming 來解鎖
- 能夠看到aming的密碼前面的感嘆號消失了
mkpasswd命令
- 默認不存在這個命令,須要安裝包
- yum install -y expect 使用這個命令安裝包
- mkpasswd 能夠生成隨機密碼,默認是9位,包含數字,字母,特殊字符
- 直接使用mkpasswd就能夠生成9位密碼
- mkpasswd -l 12 能夠指定密碼長度爲12,-l參數能夠指定生成的密碼長度
- 還能夠指定特殊字符個數,參數-s就能夠指定特殊字符個數
- passwd -l 12 -s 3 就會生成12位3個特殊字符的隨機密碼
- passwd -l 12 -s 0 就會生成12位0個特殊字符的隨機密碼,就是沒有特殊字符
歡迎關注本站公眾號,獲取更多信息