Linux 124課程 5、管理本地的Linux用戶和組

1、Linux 用戶
操作系統不是根據用戶名來區分用戶,而是通過ID來區分用戶

[root@localhost ~]# id 當前的root用戶下的id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

管理員root賬戶 默認UID=0
RH 7 普通用戶是UID從1000 開始分配

(1)用戶的uid保存在和用戶賬戶信息: /etc/passwd 文件中
cat /etc/passwd |grep student

student:x:1000:1000:student user:/home/student:/bin/bash
student 表示用戶名
x 表示是否認證
1000 表示UID(所在有用戶的編號)
1000 表示GID(所在組的編號)
student user 表示用戶的描述信息
/home/student 表示用戶所在的家目錄
/bin/bash 表示shell環境

(2)用戶的密碼文件: /etc/shadow 文件中
cat /etc/shadow |grep student

student:$1$4UVn2bIM$M1jcd8dukZVvScgV4r0py.:17588:0:99999:7:::
student 表示用戶名
17588 表示密碼創建的天數(從1970.1.1 算起)
0 表示是最小有效期
99999 表示最大有效期
7 表示過期前7天提醒

2、Linux組
多個用戶的一個集合 組的信息保存在 /etc/group
  cat /etc/group |grep student student:x:1000:
  
組分爲兩種類型:
  主要組
  每一個用戶都有一個主要組
  本地用戶的主組用GID表示,可以/etc/passwd文件當中看見用戶的主組
  通常情況下,用戶創建文件的屬組是由主組所有;
  通常情況下,創建一個用戶時,用戶的UID和GID相同
  創建用戶時,系統會創建一個相同名字的主組
  用戶不能從主組中被刪除
  
  附加組
  用戶可能是零個或者多個附加組成員
  用戶可以被附加組刪除
  一個用戶可以屬於多個附加組,但是隻能屬於一個主組
  查看附加組的信息,可以在/etc/group 中查看
  附加組有助於用戶訪問系統上的其它資源
  
root 超級管理員
  安裝軟件\刪除軟件\創建用戶... 必須有管理員權限

(1) su - 切換用戶
  - 用於切換用戶環境

su root /home/student 切換用戶,不切換目錄
pwd
su -roor /root 切換用戶同時切換目錄
pwd

sudo 提升用戶權限

  允許管理員讓普通用戶執行一些或者全部的root命令的工具;
  
  [student@localhost ~]$ sudo useradd user1 使用student 用戶創建user1用戶
  默認情況下,要想使用student 用戶創建user1用戶需要先必須先設置授權;

  sudo 授權方式:
  visudo (管理員 纔可以s使用visudo)

[root@localhost ~]# visudo
  ## Allows people in group wheel to run all commands
  #%wheel ALL=(ALL) ALL
  student ALL=/usr/sbin/useradd 添加useradd權限給student
  
  [root@localhost ~]# which useradd 查找useradd的路徑

  [student@localhost ~]$ sudo -l 查看sudo 授權
  
  [sudo] password for student:
  Matching Defaults entries for student on this host:
   requiretty, !visiblepw, always_set_home, env_reset, env_keep="COLORS
   secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin
  
  User student may run the following commands on this host:
   (root) /sbin/useradd

    2)vim /etc/sudoers

  sudo useradd user1
  sudo 的密碼有效期默認爲5分鐘
  sudo -k 將緩存清空

3、管理本地用戶和組
  useradd 新建用戶
  -c 指定備註信息
  -d 指定家目錄
  -e 指定賬戶的失效日期
  -g 指定主組ID
  -G 指定附加組ID
  -m 創建家目錄(默認創建)
  -M 不創建家目錄 一般情況下M和s一起用
  -s 指定用戶的shell
  -u 指定UID

  useradd -c “this usesr is not root” user3 用戶描述信息”this user is not root”
  passwd user3 創建用戶以後,必須要爲用戶創建密碼
  
  useradd -d /user4/ user4 指定user4的家目錄
  
  每創建一個用戶,會將/etc/skel 中的內容複製一份到家目錄中 /etc/skel 家目錄的模板
  
  useradd -u 2000 user7 指定user7 的 UID
  id user6 id user7 id user8
  
  useradd -e 20161231 user9 指定user9的賬戶失效日期
  cat /etc/passwd
  tail /etc/shadow 密碼的失效日期
  
  useradd -g 2000 user10 前提是主組存在,指定主組
  useradd -G 2000 user11 提前是附加組存在,指定附加組
  cat /etc/group 附加組可以查看
  
  useradd -Ms /sbin/nologin user12

  (2)usermode 修改用戶
  -g 修改主組ID
  -G 修改附加組ID
  -d 修改用戶家目錄
  -m 移動家目錄到新的額目錄,m和d合用
  -s 修改shell
  -l 修改登錄名
  -L 鎖定
  -u 修改UID
  -U 解鎖
  
  usermod -g 2000 user12 主組必須存在,修改主組
  usermod -u 2006 user12
  usermod -G 2000 user12
  
  usermod -md /home/user6 user6
  
  usermod -s /sbin/nologin u1
  tail -l /etc/passwd
  
  usermod -l user11 u1
  
  vim /etc/passwd 可以通過直接修改passwd的配置文件,來修改user
  
  usermod -L user1
  usermod -U user1
  
  (3) userdel 刪除用戶信息
  -r 刪除用戶的所有信息,包括家目錄以及郵箱
  -z 刪除所有的SELinux用戶映射
  
  userdel -r u1
  userdel -r user10
  

  (4)用戶的默認策略
  /etc/login..defs
  
  每創建一個用戶,用戶的賬戶策略使用/ettc/login.defs。
  以後每創建的新用戶所有策略會被此文件設備策略
  
  
  chage 更改用戶策略的方式

  chage
  -d 表示最後更改日期,通常-d 0 表示下次登錄式必須修改密碼
  -m 表示最小使用天數
  -M 表示最大使用天數
  -W 表示警告的天數
  -I 表示設置失效的時間
  -l 查看用戶的策略信息
  -E 設置賬號過期時間
  
  chage -l user3
  
  chage -m 3 user3

  chage -M 30 user3

  chage -W 5 user3
  
  chage -I 10 user3
  
  chage -E 60day user3 賬戶過期時間
  
  date -d +60day
  
  chage -d 0 user1

(6)管理本地組賬戶
  groupadd gl
  -g 指定組ID
  
  group -g 8000 u2
  
  gpasswd 用於添加組成員
  -a 添加一個用戶到組
  -d 從組中刪除一個用戶
  -m 添加多個用戶到組
  -M 添加用戶到組,替換
  -g2 刪除組
  
  usermod -G g1 user1
  gpasswd -a user3 g1
  
  groupmod -g 2007

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