您好,登錄后才能下訂單哦!
今天小編給大家分享一下linux用戶密碼存放的文件是什么的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
linux用戶密碼存放在“/etc/shadow”文件中。“/etc/shadow”文件又稱為“影子文件”,用于存儲Linux系統中用戶的密碼信息;該文件只有root用戶擁有讀權限,其他用戶沒有任何權限,這樣就保證了用戶密碼的安全性。
linux用戶密碼存放在“/etc/shadow”文件中。
/etc/shadow 文件,用于存儲 Linux 系統中用戶的密碼信息,又稱為“影子文件”。
由于/etc/passwd 文件允許所有用戶讀取,易導致用戶密碼泄露,因此 Linux 系統將用戶的密碼信息從 /etc/passwd 文件中分離出來,并單獨放到了此文件中。
/etc/shadow 文件只有 root 用戶擁有讀權限,其他用戶沒有任何權限,這樣就保證了用戶密碼的安全性。
注意,如果這個文件的權限發生了改變,則需要注意是否是惡意攻擊。
執行如下命令,打開/etc/shadow 文件看看:
vim /etc/shadow
root: $6$9w5Td6lg
$bgpsy3olsq9WwWvS5Sst2W3ZiJpuCGDY.4w4MRk3ob/i85fl38RH15wzVoom ff9isV1 PzdcXmixzhnMVhMxbvO:15775:0:99999:7:::
bin:*:15513:0:99999:7:::
daemon:*:15513:0:99999:7:::
…省略部分輸出…
同 /etc/passwd 文件一樣,文件中每行代表一個用戶,同樣使用 ":" 作為分隔符,不同之處在于,每行用戶信息被劃分為 9 個字段。每個字段的含義如下:
用戶名:加密密碼:最后一次修改時間:最小修改時間間隔:密碼有效期:密碼需要變更前的警告天數:密碼過期后的寬限時間:賬號失效時間:保留字段
passwd
命令用于更新/etc/shadow
文件中用戶的身份驗證令牌。
# 當前用戶修改密碼,直接使用passwd
passwd
# 為其他用戶修改密碼
passwd 用戶名
禁用用戶passwd
命令用于更新/etc/shadow
文件中用戶的身份驗證令牌。
# 鎖定用戶的密碼
passwd -l daygeek
## 回顯
Locking password for user daygeek.
passwd: Success
# 查看用戶的密碼鎖定狀態
passwd -S daygeek
# 解鎖用戶的密碼
passwd -u daygeek
# 查看賬號的密碼狀態
passwd -S root
帳戶密碼狀態的簡短信息。
LK:密碼被鎖定
NP:沒有設置密碼
PS:密碼已設置
單引號' '
,雙引號" "
的區別
:
單引號' '
剝奪了所有字符的特殊含義,單引號' '
內就變成了單純的字符。
雙引號" "
則對于雙引號" "
內的參數替換($)
和命令替換(``)
是個例外。
# 用echo寫入新密碼到passwd中
## passwd --stdin:從標準輸入(比如管道)寫入密碼
# echo雙引號不要使用特殊字符,比如!,會被轉義
## echo使用單引號,引號內的字符不會被轉義
echo '新密碼'|passwd --stdin 用戶名
# Ubuntu不支持 --stdin參數,可以使用替代命令
echo user:pass | chpasswd
## -d 刪除已有密碼
passwd -d 用戶名
[root@localhost ~]# chage --help
用法:chage [選項] 登錄
選項:
-d, --lastday 最近日期 將最近一次密碼設置時間設為“最近日期”
-E, --expiredate 過期日期 將帳戶過期時間設為“過期日期”
-h, --help 顯示此幫助信息并推出
-I, --inactive INACITVE 過期 INACTIVE 天數后,設定密碼為失效狀態
-l, --list 顯示帳戶年齡信息
-m, --mindays 最小天數 將兩次改變密碼之間相距的最小天數設為“最小天數”
-M, --maxdays 最大天數 將兩次改變密碼之間相距的最大天數設為“最大天數”
-R, --root CHROOT_DIR chroot 到的目錄
-W, --warndays 警告天數 將過期警告天數設為“警告天數”
# 查看上次密碼的修改時間
# 查看密碼過期配置
chage -l root
# 修改testt用戶密碼信息,設置最大有效期為120天,最小有效期為7天
## -M, --maxdays 最大天數 將兩次改變密碼之間相距的最大天數設為“最大天數”
## -m, --mindays 最小天數 將兩次改變密碼之間相距的最小天數設為“最小天數”
chage -M 120 -m 7 test
# test這個賬號的有效期是2014-09-30
## -E, --expiredate 過期日期 將帳戶過期時間設為“過期日期”
chage -E '2014-09-30' test
# 修改用戶的密碼有效期為永久(5個9)
## -M, --maxdays 最大天數 將兩次改變密碼之間相距的最大天數設為“最大天數”
chage -M 99999 用戶名
# 使密碼立即失效
# 強制要求用戶登陸時修改密碼
## -d, --lastday 最近日期 將最近一次密碼設置時間設為“最近日期”
chage -d 0 用戶名
# 查看密碼過期時間
[root@localhost ~]# chage -l use1
最近一次密碼修改時間 :密碼必須修改
密碼過期時間 :密碼必須修改
密碼失效時間 :密碼必須修改
帳戶過期時間 :從不
兩次改變密碼之間相距的最小天數 :0
兩次改變密碼之間相距的最大天數 :99999
在密碼過期之前警告的天數 :7
[student@workstation data-secret]$ openssl passwd --help
Usage: passwd [options]
Valid options are:
-help Display this summary
-in infile Read passwords from file
-noverify Never verify when reading password from terminal
-quiet No warnings
-table Format output as table
-reverse Switch table columns
-salt val Use provided salt
-stdin Read passwords from stdin
-6 SHA512-based password algorithm
-5 SHA256-based password algorithm
-apr1 MD5-based password algorithm, Apache variant
-1 MD5-based password algorithm
-aixmd5 AIX MD5-based password algorithm
-crypt Standard Unix password algorithm (default)
-rand val Load the file(s) into the random number generator
-writerand outfile Write random data to the specified file
[student@workstation data-secret]$ openssl passwd -6
Password: # 提示輸入密碼
Verifying - Password: # 確認密碼
# 生成的加密后的密碼
$6$hkf.tpoz/woyZn1c$ArDSHie9USt44nnqymqL6OZWKsI3e0WWl4NedhfmQOlSEN6er18SYSfyGnvxQmEgC81DLKuERhqDm5Ei3iIDw0
使用-salt 字符串 給密碼加鹽
不同的鹽,密碼相同,算法相同,密文不同
相同的鹽,密碼相同,算法相同,密文相同
# 加鹽rhel生成密碼密文
[student@workstation data-secret]$ openssl passwd -6 -salt rhel
Password: # 輸入密碼
## 生成的密文
$6$rhel$2JncQy/NAQr4GHoVgz49YGRni8lXx3jakLxYxEBcTYLN8hh7Nu9fJc4zSbRhiJmv0vBlB6W3YyQp.nLZo8MCy0
# 再次實驗加鹽rhel生成密文
[student@workstation data-secret]$ openssl passwd -6 -salt rhel
Password: # 輸入密碼
## 生成的密文與上次密文完全一致
$6$rhel$2JncQy/NAQr4GHoVgz49YGRni8lXx3jakLxYxEBcTYLN8hh7Nu9fJc4zSbRhiJmv0vBlB6W3YyQp.nLZo8MCy0
$6$rhel$2JncQy/NAQr4GHoVgz49YGRni8lXx3jakLxYxEBcTYLN8hh7Nu9fJc4zSbRhiJmv0vBlB6W3YyQp.nLZo8MCy0
## $6 表示加密算法sha512
## $rhel 表示鹽時rhel
## 第三個$之后才是 算法+鹽+原密碼 生成的密文
vim /etc/login.defs
## 修改默認密碼策略為20天后過期
PASS_MAX_DAYS 20
以上就是“linux用戶密碼存放的文件是什么”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。