Linux用戶管理和組管理

Linux用戶管理和組管理

用戶和組的概念

用戶組是具有相同特征用戶的邏輯組合,需要讓多個用戶具有相同的權限時,如查看、修改某一個文件的權限,一種方法是分別對多個用戶進行訪問授權,若有是個用戶就授權十次, 此方法效率不高;而另一種方法就是建立一個組,讓這個組具有查看、修改文件的權限,然后將所有需要訪問此文件的用戶統一放到一個組內,那么組內的所有用戶就擁有了和組一樣的權限,這就是組。用戶和組的關系屬于多對多的關系

  • 用戶user
    1. 管理員:root,0
    2. 系統用戶:1-499(centos6),1-999(centos7)對守護進程?? 獲 取資源進行權限的分配
    3. 登陸用戶:500+,1000+(centos7) 交互式登陸
  • 組group
    1. 管理員組:root,0
    2. 系統組:1-499,1-999
    3. 普通組:500+,1000+

Linux組的類別

用戶的主要組:用戶必須屬于一個且只有一個主組,組名同用戶名,且僅包含一個用戶,私有組

用戶的附加組:一個用戶可以屬于零個或多個輔助組。

用戶和組的配置文

/etc/passwd:用戶及其屬性信息(名稱,UID,主組ID等)

account:password:UID:GID:GECOS:directory:shell

  1. 登錄用名(wang)
  2. 密碼 (x)
  3. 用戶身份編號 (1000)
  4. 登錄默認所在組編號 (1000)
  5. 用戶全名或注釋
  6. 用戶主目錄 (/home/wang)
  7. 用戶默認使用shell (/bin/bash)

/etc/shadow:用戶密碼及其相關屬性

  1. 登錄用名
  2. 用戶密碼:一般用sha512加密
  3. 從1970年1月1日起到密碼最近一次被更改的時間 u
  4. 密碼再過幾天可以被變更(0表示隨時可被變更) u
  5. 密碼再過幾天必須被變更(99999表示永不過期) u
  6. 密碼過期前幾天系統提醒用戶(默認為一周) u
  7. 密碼過期幾天后帳號會被鎖定
  8. 從1970年1月1日算起,多少天后帳號失效

 

/etc/group:組及其屬性信息

  1. 群組名稱:就是群組名稱
  2. 群組密碼:通常不需要設定,密碼是被記錄在 /etc/gshadow uGID:就是群組的 ID
  3. 以當前組為附加組的用戶列表(分隔符為逗號)

 

  • /etc/gshadow:組密碼及其相關屬性
  1. 群組名稱:就是群組名稱
  2. 群組密碼:
  3. 組管理員列表:組管理員的列表,更改組密碼和成員 u以當前組為附加組的用戶列表:(分隔符為逗號)

 

用戶和組管理命令

  • 創建用戶useradd

 

-u:指定用戶id(可指定數臺電腦主機id一致)

-r:創建系統用戶

-s :shell指明用戶的默認shell程序,可用列表在/etc/shells

-d:HOME以指定的路徑(不存在)為家目錄

-c:”comment” 用戶的注釋信息

-g:GID指明用戶所屬基本組,可為組名,也可以GID

-G:GROUP1,[GROUP2,…]為用戶指明9644加組,組必須事先存在

-m:

useradd -s /sbin/nologin -r -d /data/mysql -m -u 1234

  • 修改用戶屬性usermod

語法:usermod [option] login

-u:新UID

-s:新的默認shell

-d:新家目錄不會自動創建;若要創建新家目錄并移動原家數據,同時使用-m選項

-c:新的注釋信息

-G:新附加組,原來組會被覆蓋,若要保留原有,需要同時使用-a選項。

-l:新的名字,例:usermod -l qqqqqq mysql

  • 刪除用戶userdel

語法:userdel [option]… login

-r:刪除用戶家目錄

  • 創建組groupadd

語法:groupadd [option]… groupadd_name

-g GID: 指明GID號;[GID_MIN, GID_MAX]

-r: 創建系統組

entOS 6: ID<500

CentOS 7: ID<1000

  • 修改組groupmod

語法:groupmod [option]… group

-n:新名字

-g:新組id

  • 刪除組groupdel

語法:groupdel group

  • 設置密碼

修改指定用戶的密碼:passwd [ OPTIONS] UserName

常用選項:

-d:刪除指定用戶密碼

-l:鎖定指定用戶

-u:解鎖指定用戶

-e:強制用戶下次登錄修改密碼

-f: 強制操作

-n mindays: 指定最短使用期限

-x maxdays:最大使用期限

-w warndays:提前多少天開始警告

-i inactivedays:非活動期限

–stdin:從標準輸入接收用戶密碼

echo “PASSWORD” | passwd –stdin USERNAME

  • 修改組密碼

語法:gpasswd [OPTION] GROUP

-a user 將user添加至指定組中

-d user 從指定組中移除用戶user

-A user1,user2,… 設置有管理權限的用戶列表

  • 更改和查看組成員

groupmems [options] [action]

options:

-g, –group groupname?? 更改為指定組 (只有root)

Actions:

-a, –add username???? 指定用戶加入組

-d, –delete username?? 從組中刪除用戶

-p, –purge?????????????? 從組中清除所有成員

-l, –list???????????????? 顯示組成員列表

groups [OPTION].[USERNAME]… 查看用戶所屬組列

  • 新建用戶的相關文件和命令
    • /etc/default/useradd
    • /etc/skel/*
    • /etc/login.defs
    • newusers passwd格式文件,批量創建用戶

語法:newusers [options][file]

  • chpasswd:批量修改用戶口令

工作原理:從系統的標準輸入讀入用戶的名稱和口令,并利用這些信息來更新系統上以存在的用戶的指令

例:使用passwd..txt里面的用戶名密碼批量修改相應用戶的密碼

1.首先建立passwd.txt文件,格式為[username:userpassword]

user:123456

user2:12345

2.將passwd.txt文件的內容傳輸到chpasswd指令來修改相應用戶的密碼

cppasswd < passwd.txt

 

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/95566

(0)
浮夸浮夸
上一篇 2018-04-09
下一篇 2018-04-09

相關推薦

  • shell腳本之判斷httpd是否有異常

    案例 以web為例 大全講解:如http為例 #/etc/init.d/httpd start????? 開啟httpd #lsof –i :80 [root@centos6 ~/bin]$curl -I -s -o /dev/null -w “%{http_code}\n” http://172.16.0.1 析:-I 是響應頭,響…

    Linux筆記 2018-05-20
  • keepalived介紹及相關實驗

    Keepalived是基于vrrp協議的一款高可用軟件。它的作用是檢測服務器的狀態,如果有一臺web服務器宕機,或工作出現故障,Keepalived將檢測到,并將有故障的服務器從系統中剔除,同時使用其他服務器代替該服務器的工作

    2018-07-13
  • 今天開始,重新學習

    混了這么多年,才發現還是要學習,要有本事才能混的好些。今天開始,重新學習,為了有好的將未來。為了能夠多掙點錢。。。。。。

    Linux筆記 2018-06-20
  • 計算機的組成及功能

    1. 計算機是由硬件系統及軟件系統組成 1.1 硬件系統:CPU、存儲器、輸入及輸出設備; CPU:包括運算器及控制器;運算器完成算數及邏輯運算,而控制器則實現取指令和分析指令。 存儲器:包括內存、外存;內存主要負責存儲緩存數據,外村主要負責存儲本地數據。 輸入設備:鍵盤、鼠標等標準輸入設備。 輸出設備:顯示器、打印機等。 1.2 軟件系統:系統軟件及應用軟…

    Linux筆記 2018-05-12
  • 變量

    變量 echo $name 與 echo “$name” 假如變量是讀取文件,前者會自動縮進成一行,后者保留原有格式 (umask=022,mkdir /f1)括號相當于開啟一個臨時子進程,能讀取當前shall的變量等信息,但是進程號不變,命令結束后恢復剛才狀態 局部變量,環境變量,只讀變量(常量),位置變量,數組 局部變量:只在當前…

    Linux筆記 2018-04-15
  • cobbler自動化安裝

    實驗:實現cobbler安裝 1 安裝包 yum install cobbler(EPEL) dhcp httpd tftp systemctl enable cobblerd dhcpd httpd tftp systemctl start cobblerd httpd tftp 2 cobbler check 3 vim /etc/cobbler/set…

    Linux筆記 2018-05-27
欧美性久久久久