1.使用者配置檔案
1).使用者資訊檔案/etc/passwd
①.使用者管理簡介
◆所以越是對伺服器安全性要求高的伺服器,越是要建立合理的使用者許可權等級制度和伺服器操作規範
◆在linux中主要是通過使用者配置檔案來檢視和修改使用者資訊
②./etc/passwd
第一字段:使用者名稱
第二字段:密碼標誌
第三字段:uid(使用者id)--0:超級使用者,1-499:系統使用者(偽使用者),500-65535:普通使用者
第四字段:gid(使用者初始組id)
第五字段:使用者說明
第六字段:家目錄--普通使用者:/home/使用者名稱/,超級使用者:/root/
第七字段:登入之後的shell
③.初始組和附加組
初始組:就是指使用者一登入就立刻擁有這個使用者組的相關許可權,每個使用者的初始組只能有乙個,一般就是和這個使用者的使用者名稱相同的組名作為這個使用者的初始組.
附加組:指使用者可以加入多個其他的使用者組,並擁有這些組的許可權,附加組可以有多個.
④.shell是什麼
shell就是linux的命令直譯器
在/etc/passwd當中,除了標準shell是/bin/bash之外,還可以寫如/sbin/nologin
2).影子檔案/etc/shadow
1.欄位的解釋
第一字段:使用者名稱
第二字段:加密密碼
加密演算法公升級為sha512雜湊加密演算法
如果密碼位是"!!"或"*"代表沒有密碼,不能登入
第三字段:密碼最後一次修改日期
使用2023年1月1日作為標準時間,每過一天時間戳加1
第四字段:兩次密碼的修改間隔時間(和第三字段相比)
第五字段:密碼有效期(和第三字段相比)
第六字段:密碼修改到期前的警告天數(和第五字段相比)
第七字段:密碼過期後的寬限天數(和第五字段相比)
0:代表密碼過期後立即生效
-1:則代表密碼永久不會生效
第八字段:帳號失效時間
要用時間戳表示
第九字段:保留字段
2.時間戳換算
把時間戳換算為如期
date -d "1970-01-01 16066 days"
把日期換算為時間戳
echo $(($(date --date="2015/8/31" +%s)/86400+1))
3).組資訊檔案/etc/gtoup和組密碼檔案/etc/gshadow
1.組資訊檔案/etc/group
第一字段:組名
第二字段:組密碼標誌
第三字段:gid
第四字段:組中附加使用者
2.組密碼檔案/etc/gshadow
第一字段:組名
第二字段:組密碼
第三字段:組管理員使用者名稱
第四字段:組中附加使用者
2.使用者管理相關檔案1).使用者的家目錄
普通使用者:/home/使用者名稱/,所有者和所屬組都是此使用者,許可權是700
超級使用者:/root/,所有者和所屬組都是root使用者,許可權是500
2).使用者的郵箱
/var/spool/mail/使用者名稱/
3).使用者模板目錄
/etc/skel/
3.使用者管理命令1).使用者新增命令useradd
①.useradd命令格式: useradd 選項 使用者名稱
-u uid:手工指定使用者的uid號
-d 家目錄:手工指定使用者的家目錄
-c 使用者說明:手工指定使用者的說明
-g 組名:手工指定使用者的初始組
-g 組名:指定使用者的附加組
-s shell:手工指定使用者的登入shell,預設是/bin/bash
2).修改使用者密碼passwd
①.passwd命令格式:passwd 選項 使用者名稱(root 修改普通使用者的密碼)
passwd (修改自己的密碼)
-s:查詢使用者密碼的密碼狀態.僅root使用者可用
-l:暫時鎖定使用者.僅root使用者可用(實際是在/etc/shadow 檔案下修改該使用者對應的加密密碼 在前面加乙個「!」)
-u:解鎖使用者.僅使用者可用(同上原理,刪除「!」)
--stdin:可以通過管道符輸出的資料作為使用者的密碼(用於程式設計中)
3).修改使用者資訊usermod,修改使用者密碼狀態chage
①.修改使用者資訊usermod : usermod 選項 使用者名稱
-u uid:修改使用者的uid號
-c 使用者說明:修改使用者的說明資訊
-g 組名:修改使用者的附加組
-l:臨時鎖定使用者
-u:解鎖使用者鎖定
②.修改使用者密碼狀態chage:chage 選項 使用者名稱
-l:列出使用者的詳細密碼狀態
-d 日期:修改密碼最後一次更改日期(shadow3欄位)
-m 天數:兩次密碼修改間隔(4欄位)
-m 天數:密碼有效期(5欄位)
-w 天數:密碼過期前警告天數(6欄位)
-i 天數:密碼過後寬限天數(7欄位)
-e 日期:帳號失效時間(8欄位)
chage -d 0 lamp
# 這個命令其實是把密碼修改日期歸 0 了( shadow 第 3 字段)
# 這樣使用者一登陸就要修改密碼
4).刪除使用者userdel,使用者切換命令su
①.刪除使用者userdel
-r:刪除使用者的同時刪除使用者家目錄
②.檢視使用者id
id 使用者名稱
③.切換使用者身份su(su - 使用者名稱)
-:選項只使用"-"代表連帶使用者的環境變數一起切換,["-"必須加上]
-c 命令:僅執行一次命令,而不切換使用者身份
4.使用者組管理命令1).新增使用者組
groupadd 組名【-g gid:指定組id】
2).修改使用者組
groupmod 組名【-g gid:修改組id,-n 新組名:修改組名】
3).刪除使用者組
groupdel 組名
4).把使用者新增入組或從組中刪除
gpasswd 選項 使用者名稱 組名【-a 使用者名稱:把使用者加入組,-d 使用者名稱:把使用者從組中刪除】
Linux命令大全
alt f1 f7 切換登入視窗 echo 變數 env 檢視環境變數 set 檢視環境變數和自定義變數,即當前bash下所有的變數 export 將變數設為環境變數,也可檢視環境變數 ctrl c 終止程式 ctrl d 文字輸入結束 表示eof ctrl z 暫停程式,把任務丟到後台 man f...
Linux命令大全
顯示目錄和檔案的命令 ls 用於檢視所有資料夾的命令。dir 用於顯示指定資料夾和目錄的命令 tree 以樹狀圖列出目錄內容 du 顯示目錄或檔案大小 chmod 用於改變指定目錄或檔案的許可權命令。chown 用於改變檔案擁有屬性的命令。chgrp 用於改變檔案群組的命令。chattr 用於設定檔...
Linux 命令大全
前提條件 使用者必須對被建立目錄的父目錄有寫許可權 格式 mkdir 選項 相對目錄 絕對目錄 例子 1.建立許可權為777的目錄 預設775 mkdir m 777 test1test1的許可權為 drwxrwxrwx 2.建立時建立父目錄和顯示資訊 mkdir vp 3.建立時建立父目錄和設定許...