Linux中使用者和組管理
阿新 • • 發佈:2020-08-05
一、使用者分類
1、管理員和普通使用者
1️⃣:管理員 —— 使用者ID:0
2️⃣:普通使用者 —— 使用者ID:1—65535
2、普通使用者又分為系統使用者和登陸使用者
1️⃣:系統使用者 —— 使用者ID:1—999 (一般系統使用者不需要登入的,都是給護遠端使用的)
2️⃣:登陸使用者 —— 使用者ID:1000—60000(為了完成互動式登陸而使用的使用者)
3、示例
//建立一個普通使用者,檢視ID [root@localhost ~]# useradd zhangsan [root@localhost ~]# id zhangsan uid=1000(zhangsan) gid=1000(zhangsan) 組=1000(zhangsan) //建立一個系統使用者,檢視ID [root@localhost ~]# useradd -r -M -s /sbin/nologin lisi [root@localhost ~]# id lisi uid=991(lisi) gid=987(lisi) 組=987(lisi)
二、使用者和組的類別
1️⃣:私有組 ——建立使用者時,如果沒有為其指定所屬的組,系統會自動為其建立一個與使用者名稱相同的組
2️⃣:基本組 ——使用者的預設組
3️⃣:附加組 ——除預設組以外其他的組
三、使用者和組的相關配置檔案
1️⃣:/etc/passwd —— 使用者及其屬性資訊
2️⃣:/etc/shadow ——使用者密碼及相關資訊
3️⃣:/etc/group —— 組及其屬性資訊
4️⃣:/etc/gshadow —— 組密碼及其相關屬性
四、使用者和組的相關命令
1、useradd —— 建立使用者命令
useradd -u:指定使用者的UID -c<備註>:加上備註文字 -d<家目錄>:指定使用者家目錄,該目錄必須事先存在 -g<基本組名>:指定使用者所屬的基本組 -G<附加組名>:指定使用者所屬的附加組,可以有多個,用逗號隔開 -M:不要自動建立使用者的家目錄 -r:建立一個系統使用者
2、userdel —— 使用者刪除命令
userdel -f:強制刪除使用者,即使使用者當前已登入 -r:刪除使用者的同時,刪除與使用者相關的所有檔案。
3、usermod —— 修改使用者資訊命令
usermod -u<uid>:修改使用者UID -s<shell>:修改該使用者帳號的新登入 shell -c<備註>:修改使用者帳號的備註資訊 -d<登入目錄>:修改使用者登入時的家目錄 -e<有效期限>:修改帳號的有效期限 -g<群組>:修改使用者所屬的群組 -G<群組>;修改使用者所屬的附加群組 -l<帳號名稱>:修改使用者帳號名稱 -L:鎖定使用者密碼,使密碼無效 -U:解除密碼鎖定
4、groupadd —— 組建立命令
groupadd -g:指定新建工作組的GID -r:建立系統工作組,系統工作組的組ID小於500
5、groupdel —— 組刪除命令
groupdel //刪除組名只需要指定組名即可 groupdel groupname
6、groupmod —— 組資訊修改命令
groupmod -g, --gid GID 將組 GID 改為新的 GID -n, --new-name 修改新的組名
7、su —— 切換使用者命令
su -c<指令>或--command=<指令>:執行完指定的指令後,即恢復原來的身份 su username :非登入式切換(切換後,任然在root家目錄下,不會跳轉到該使用者的家目錄) su - usernaem :登入式切換 (切換後,自動跳轉到該使用者的家目錄) su - :不指定使用者名稱,則直接切換到root使用者
五、密碼管理
1、passwd —— 設定使用者密碼命令
passwd --stdin //標準輸入獲取使用者密碼(也叫明文獲取使用者密碼) e.g:[root@localhost ~]# echo '123456' | passwd --stdin lisi -d:刪除使用者密碼,僅有系統管理者才能使用 -f:強制執行 -l:鎖住使用者密碼 -u:解開已上鎖的使用者密碼 -s:列出密碼的相關資訊,僅有系統管理者才能使用 -n:指定使用最短期限 -x:指定使用最長期限 -w:指定多少天開始警告
2、openssl —— 密碼生成工具
openssl command command dgst //提取特徵碼 passwd //生成密碼 rand //生成偽隨機數 version //檢視程式版本號 示例 //提取特徵碼 [root@localhost ~]# openssl dgst -md5 /etc/passwd MD5(/etc/passwd)= 93690d490a4c6767084ab1c4c19a22a5 [root@localhost ~]# openssl dgst -md5 /etc/fstab MD5(/etc/fstab)= f57f5c4e8baa2e133f583c88bfb69abd //生成密碼 格式:openssl passed -number(1-6) -salt 雜質詞(string:一般為8位) [root@localhost ~]# openssl passwd -1 -salt password Password: $1$password$7ZK8mMeLGXxbNPeJEFJOU0 //生成隨機數 格式:openssl rand -base64 num(num為隨機數長度) [root@localhost ~]# openssl rand -base64 10 1F3boAMqLShFKg== [root@localhost ~]# openssl rand -base64 20 Jo35wmVC2X2Qw4WwjYJY90/1J/k= [root@localhost ~]# openssl rand -base64 30 LZPA3UcV4yYEaD7G5ywVo9j+SCU8+i6ovrik0MPh [root@localhost ~]# openssl rand -base64 40 ZjqZxMsdj7MJM0IlUzrDj2WNRlZ+xDH2C3FI5YZbSx8n13KiOim5SA== [root@localhost ~]# openssl rand -base64 50 RjkM9gcXwOBdKzlDdH6ZHqXknJfHK9vi1IiSbTaDMiLeUpmg3ab6c5VV8twfs+sC To8=