RHEL7用戶管理 本節所講內容: 用戶和組的相關配置文件 管理用戶和組 RHEL7破解root密碼 與windows 相比 LINUX中的用戶和賬號的作用是一樣的. 都是基於用戶對訪問的資源做控制,只不過在表示的細節上有差異. 用戶賬號: 超級用戶: root 至高無上 本地用戶: 由管理員創建, ...
RHEL7用戶管理
本節所講內容:
- 用戶和組的相關配置文件
- 管理用戶和組
- RHEL7破解root密碼
與windows 相比 LINUX中的用戶和賬號的作用是一樣的.
都是基於用戶對訪問的資源做控制,只不過在表示的細節上有差異.
用戶賬號:
超級用戶: root 至高無上
本地用戶: 由管理員創建,許可權受到一定的限制,在自己的宿主目錄是完整的許可權.
系統用戶:一般是不會登錄系統的,用於維持某個服務程式正常運行.
用戶的分類:
根據帳號的位置:本地帳號、遠程(域)帳號。 ldap
根據帳號的功能:超級用戶(root) UID:0
普通用戶
系統用戶 UID:1-999
本地用戶 UID:1000+ rhel6 500
UID:即每個用戶的身份標示,類似於每個人的身份證號碼.
關於系統用戶和組的相關配置文件:
帳號信息 密碼信息
用戶:/etc/passwd /etc/shadow
組: /etc/group /etc/gshadow
添加用戶帳號相關命令:
語法:useradd 用戶名
常用參數:
-u UID
-d 宿主目錄
-g 起始組 #只能有一個
-G 附加組 #可以有多個
-s 登錄shell
[root@xuegod60 ~]# useradd SAN [root@xuegod60 ~]# ls /home/ San [root@xuegod60 ~]# tail -1 /etc/passwd san:x:1002:1002::/home/san:/bin/bash
用戶帳戶的全部信息被保存在/etc/passwd文件。這個文件以如下格式保存了每一個系統帳戶的所有信息
(欄位以“:”分割)
/etc/passwd 每個欄位的作用:
root:x:0:0:root:/root:/bin/bash
用戶名 : 密碼占位符 : UID : GID : 用戶描述 : 用戶主目錄(bash中"~"代表哪個) : 登錄後使用的shell
偽用戶--為了安全
linux中任何一個命令的操作都必須有一個用戶的身份
偽用戶一般和系統或者程式服務相關
bin,daemon,shutdown ,halt linux預設都有這些偽用戶
偽用戶通常不需要或無法登陸系統
可以沒有宿主目錄
/etc/passwd文件中常見的偽用戶
源碼安裝nginx,運行nginx web伺服器預設使用nobody用戶
指定用戶UID
指定用戶的宿主目錄
指定用戶的起始組
指定用戶附加組
指定用戶的登錄shell
創建用戶的另外的命令
useradd 或adduser
[root@xuegod60 ~]# adduser honghaier
刪除用戶:
userdel
-r 抄家 連同宿主目錄一起
密碼的文件
/etc/shadow
root:$6$.BTyNB8Q397zR.KY$412……M8ZHWiidd/:16274: 0 : 99999 : 7 : : :
修改用戶信息:
語法:
#usermod 用戶名
常用參數:
-u UID
-d 宿主目錄
-g 起始組 #只能有一個
-G 附加組 #可以有多個
-s 登錄shell
修改UID
修改shell
修改附加組
組分類:
根據帳號的位置:本地組、遠程(域)組。
根據帳號的功能:超級用戶組(root) GID:0
普通用戶組
系統用戶組 GID:1-999
本地用戶 組 GID:1000+
***每一個用戶都有一個同名的組***
/etc/group配置文件結構:
[root@xuegod60 ~]# grep rm /etc/group
rm:x:1000:rm
控制添加用戶規則的文件
當添加新的用戶帳戶時,預設會執行下列操作。
- 它的主目錄就會被創建(一般是"/home/用戶名",除非你特別設置)
- 一些隱藏文件如
.bash_logout
,.bash_profile
以及.bashrc
會被覆制到用戶的主目錄。 - 會創建一個和用戶名同樣的組(譯註:除非你給新創建的用戶指定了組)。
解決模板文件被刪之後顯示不正常的問題
[root@xuegod60 ~]# useradd aaa
[root@xuegod60 ~]# echo 123456 | passwd --stdin aaa
[root@xuegod60 ~]# ls -a /home/aaa/
. .. .bash_logout .bash_profile .bashrc .mozilla .zshrc
[root@xuegod60 ~]# rm -rf !$.bash*
rm -rf /home/aaa/.bash*
[root@xuegod60 ~]# su – aaa
-bash-4.2$
恢復:
[root@xuegod60 ~]# cp /etc/skel/.bash* /home/aaa/
[root@xuegod60 ~]# chown aaa:aaa /home/aaa/.bash*
切換用戶:
[root@xuegod60 ~]# su – aaa
加上- ,在切換時會把環境變數一起進行切換
不加,保留原本的環境變數
查看用戶信息相關命令:
id
w
who
whoami
finger
實戰:RHEL7 恢復root密碼
密碼恢復
首先重啟,按↑↓鍵,進入如下界面,選擇第一項,按下e鍵進行編輯
在此界面找到ro這一項,併進行修改,改為rw init=/sysroot/bin/sh
改完之後,按下Ctrl+X進入緊急模式
原理:啟動一個shell環境,系統並沒有真正的啟動
換根,修改密碼
/ 預設
chroot命令用來在指定的根目錄下運行指令
。chroot,即 change root directory (更改 root 目錄)。在 linux 系統中,系統預設的目錄結構都是以/,即是以根 (root) 開始的。而在使用 chroot 之後,系統的目錄結構將以指定的位置作為/位置
在經過 chroot 命令之後,系統讀取到的目錄和文件將不在是舊系統根下的而是新根下(即被指定的新的位置)的目錄結構和文件,
註意:恢復密碼時把selinux關閉
重啟系統
先退出當前根,執行/bin/sh shutdown –r now