首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

Linux 用戶與組管理完整指南

     編輯:Java 綜合教學

賬戶類型

類型UID 範圍說明
超級用戶0root,擁有最高權限
系統用戶1-999服務進程專用(nginx、mysql 等)
普通用戶1000+人工登入操作

組類型

  • 私有組:建用戶時未指定組,自動建立同名組,僅含該用戶
  • 標準組:手動建立,可包含多用戶
  • 主組/附加組:用戶登入後生效的為主組,groups 顯示第一個為主組

核心配置文件

文件權限欄位說明
/etc/passwd644用戶名:密碼佔位符(x):UID:GID:描述:家目錄:Shell
/etc/shadow000用戶名:加密密碼:最後修改日:最小間隔:最大間隔:警告天數:非活動天數:過期日:標誌
/etc/group644組名:密碼佔位符:GID:成員列表(逗號分隔)
/etc/gshadow000組名:加密密碼:管理員:成員

用戶管理命令

操作命令常用參數
新增useradd-m 建家目錄、-s 指定 Shell、-g 主組、-G 附加組、-u 指定 UID
修改usermod-l 改名、-d 改家目錄(需手動建)、-s 改 Shell、-L/U 鎖/解鎖、-aG 追加附加組
刪除userdel-r 連同家目錄刪除
查看id、fingerid username 顯示 UID/GID/組

實戰範例

# 建立用戶 ltw,自動建家目錄,指定 bash
useradd -m -s /bin/bash ltw

# 修改登入名為 litingwei
usermod -l litingwei ltw

# 修改家目錄(先手動建目錄)
mkdir -p /home/litingwei
chown litingwei:litingwei /home/litingwei
usermod -d /home/litingwei litingwei

# 鎖定/解鎖密碼
usermod -L litingwei
usermod -U litingwei

組管理命令

操作命令參數
新增groupadd-g 指定 GID
修改groupmod-g 改 GID、-n 改名
刪除groupdel

密碼與組成員維護

操作命令範例
設密碼passwd user交互式輸入
鎖/解鎖passwd -l/-u user
刪密碼passwd -d user禁用密碼登入
加入組gpasswd -a user group
移出組gpasswd -d user group
設組管理員gpasswd -A user group管理員可自行增減組員

切換身份與權限提升

  • su - user:完整登入環境(讀取對方 profile)
  • su user:保留當前環境
  • sudo cmd:以 root 執行單命令,受 /etc/sudoers 控制
  • visudo:安全編輯 sudoers,語法檢查

sudoers 關鍵配置

# 允許 user 執行所有命令無需密碼
user ALL=(ALL) NOPASSWD: ALL

# 僅允許重啟服務
user ALL=(ALL) /bin/systemctl restart nginx

# 組權限(% 開頭)
%devops ALL=(ALL) ALL

合理規劃用戶/組、最小權限原則、定期審計 /etc/passwd /etc/sudoers,是 Linux 安全基線。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved