管理Linux服務器用戶和組


一:用戶賬戶文件和組群文件
1:理解賬戶文件:/etc/passwd

2:在Linux系統中,所創建的用戶賬戶及其相關信息(密碼除外)均放在/etc/passwd配置文件中,
用vim編輯器(或者使用cat /etc/passwd)打開passwd文件。

   [dengzhaoxu@calm ~]$ cat -b /etc/passwd
     1    root:x:0:0:root:/root:/bin/bash
     2    bin:x:1:1:bin:/bin:/sbin/nologin
     3    daemon:x:2:2:daemon:/sbin:/sbin/nologin
     4    adm:x:3:4:adm:/var/adm:/sbin/nologin
     5    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
     6    sync:x:5:0:sync:/sbin:/bin/sync
     7    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
     8    halt:x:7:0:halt:/sbin:/sbin/halt
3:passwd文件的每一行都代表着一個用戶,每一行用“:”分7個域
    //格式   用戶名:加密口令:UID:GID:用戶的描述信息:主目錄:命令解釋器(登陸shell)

4:創建新用戶並將其加入群組。將user_s1和user_s2加入到user中.
  [dengzhaoxu@calm ~]$ su root
密碼:
[root@calm dengzhaoxu]# useradd user
[root@calm dengzhaoxu]# useradd user_s1
[root@calm dengzhaoxu]# useradd user_s2
[root@calm dengzhaoxu]# useradd -G user user_s1
useradd:用戶“user_s1”已存在
[root@calm dengzhaoxu]# useradd -G user user_s2
useradd:用戶“user_s2”已存在


二:etc/shadow文件:
  1:由於所有用戶對/etc/passwd文件均有讀取權限,為了增強系統的安全性,用戶經過加密之后的口令都
  存放在/etc/shadow文件中。/etc/shadow文件只對root用戶可讀,因而大大提高了系統的安全性。
  2:shadow文件的每一行也用“:”分為9個域。
  sshd:!!:18255::::::
  avahi:!!:18255::::::
  postgres:!!:18255::::::
  postfix:!!:18255::::::
  ntp:!!:18255::::::
  tcpdump:!!:18255::::::
  
三:理解組群文件:
  1:組群賬戶的信息存放在/etc/group(查看不受限制)文件中,而關於組群管理的信息(組群口令、組群管理員等)
  則存放在/etc/gshadow(該文件只能root可以查看)文件中。
[root@calm dengzhaoxu]# cat /etc/group
  root:x:0:   //文件每行分為四個域。
  bin:x:1:  //格式 組群名稱:組群口令(一般為空用x占位):GID:組群成員列表
  daemon:x:2:
  sys:x:3:
  adm:x:4:
  tty:x:5:

  [root@calm dengzhaoxu]# cat /etc/gshadow
  root:::
  bin:::
  daemon:::
  sys:::
  adm:::
  tty:::
  disk:::
四:管理用戶賬戶:
  1:新建用戶:在系統新建用戶可以使用useradd或者adduser命令。
  useradd命令的格式:useradd [選項] <user_Name>

  2:選項:
選項 說明
-s  shell 指定用戶的登陸shell,默認為bin/bash
-c  comment 用戶的注釋信息
-d home_dir 指定用戶的主目錄
-e  expire_date 禁用帳號的日期:格式為:YYYY-WW-DD
- u UID 指定用戶的UID,他必須是唯一的,且必須要大於499
-p passwd 加密的口令
- g initial_group 用戶所屬主組群的組群名稱或者GID

  3:新建用戶user3,UID為1010,指定其所屬的私有組為group1(group1組的標識符為1010),用戶的主目錄為/home/user3,
  用戶的shell為/bin/bash,用戶的密碼為123456,賬戶永不過期。
  [root@calm dengzhaoxu]# groupadd -g 1010 group1   //新建組群group1
  [root@calm dengzhaoxu]# useradd -u 1010 -g 1000 -d /home/user1 -s /bin/bash -p 123456 -f -1 user1
    
  4:設置用戶賬戶口令:
  指定和修改用戶賬戶口令的命令是passwd。超級用戶可以為自己和其他用戶設置口令,而普通用戶只能為自己設置口令。
  passwd命令的格式為:passwd [選項] [用戶名字]
  [root@calm dengzhaoxu]# useradd -u 1010 -g 1000 -d /home/user3 -s /bin/bash -p 123456 -f -1 user3
[root@calm dengzhaoxu]# passwd user3
更改用戶 user3 的密碼 。
新的 密碼:
無效的密碼: 密碼少於 8 個字符
重新輸入新的 密碼:
抱歉,密碼不匹配。
新的 密碼:
無效的密碼: 密碼未通過字典檢查 - 過於簡單化/系統化
重新輸入新的 密碼:
抱歉,密碼不匹配。
新的 密碼:
重新輸入新的 密碼:
passwd:所有的身份驗證令牌已經成功更新。

[root@calm dengzhaoxu]# passwd -n 10 user_s3    //-n:表示指定口令最短的存活期為10天。
調整用戶密碼老化數據user_s3。
passwd: 操作成功
[root@calm dengzhaoxu]# passwd -n 10 -x 12 user_s3  //最短10天最長12(-x:表示最長)天
調整用戶密碼老化數據user_s3。
passwd: 操作成功
[root@calm dengzhaoxu]#

5:chage命令:要修改用戶賬戶口令,也可以用chage命令實現
語法格式:chage [選項] username

設置user_s3用戶的最短口令存活期為6天,最長口令存活期為60天,口令到期前5天提醒用戶修改口令。設置完成后查看各屬性值。
[root@calm dengzhaoxu]# chage -m 6 -M 60 -W 5 user_s3
[root@calm dengzhaoxu]# chage -L user1
chage:無效選項 -- L
用法:chage [選項] 登錄
選項:
  -d, --lastday 最近日期        將最近一次密碼設置時間設為“最近日期”
  -E, --expiredate 過期日期     將帳戶過期時間設為“過期日期”
  -h, --help                    顯示此幫助信息並推出
  -I, --inactive INACITVE       過期 INACTIVE 天數后,設定密碼為失效狀態
  -l, --list                    顯示帳戶年齡信息
  -m, --mindays 最小天數        將兩次改變密碼之間相距的最小天數設為“最小天數”
  -M, --maxdays 最大天數        將兩次改變密碼之間相距的最大天數設為“最大天數”
  -R, --root CHROOT_DIR         chroot 到的目錄
  -W, --warndays 警告天數       將過期警告天數設為“警告天數” 
 [root@calm dengzhaoxu]# chage -l user_s3
 最近一次密碼修改時間                    :2月 10, 2020
 密碼過期時間                    :4月 10, 2020
 密碼失效時間                    :從不
 帳戶過期時間                        :從不
 兩次改變密碼之間相距的最小天數        :6
 兩次改變密碼之間相距的最大天數        :60
 在密碼過期之前警告的天數    :5

 五:維護用戶賬戶:
  1:usermod命令:
    usermod命令用於修改用戶的屬性,格式為“usermod [選項] 用戶名”。
    [root@calm dengzhaoxu]# id user_s3  //查看user_s3的部分信息。
      uid=1011(user_s3) gid=1011(user_s3) 組=1011(user_s3)
[root@calm dengzhaoxu]# id user_s3
uid=1011(user_s3) gid=1011(user_s3) 組=1011(user_s3)
[root@calm dengzhaoxu]# usermod -G root user_s3  //-G:變更擴展用戶組
[root@calm dengzhaoxu]# id user_s3
uid=1011(user_s3) gid=1011(user_s3) 組=1011(user_s3),0(root)
[root@calm dengzhaoxu]# usermod -u 8888 user_s3  //修改UID
[root@calm dengzhaoxu]# id user_s3
uid=8888(user_s3) gid=1011(user_s3) 組=1011(user_s3),0(root)  
[root@calm dengzhaoxu]#

  2:禁用用戶和刪除用戶:有時需要臨時禁用一個賬戶而不刪除它。禁用用戶賬戶可以用passwd或usermod命令實現,
  也可以直接修改/etc/passwd或/etc/shadow文件。
  [root@calm dengzhaoxu]# passwd -l user_s3 //-l命令禁用
  鎖定用戶 user_s3 的密碼 。
  passwd: 操作成功
  [root@calm dengzhaoxu]# tail -1 /etc/shadow  //tail:命令查看
  user_s3:!!:18302:6:60:5:::
  [root@calm dengzhaoxu]# passwd -u user_s3  //-u 命令解鎖
  解鎖用戶 user_s3 的密碼。
  passwd: 警告:未鎖定的密碼將是空的。
  passwd: 不安全的操作(使用 -f 參數強制進行該操作)

  3:userdel命令:
  要刪除一個賬戶,可以直接刪除/etc/passwd和/etc/shadow文件中要刪除的用戶所對應的行,或者用userdel命令刪除。
  userdel格式:userdel [-r] username
  -r:如果不加-r選項,userdel命令會在系統中所有與賬戶有關的文件中(例如/etc/passwd,/etc/shadow,/etc/group)
  將用戶的信息全部刪除。如果加-r選項,則在刪除用戶賬戶的同時,還將用戶主目錄以及其下的所有文件和目錄全部刪除掉。另外,
  如果用戶使用E-mail的話,同時也將/var/spool/mail目錄下的用戶文件刪掉。

六:管理組群:組群管理包括新建組群、維護組群賬戶和為組群添加用戶等內容。
  1:創建組群:
[root@calm dengzhaoxu]# groupadd testgroup
[root@calm dengzhaoxu]# groupadd testgroup
groupadd:“testgroup”組已存在

  2:刪除組群:需要注意的是,如果要刪除的組群是某個用戶的主組群,則該組群不能被刪除。
[root@calm dengzhaoxu]# groupdel testgroup

  3:修改組群:
命令格式:groupmod [選項] groupName
[root@calm dengzhaoxu]# groupadd testgroup
[root@calm dengzhaoxu]# groupmod -g 1002 testgroup //
groupmod:GID “1002”已經存在
[root@calm dengzhaoxu]# groupmod -g 10112 testgroup //-g:表示修改組群的GID為10112
[root@calm dengzhaoxu]# groupmod -n testGroup testgroup //修改組群名字

  4:為組群添加新用戶:在Red Hat Linux中使用不帶任何參數的useradd命令創建用戶時,會同時創建一個和用戶賬戶同名的組群,
  稱為主組群。當一個組群中必須包含多個用戶時,則需要使用附屬組群。在附屬組中增加、刪除用戶都用gpasswd命令。
  命令格式:gpasswd [選項] 用戶 組
  [root@calm dengzhaoxu]# useradd -u 10101 -g 10002 -d /home/user4 -s /bin/bash -p 123456 -f -1 user4
  useradd:“10002”組不存在
  [root@calm dengzhaoxu]# useradd -u 10101 -g 1002 -d /home/user4 -s /bin/bash -p 123456 -f -1 user4
  [root@calm dengzhaoxu]# id user4
  uid=10101(user4) gid=1002(user_s1) 組=1002(user_s1)
  [root@calm dengzhaoxu]# gpasswd -a user4 testGroup //創建ueser4時就創建了一個名為user4的主組,-a:表示將用戶加入到附屬組testGroup中。
  正在將用戶“user4”加入到“testGroup”組中
   [root@calm dengzhaoxu]#
七:使用用戶管理器管理用戶和組群:默認圖形界面的用戶管理器是沒有安裝的,需要安裝system-config-users工具
  1:在使用su命令進行用戶的切換時,導致root密碼暴露,從而增大了黑客的入侵的概率.
  2:[dengzhaoxu@calm ~]$ rpm -qa|grep system-config-users  //該命令是用於檢測是否安裝管理器.|:為管道符.
  3:使用yum命令安裝:
[root@calm dengzhaoxu]# vim /etc/yum.repos.d/dvd.repo  //編寫dvd.repo文件.文件內容在后面給出.
[root@calm dengzhaoxu]# yum info system-config-users
已加載插件:langpacks, product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
dvd                                                      | 4.3 kB     00:00     
sublime-text                                             | 2.9 kB     00:00     
(1/2): dvd/group_gz                                        | 146 kB   00:00     
(2/2): dvd/primary_db                                      | 4.2 MB   00:00     
可安裝的軟件包
名稱    :system-config-users
架構    :noarch
版本    :1.3.5
發布    :4.el7
大小    :337 k
源    :dvd
簡介    : A graphical interface for administering users and groups
網址    :https://than.fedorapeople.org/system-config-users
協議    : GPLv2+
描述    : system-config-users is a graphical utility for administrating
         : users and groups.  It depends on the libuser library.

[root@calm dengzhaoxu]# yum clean all  //按照教科書上說的安裝前先清理軟件源.
[root@calm dengzhaoxu]# yum install system-config-users -y  //開始安裝.

文件內容:
#/etc/yum.repos.d/dvd.repo
#or for ONLY the media repo,do this:
#yum --disablerepo=\* --enablerepo=c6-media [command]
[dvd]
name=dvd
baseurl=file:///iso
gpgcheck=0
enabled=1
[root@calm dengzhaoxu]# system-config-users  //打開用戶管理器.

八:使用常用的賬戶管理命令:
  1:vipw命令等價於:vim /etc/passwd   //使用vipw編寫passwd文件更安全.
  2:vigr命令等價於:vim /etc/group
  3:pwck命令:pwck命令用於驗證用戶賬戶文件認證信息的完整性。
  該命令檢測/etc/passwd文件和/etc/shadow文件每行中字段的格式和值是否正確。pwck命令的語法為
  4:grpck命令用於驗證組群文件認證信息的完整性。該命令還可檢測/etc/group文件和/etc/gshadow文件每行中字段的格式和值是否正確
  5:id命令:用於顯示一個用戶的UID和GID以及用戶所屬的組列表。在命令行輸入id直接回車將顯示當前用戶的ID信息。
  id命令的語法為:id [選項] userName
  6:finger命令:
  finger [選項] userName  :管理員和其他用戶都可以用finger命令來了解用戶 //選項有:-l,-m,-s,-p共四種。
  7:chfn,chsh命令:
  用戶自己可以使用chfn和chsh命令來修改finger命令顯示的內容
  8:whoami命令用於顯示當前用戶的名稱。whoami命令與id -un命令的作用相同。
  9:newgrp命令:
  10:使用groups命令可以列出指定用戶的組群
  
     




  


  
  

  






      
  







  


  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM