2015/08/04

User And Group

user and group 主要是設定使用者對資料夾存取的權限,以我的狀況比較少碰到這個設定,memo 一下幾個我覺得比較重要的指令。

User

useradd 新增帳號

  • -d 設定 home 目錄
  • -g 預設群組
  • -G 次群組
  • -m 自動建立 home
  • -M 不自動建立 home
  • -s bash 位置
# 建立帳號 chan
useradd chan
 
# 建立帳號不設定 home 資料夾並設定多組次群組
useradd chan -M -G group1,group2 -s /bin/bash
 
# 建立帳號並指定登入資料夾
useradd chan -d /var/www/test
 
# 幫帳號設定密碼
passwd chan

usermod 修改帳號

  • -d 設定 home 目錄
  • -g 預設群組
  • -G 次群組
  • -m 自動建立 home
  • -M 不自動建立 home
  • -s bash 位置
  • -L lock user
  • -U unlock user

基本上 usermoduseradd 指令不會差太多,主要是用來修改一些當參數。

# 鎖住帳號
usermod -L chan
 
# 解鎖帳號
usermod -U chan
 
# 取代次群組
usermod -G group3 chan
 
# 增加次群組
usermod -aG group3 chan

userdel 刪除帳號

# 刪除帳號
userdel chan

# 刪除用戶的同時,一併把使用者的家目錄及本地郵件存儲的目錄或檔也一同刪除
userdel -r chan

group

groupadd 建立群組

# 建立群組
groupadd group1

gpasswd 設群組成員和密碼

  • -a 增加群組成員
  • -d 刪除群組成員
# 增加使用者到群組
gpasswd -a chan group1
 
# 移除使用者到群組
gpasswd -d chan group1

groupmod 修改群組

  • -g 修改 gid
  • -n 修改群組名稱
# 修改群組名稱
groupmod -n newname oldname

目錄

chmod 修改目錄權限

  • -R 遞迴式修改

Linux 檔案的基本權限就有九個,分別是 owner/group/others 三種身份各有自己的 read/write/execute 權限,檔案的權限字元為:-rwxrwxrwx,r:4 w:2 x:1,每種身份 (owner/group/others) 各自的三個權限 (r/w/x) 分數是需要累加的,例如當權限為: [-rwxrwx—] 分數則是:

  • owner = rwx = 4+2+1 = 7
  • group = rwx = 4+2+1 = 7
  • others= — = 0+0+0 = 0
# 修改檔案或目錄權限
chmod -R 777 DIRECTORY

chgrp 改變所屬群組

  • -R 遞迴式修改
# 修改擁有群組
chgrp -R group1 DIRECTORY

chown 改變檔案擁有者

  • -R 遞迴式修改
# 改變擁有者
chown -R chan DIRECTORY
 
# 改變擁有者加擁有群組
chown -R chan:group1 DIRECTORY

其他

# 查詢 server 有多少使用者
cat /etc/passwd
 
# 由於 server 使用者太多了,比較建議查 /etc/shadow
# 我們設定的帳號都在末端,有密碼的跟沒密碼的一目了然
cat /etc/shadow
tail -10 /etc/shadow
 
# 查詢現在有哪些群組
cat /etc/group
tail -1- /etc/group
getent group
 
# 查詢單一群組有多少 user
getent group group1
 
# 查詢 user 加入了多少群組
groups chan

# 查詢目前登入者 uid gid groups
id

# 查詢某個帳號
id sshd
uid=113(sshd) gid=65534(nogroup) groups=65534(nogroup)

# 查詢某個帳號 uid
id -u sshd
113

# 查詢某個帳號 gid
id -g sshd
65534

# 用 uid 反查帳號
id -un 113
sshd

# 用 gid 反查群組
id -gn 65534
nogroup

沒有留言: