您好,登錄后才能下訂單哦!
今天小編給大家分享一下linux用戶(hù)密碼存放的文件是什么的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來(lái)了解一下吧。
linux用戶(hù)密碼存放在“/etc/shadow”文件中?!?etc/shadow”文件又稱(chēng)為“影子文件”,用于存儲(chǔ)Linux系統(tǒng)中用戶(hù)的密碼信息;該文件只有root用戶(hù)擁有讀權(quán)限,其他用戶(hù)沒(méi)有任何權(quán)限,這樣就保證了用戶(hù)密碼的安全性。
linux用戶(hù)密碼存放在“/etc/shadow”文件中。
/etc/shadow 文件,用于存儲(chǔ) Linux 系統(tǒng)中用戶(hù)的密碼信息,又稱(chēng)為“影子文件”。
由于/etc/passwd 文件允許所有用戶(hù)讀取,易導(dǎo)致用戶(hù)密碼泄露,因此 Linux 系統(tǒng)將用戶(hù)的密碼信息從 /etc/passwd 文件中分離出來(lái),并單獨(dú)放到了此文件中。
/etc/shadow 文件只有 root 用戶(hù)擁有讀權(quán)限,其他用戶(hù)沒(méi)有任何權(quán)限,這樣就保證了用戶(hù)密碼的安全性。
注意,如果這個(gè)文件的權(quán)限發(fā)生了改變,則需要注意是否是惡意攻擊。
執(zhí)行如下命令,打開(kāi)/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 文件一樣,文件中每行代表一個(gè)用戶(hù),同樣使用 ":" 作為分隔符,不同之處在于,每行用戶(hù)信息被劃分為 9 個(gè)字段。每個(gè)字段的含義如下:
用戶(hù)名:加密密碼:最后一次修改時(shí)間:最小修改時(shí)間間隔:密碼有效期:密碼需要變更前的警告天數(shù):密碼過(guò)期后的寬限時(shí)間:賬號(hào)失效時(shí)間:保留字段
passwd
命令用于更新/etc/shadow
文件中用戶(hù)的身份驗(yàn)證令牌。
# 當(dāng)前用戶(hù)修改密碼,直接使用passwd
passwd
# 為其他用戶(hù)修改密碼
passwd 用戶(hù)名
禁用用戶(hù)passwd
命令用于更新/etc/shadow
文件中用戶(hù)的身份驗(yàn)證令牌。
# 鎖定用戶(hù)的密碼
passwd -l daygeek
## 回顯
Locking password for user daygeek.
passwd: Success
# 查看用戶(hù)的密碼鎖定狀態(tài)
passwd -S daygeek
# 解鎖用戶(hù)的密碼
passwd -u daygeek
# 查看賬號(hào)的密碼狀態(tài)
passwd -S root
帳戶(hù)密碼狀態(tài)的簡(jiǎn)短信息。
LK:密碼被鎖定
NP:沒(méi)有設(shè)置密碼
PS:密碼已設(shè)置
單引號(hào)' '
,雙引號(hào)" "
的區(qū)別
:
單引號(hào)' '
剝奪了所有字符的特殊含義,單引號(hào)' '
內(nèi)就變成了單純的字符。
雙引號(hào)" "
則對(duì)于雙引號(hào)" "
內(nèi)的參數(shù)替換($)
和命令替換(``)
是個(gè)例外。
# 用echo寫(xiě)入新密碼到passwd中
## passwd --stdin:從標(biāo)準(zhǔn)輸入(比如管道)寫(xiě)入密碼
# echo雙引號(hào)不要使用特殊字符,比如!,會(huì)被轉(zhuǎn)義
## echo使用單引號(hào),引號(hào)內(nèi)的字符不會(huì)被轉(zhuǎn)義
echo '新密碼'|passwd --stdin 用戶(hù)名
# Ubuntu不支持 --stdin參數(shù),可以使用替代命令
echo user:pass | chpasswd
## -d 刪除已有密碼
passwd -d 用戶(hù)名
[root@localhost ~]# chage --help
用法:chage [選項(xiàng)] 登錄
選項(xiàng):
-d, --lastday 最近日期 將最近一次密碼設(shè)置時(shí)間設(shè)為“最近日期”
-E, --expiredate 過(guò)期日期 將帳戶(hù)過(guò)期時(shí)間設(shè)為“過(guò)期日期”
-h, --help 顯示此幫助信息并推出
-I, --inactive INACITVE 過(guò)期 INACTIVE 天數(shù)后,設(shè)定密碼為失效狀態(tài)
-l, --list 顯示帳戶(hù)年齡信息
-m, --mindays 最小天數(shù) 將兩次改變密碼之間相距的最小天數(shù)設(shè)為“最小天數(shù)”
-M, --maxdays 最大天數(shù) 將兩次改變密碼之間相距的最大天數(shù)設(shè)為“最大天數(shù)”
-R, --root CHROOT_DIR chroot 到的目錄
-W, --warndays 警告天數(shù) 將過(guò)期警告天數(shù)設(shè)為“警告天數(shù)”
# 查看上次密碼的修改時(shí)間
# 查看密碼過(guò)期配置
chage -l root
# 修改testt用戶(hù)密碼信息,設(shè)置最大有效期為120天,最小有效期為7天
## -M, --maxdays 最大天數(shù) 將兩次改變密碼之間相距的最大天數(shù)設(shè)為“最大天數(shù)”
## -m, --mindays 最小天數(shù) 將兩次改變密碼之間相距的最小天數(shù)設(shè)為“最小天數(shù)”
chage -M 120 -m 7 test
# test這個(gè)賬號(hào)的有效期是2014-09-30
## -E, --expiredate 過(guò)期日期 將帳戶(hù)過(guò)期時(shí)間設(shè)為“過(guò)期日期”
chage -E '2014-09-30' test
# 修改用戶(hù)的密碼有效期為永久(5個(gè)9)
## -M, --maxdays 最大天數(shù) 將兩次改變密碼之間相距的最大天數(shù)設(shè)為“最大天數(shù)”
chage -M 99999 用戶(hù)名
# 使密碼立即失效
# 強(qiáng)制要求用戶(hù)登陸時(shí)修改密碼
## -d, --lastday 最近日期 將最近一次密碼設(shè)置時(shí)間設(shè)為“最近日期”
chage -d 0 用戶(hù)名
# 查看密碼過(guò)期時(shí)間
[root@localhost ~]# chage -l use1
最近一次密碼修改時(shí)間 :密碼必須修改
密碼過(guò)期時(shí)間 :密碼必須修改
密碼失效時(shí)間 :密碼必須修改
帳戶(hù)過(guò)期時(shí)間 :從不
兩次改變密碼之間相距的最小天數(shù) :0
兩次改變密碼之間相距的最大天數(shù) :99999
在密碼過(guò)期之前警告的天數(shù) :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: # 確認(rèn)密碼
# 生成的加密后的密碼
$6$hkf.tpoz/woyZn1c$ArDSHie9USt44nnqymqL6OZWKsI3e0WWl4NedhfmQOlSEN6er18SYSfyGnvxQmEgC81DLKuERhqDm5Ei3iIDw0
使用-salt 字符串 給密碼加鹽
不同的鹽,密碼相同,算法相同,密文不同
相同的鹽,密碼相同,算法相同,密文相同
# 加鹽rhel生成密碼密文
[student@workstation data-secret]$ openssl passwd -6 -salt rhel
Password: # 輸入密碼
## 生成的密文
$6$rhel$2JncQy/NAQr4GHoVgz49YGRni8lXx3jakLxYxEBcTYLN8hh7Nu9fJc4zSbRhiJmv0vBlB6W3YyQp.nLZo8MCy0
# 再次實(shí)驗(yàn)加鹽rhel生成密文
[student@workstation data-secret]$ openssl passwd -6 -salt rhel
Password: # 輸入密碼
## 生成的密文與上次密文完全一致
$6$rhel$2JncQy/NAQr4GHoVgz49YGRni8lXx3jakLxYxEBcTYLN8hh7Nu9fJc4zSbRhiJmv0vBlB6W3YyQp.nLZo8MCy0
$6$rhel$2JncQy/NAQr4GHoVgz49YGRni8lXx3jakLxYxEBcTYLN8hh7Nu9fJc4zSbRhiJmv0vBlB6W3YyQp.nLZo8MCy0
## $6 表示加密算法sha512
## $rhel 表示鹽時(shí)rhel
## 第三個(gè)$之后才是 算法+鹽+原密碼 生成的密文
vim /etc/login.defs
## 修改默認(rèn)密碼策略為20天后過(guò)期
PASS_MAX_DAYS 20
以上就是“l(fā)inux用戶(hù)密碼存放的文件是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。