五、對Linux中使用者的詳細解釋及操作
運維學習筆記 五、對Linux中使用者的詳細解釋及操作
1 使用者及使用者組存在的意義
1)使用者存在的意義
系統資源是有限的,如何合理分配系統資源?
在這個問題解決時必須要有三個資源配合
1.身份 account
2.授權 author
3.認證 authentication
3A 機制,3A 機制組成系統中最底層的安全架構!
2)使用者組存在意義
使用者組是一個邏輯容器,對使用者進行歸類和統一授權。
2.使用者及使用者組在系統中的存在方式
電腦對數字敏感,人類對字串敏感。
id<-------> 名稱 必須要記錄到檔案當中使用者才能存在
使用者就是/etc/passwd 檔案中的一行字元
使用者組存在的方式就是/etc/group 檔案中的一行字元
3.使用者切換
1)使用者檢視
*whoami ##檢視當前使用者
*id ##檢視使用者 id 資訊
-u ##檢視使用者的使用者 id
-g ##檢視使用者主組 id
-G ##檢視使用者所有的組的 id
-n ##顯示名稱
2)使用者切換
su - username #切換使用者環境到username
##如果 root ----> commonuser 不需要後者密碼
##commonuser ----> root需要密碼
##commonuser ----> commonuser 需要密碼
***注意:在做使用者切換時,應當在使用完畢使用者身份後及時退出!
不要在一個 shell 中反覆執行 su 命令,會導致環境錯亂,儘量不要超過兩層!!
4.使用者涉及到的系統配置檔案###
/etc/passwd ##使用者身份資訊檔案
westos : x : 1000 : 1000 : westos :/home/westos :/bin/bash
#使用者名稱稱:使用者密碼:使用者id:使用者主組id:使用者說明 :使用者家目錄 :使用者預設shell
/etc/group ##組身份資訊檔案
westos: x :1000:
#組名稱:組密碼:組id:組的附加成員
/etc/skel/.* ##使用者環境配置檔案模板 [若當前使用者配置檔案有問題,則刪掉配置檔案,複製/etc/skel/.*]
/etc/shadow ##使用者認證資訊檔案
/home/username ##使用者家目錄
5.使用者和使用者組建立及刪除###
監控使用者建立的命令
watch -n 1 "tail -n 4 /etc/passwd /etc/group;echo =======;ls -l /home" #監視器每秒重新整理一次
useradd username ##使用者建立
-u id username ##uid 共有 2**16=0-65535 個
##0 表示超級使用者
##1-200 系統預留 id
##201-999 系統使用者
##1000-60000 使用者級使用者
##/etc/login.defs 記錄使用者建立的預設規則
-g id username ##主組 id
-G id username ##附加組 id
-d dir username ##指定使用者家目錄
-c word username ##指定使用者說明 [-c "說明" username]
-s shell username ##指定用 shell
-M username ##不建立家目錄
userdel -r username ##使用者刪除 -r 刪除使用者的系統配置檔案
groupadd groupname ##組建立
-g id groupname ##指定組名稱
groupdel groupname ##組刪除
6.使用者和使用者組的資訊管理###
usermod
-l #更改使用者名稱稱
-u #更改使用者 id
-g #更改主組 id
-G #更改使用者附加組身份
-aG #新增使用者附加組身份
-c #更改使用者說明
-d #更改家目錄指向
-md #更改家目錄指向同時更改家目錄名稱
-s #更改預設 shell
-L #凍結賬號 **"!" 一個!**
-U #解鎖
groupmod -g ##更改使用者組 id
7.使用者認證資訊管理
1.使用者名稱稱
passwd -S lee ##檢視密碼狀態
2.使用者加密字元
#更改密碼
passwd lee ##只有 root 可以執行 “echo 123 | passwd --stdin lee”
passwd ##普通使用者改密碼
Changing password for user lee.
Current password: #輸入原始密碼
New password: ##輸入新密碼(8 位以上無序數字+無序字母組合)
Retype new password: ##重複輸入
passwd: all authentication tokens updated successfully.
#凍結認證
passwd -l lee ##凍結賬號認證 "!!" 兩個!
passwd -u lee ##解鎖賬號認證
#密碼刪除
passwd -d lee
#密碼使用天數
*從 1970-1-1 算其到今天的時間
passwd -e lee ##修改預設使用時間為 0
chage -d 0 lee ##賬號必須改密碼才能登陸系統
#密碼最短有效期
passwd -n 1 lee ##lee 在 1 天內不能改密碼
chage -m 1 lee
#密碼最長有效期
passwd -x 40 lee ##40 天內 lee 使用者必須更新密碼否則會被凍結
chage -M 30 lee
#密碼過期警告
passwd -w 2 lee ##賬號過期前警告時間
chage -W 1 lee
#認證非活躍天數
passwd -i 2 lee ##賬號認證最大時間超過後還能用多久
chage -I 1 lee
#賬號認證到期時間
chage -E "YYYY-MM-DD" ##到 YYYY-MM-DD 這天賬號會被凍結
#未啟用功能
8.使用者權力下放
在系統中普通使用者時無法執行系統管理命令的,如果需要普通使用者執行系統管理動作那麼需要,root 使用者來進行授權,普通使用者授權方式 “sudo”。
作用:
可以使普通使用者使用指定的使用者身份去執行命令
授權方法:
visudo ##此命令作用是編輯/etc/sudoers 並提供語法檢測
在檔案的 100 行左右 ##程式碼規範性
username hostname=(newusername) [NOPASSWD:] /command, /command1
例子:
1) #lee使用者 在 linux.wesots.com主機=(用超級使用者身份) 執行 useradd 命令
lee linux.westos.com=(root) /usr/sbin/useradd
2) #westos 使用者 在 linux.wesots.com 使用超戶 免密 執行 useradd 和 userdel
westos linux.wesots.com = (root) NOPASSWD: /usr/sbin/useradd, /usr/sbin/userdel
which useradd #which命令 檢視命令的絕對路徑
相關文章
- Linux 目錄結構及詳細操作Linux
- Linux 檔案屬性及詳細操作Linux
- Linux sed命令常用操作詳解及案例!Linux
- linux nfs共享儲存服務詳細解釋。LinuxNFS
- java中cookie操作詳細JavaCookie
- Servlet、HTTP詳細解釋!ServletHTTP
- JPS 命令詳細解釋
- 【超詳細】解釋BigDecimal精度的坑Decimal
- Linux中產生zombie的原因詳解及解決方法!Linux
- Application.Caller詳細解釋APP
- Linux系統中的使用者的基礎認識及操作命令Linux
- winscp操作說明,winscp操作說明的詳細解讀
- Linux系統運維筆記(五) 使用者的操作Linux運維筆記
- Linux中&&和&,|和||用法及區別詳解!Linux
- mysql 5.7配置項最詳細的解釋MySql
- vue的事件冒泡 最詳細解釋版本Vue事件
- linux每日命令(30):Linux 使用者及使用者組相關檔案、命令詳解Linux
- expdp/impdp 詳細引數解釋
- adb操作命令詳解及大全
- PHP對redis操作詳解[轉]PHPRedis
- Azkaban詳細操作
- Java中的static詳細講解Java
- 超詳細!盤點Python中字串的常用操作Python字串
- 六種機率資料結構的詳細解釋及應用場景資料結構
- Spring @Conditional註解 詳細講解及示例Spring
- MySQL relay log 詳細引數解釋MySql
- python協程詳細解釋以及例子Python
- nGrinder詳細介紹及效能工具對比
- Nuxt框架中內建元件詳解及使用指南(五)UX框架元件
- ADB 操作命令詳解及用法大全
- Git 操作命令詳細Git
- Element-ui(更新中表單最詳細的解釋)UI
- linux中iptables詳解Linux
- git常用命令stash詳細解釋。Git
- Java基礎之字串String詳細解釋Java字串
- MySQL explain執行計劃詳細解釋MySqlAI
- mysql之行(記錄)的詳細操作MySql
- Linux中tail命令的使用詳解!LinuxAI