溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

linux用戶(hù)密碼存放的文件是什么

發(fā)布時(shí)間:2023-03-06 10:32:32 來(lái)源:億速云 閱讀:149 作者:iii 欄目:建站服務(wù)器

今天小編給大家分享一下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”文件中。

Linux /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í)間:保留字段

linux用戶(hù)密碼存放的文件是什么

修改密碼:passwd

passwd命令用于更新/etc/shadow文件中用戶(hù)的身份驗(yàn)證令牌。

linux用戶(hù)密碼存放的文件是什么

# 當(dāng)前用戶(hù)修改密碼,直接使用passwd
passwd

# 為其他用戶(hù)修改密碼
passwd 用戶(hù)名

鎖定用戶(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)

# 查看賬號(hào)的密碼狀態(tài)
passwd -S root

帳戶(hù)密碼狀態(tài)的簡(jiǎn)短信息。

  • LK:密碼被鎖定

  • NP:沒(méi)有設(shè)置密碼

  • PS:密碼已設(shè)置

linux用戶(hù)密碼存放的文件是什么

非交互式修改密碼

單引號(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

linux用戶(hù)密碼存放的文件是什么

刪除用戶(hù)的密碼

## -d	刪除已有密碼
passwd -d 用戶(hù)名

修改帳號(hào)和密碼的有效期限chage

linux用戶(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ù)”

使用-l參數(shù)列出用戶(hù)密碼過(guò)期的設(shè)置:

# 查看上次密碼的修改時(shí)間
# 查看密碼過(guò)期配置
chage -l root

linux用戶(hù)密碼存放的文件是什么

修改密碼有效期

# 修改testt用戶(hù)密碼信息,設(shè)置最大有效期為120天,最小有效期為7天
## -M, --maxdays 最大天數(shù)        將兩次改變密碼之間相距的最大天數(shù)設(shè)為“最大天數(shù)”
## -m, --mindays 最小天數(shù)        將兩次改變密碼之間相距的最小天數(shù)設(shè)為“最小天數(shù)”
chage -M 120 -m 7 test

設(shè)置密碼有效期到指定日期

# test這個(gè)賬號(hào)的有效期是2014-09-30
## -E, --expiredate 過(guò)期日期     將帳戶(hù)過(guò)期時(shí)間設(shè)為“過(guò)期日期”
chage -E '2014-09-30' test

修改為密碼永不過(guò)期

# 修改用戶(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

使用openssl生成密碼

查看支持的加密算法

[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

使用sha512算法生成密碼

[student@workstation data-secret]$ openssl passwd -6
Password:							# 提示輸入密碼
Verifying - Password:				# 確認(rèn)密碼

# 生成的加密后的密碼
$6$hkf.tpoz/woyZn1c$ArDSHie9USt44nnqymqL6OZWKsI3e0WWl4NedhfmQOlSEN6er18SYSfyGnvxQmEgC81DLKuERhqDm5Ei3iIDw0

給密碼加鹽(-salt)

使用-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è)$之后才是 算法+鹽+原密碼 生成的密文

配置創(chuàng)建新用戶(hù)的密碼策略

修改密碼最大有效期為20天

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è)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(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)容。

AI