Linux账号和权限管理详解(超详细示例操作)!
Linux賬號和權限管理詳解
- 一、用戶賬號和組賬號概述
- 1.1 Linux基于用戶身份對資源訪問進行控制
- 1.2 用戶賬號
- 1.3 組賬號
- 二、用戶賬號文件
- 2.1 用戶賬號文件 /etc/passwd
- 2.2 用戶賬號文件 /etc/shadow
- 三、用戶賬號設置
- 3.1 添加用戶賬號 useradd 或者 adduser
- 3.2 設置/更改用戶口令passwd
- 3.3 修改用戶賬號的屬性 usermod
- 3.4 用戶賬號的初始配置文件
- 3.5 PATH變量用于設置可執行程序的默認搜索路徑
- 四、組賬號文件
- 4.1 組賬號文件
- 4.2 添加組賬號 groupadd
- 4.3 添加刪除組成員 gpasswd
- 4.4 刪除組賬號 groupdel
- 五、查詢賬號信息
- 5.1 查詢用戶所屬的組 groups
- 5.2 查詢用戶身份標識 id
- 5.3 查詢用戶帳號的詳細信息 finger
- 5.4 w、who、 users 命令
- 六、文件/目錄的權限和歸屬
- 6.1 文件/目錄的權限
- 6.2 查看文件/目錄的權限和歸屬
- 6.3 設置目錄和文件的權限 chmod
- 6.4 設置目錄和文件的歸屬 chown
- 6.5 設置目錄和文件的默認權限 umask
- 總結
一、用戶賬號和組賬號概述
1.1 Linux基于用戶身份對資源訪問進行控制
-
用戶帳號
超級用戶、普通用戶、程序用戶 -
組帳號
基本組(私有組)
附加組(公共組) -
UID和GID
UID (User IDentity,用戶標識號)
GID (Group IDentify,組標識號)
1.2 用戶賬號
超級用戶:root用戶是Linux操作系統中默認的超級用戶賬號,對本主機擁有最高的權限。系統中超級用戶是唯一的。
普通用戶:由root用戶或其他管理員用戶創建,擁有的權限會受到限制,一般只在用戶自己的宿主目錄中擁有完整權限。
程序用戶:在安裝Linux操作系統及部分應用程序時,會添加一些特定的低權限用戶賬號,這些用戶一般不允許登錄到系統,僅用于維持系統或某個程序的正常運行,如bin、daemon、ftp、mail等。
1.3 組賬號
基本組(私有組) :基本組賬號只有一個,一般為創建用戶時指定的組。在/etc/passwd文件中第4字段記錄的即為該用戶的基本組GID號。
附加組(公共組) :用戶除了基本組以外,額外添加指定的組。
UID:用戶標識號
GID:組標識號
root用戶賬號的UID和GID號為固定值0
程序用戶賬號的UID和GID號默認為1~499
普通戶UIDRGID默認為500~60000
二、用戶賬號文件
2.1 用戶賬號文件 /etc/passwd
■保存用戶名稱、宿主目錄、登錄Shell 等基本信息
- 文件位置:/etc/passwd
- 每一行對應一個用戶的帳號記錄
■用戶賬號文件 /etc/passwd
-
基于系統運行和管理需要,所有用戶都可以訪問passwd文件中的內容,但是只有root用戶才能進行更改。
-
在早期的UNIX操作系統中,用戶帳號的密碼信息是保存在passwd文件中的,不法用戶可以很容易的獲取密碼字串并進行暴力破解,因此存在一定的安全隱患。后來經改進后,將密碼轉存入專門的shadow文件中,而passwd文件中僅保留密碼占位符"x"
2.2 用戶賬號文件 /etc/shadow
■保存用戶的密碼、賬號有效期等信息
- 文件位置: /etc/shadow
- 每一行對應一個用戶的密碼記錄
■用戶賬號文件 /etc/shadow
- 默認只有root用戶能夠讀取shadow文件中的內容,且不允許直接編輯該文件中的內容。
三、用戶賬號設置
3.1 添加用戶賬號 useradd 或者 adduser
- 在 /etc/passwd文件和 /etc/shadow文件的末尾增加該用戶賬號的記錄。
若未明確指定用戶的宿主目錄,則在 /home目錄下自動創建與該用戶賬號同名的宿主目錄,并在該目錄中建立用戶的各種初始配置文件。
若沒有明確指定用戶所屬的組,則自動創建與該用戶賬號同名的基本組賬號,組賬號的記錄信息將保存到 /etc/group和 /etc/gshadow文件中。
添加用戶賬號wangwu在添加用戶賬號wangwu的時候,就同時創建了用戶的目錄
建立一個用戶名為zhengsan的用戶,UID號為2000,指定用戶的附加組名test,不建立宿主目錄,指定用戶的賬戶失效時間2021-12-30
3.2 設置/更改用戶口令passwd
root用戶可以指定用戶名作為參數,對指定賬號的密碼進行管理;不指定用戶名時,修改當前賬號的密碼。
普通用戶卻只能執行單獨的"passwd"命令修改自己的密碼。
命令格式: passwd [選項] 用戶名 常用選項: -d:清空指定用戶的密碼,僅使用用戶名即可登錄系統。 -l:鎖定用戶賬戶,鎖定的用戶賬號將無法再登錄系統。 -S:查看用戶賬戶的狀態(是否被鎖定)。 -u:解鎖用戶賬戶。(-u解鎖時,如果沒有密碼會提示,需要使用-f強制解鎖)設置密碼
清空密碼后可直接登錄
其他命令演示:
3.3 修改用戶賬號的屬性 usermod
命令格式:usermod [選項] 用戶名 常用選項: -u:修改用戶的 UID 號。 -d:修改用戶的宿主目錄位置。 -e:修改用戶的賬戶失效時間,可使用 YYYY-MM-DD 的日期格式。 -g:修改用戶的基本組名(或使用 GID 號)。 -G:修改用戶的附加組名(或使用 GID 號)。 -s:指定用戶的登錄 Shell。 -l:更改用戶賬號的登錄名稱。 -L:鎖定用戶賬戶。 -U:解鎖用戶賬戶。將zhengsan用戶的登錄名更改為lisi
usermod -l lisi zhengsan3.4 用戶賬號的初始配置文件
命令格式:userdel [-r] 用戶名 添加“-r”選項時可以將該用戶的宿主目錄一并刪除■文件來源
- useradd 命令添加一個新的用戶賬號后在該用戶的宿主目錄中建立一些初始配置文件。
- 這些文件來自于賬號模板目錄/etc/skell,基本上都是隱藏文件。
■主要的用戶初始配置文件
- ~/.bash_profile
- ~/.bashrc
- ~/.bash_logout
用戶宿主目錄下的初始配置文件只對當前用戶有效
3.5 PATH變量用于設置可執行程序的默認搜索路徑
PATH 生效的原理:
每次啟動系統的時候會初始化命令,會執行/etc/profile和~/.bash_profile。/etc/profile會將路徑/usr/local/bin 、/usr/bin、/usr/local/sbin 、/usr/sbin 追加到PATH中去。然后調用 /etc/profile.d 目錄下的腳本。
四、組賬號文件
4.1 組賬號文件
- /etc/group:保存組帳號基本信息
- /etc/gshadow:保存組帳號的密碼信息
4.2 添加組賬號 groupadd
groupadd -g 1000 market 添加組賬號market -g:指定GID號tail -1 /etc/group market:x:1000:示例:添加一個GID為666的zhaoqi組賬戶
4.3 添加刪除組成員 gpasswd
命令格式:gpasswd [選項] 組賬號名
常用選項:
-a:向組內添加一個用戶
-d:從組內刪除一個用戶成員
-M:定義組成員列表,以逗號分隔
可以發現已經刪除
4.4 刪除組賬號 groupdel
groupdel 組賬號名示例
groupdel market 刪除組賬號market grep "market" /etc/group五、查詢賬號信息
5.1 查詢用戶所屬的組 groups
groups [用戶名]5.2 查詢用戶身份標識 id
id [用戶名]5.3 查詢用戶帳號的詳細信息 finger
- 查詢用戶賬號的登錄屬性
注:需要先進行安裝finger軟件包
5.4 w、who、 users 命令
查詢已登錄到主機的用戶信息
通常使用tty來簡稱各種類型的終端設備,,Centos7系統, tty1表示圖形界面,,tty2-tty6表示文字界面,可以用ctrl+Alt+F1-F6切換。
按Ctrl+Alt+F2登陸,執行w命令,查看使用的終端就是tty2
pts說明是用遠程工具連接的,比如xshell,后面的數字代表登錄的時間順序,越小證明登錄的越早
六、文件/目錄的權限和歸屬
6.1 文件/目錄的權限
■訪問權限
- 讀取r:允許查看文件內容、顯示目錄列表
- 寫入w:允許修改文件內容,允許在目錄中新建、移動、刪除文件或子目錄
- 可執行x:允許運行程序、切換目錄
■歸屬(所以權) - 屬主:擁有該文件或目錄的用戶帳號
- 屬組:擁有該文件或目錄的組帳號
| 字符表示 | r | w | x | - |
| 數字表示(八進制) | 4 | 2 | 1 | 0 |
6.2 查看文件/目錄的權限和歸屬
ls -l install.log -rw-r--r-- 1 root root 34298 04-02 00:23 install.log # -rw-r--r-- :文件類型、權限 root root 屬主、屬組
6.3 設置目錄和文件的權限 chmod
語法1:chmod [ugoa] [+-=] [rwx] 文件或目錄...(+、-、= 分別表示增加、去除、設置權限) (u、g、o、a 分別表示屬主、屬組、其他用戶、所有用戶) (r,w,x權限字符可分別表示為8進制字符4,2,1,表示一個權限組合時需要將數字進行累加;如rwx=7,rw-r-r=644)語法2:chmod nnn 文件或目錄...(3位八進制數)常用命令選項:-R:遞歸修改指定目錄下所有子項的權限
方法1
方法2
6.4 設置目錄和文件的歸屬 chown
chown 屬主 文件或目錄chown :屬組 文件或目錄 chgrp 屬組 文件或目錄chown 屬主:屬組 文件或目錄 chown 屬主.屬組 文件或目錄-R:遞歸修改指定目錄下所有子目錄及文件的歸屬演示:
6.5 設置目錄和文件的默認權限 umask
■umask作用
指定目前用戶在新建文件或目錄時的權限默認值
新建的文件或者目錄的權限為默認最大權限減去umake (普通文件的最大默認權限為6, 目錄的最大默認權限為7)
1.umask設置:umask 022
2.umask查看:umask
如果我們想設置所創建的目錄所以用戶都有rwx權限
示例
總結
■用戶賬號管理(useradd、passwd、usermod、userdel)
■組賬號管理(groupadd、gpasswd.groupdel)
■用戶賬號文件與組賬號文件
■查詢賬號相關信息的命令(groups.id、finger、w)
■設置目錄與文件權限(chmod)
■設置目錄與文件歸屬(chown)
總結
以上是生活随笔為你收集整理的Linux账号和权限管理详解(超详细示例操作)!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 内存选购全攻略:8GB够用?32GB才够
- 下一篇: Linux磁盘管理与文件系统(实验详解,