パスワードファイル

以前は/etc/passwd に直接パスワードが書かれていたが、現在は/etc/shadowに格納するシャドウパスワード方式になった。

ファイル属性は/etc/shadowはrootしか読み書きできないようになっている。

pi@raspberrypi:~$ ls -l /etc/shadow
-rw-r----- 1 root shadow 921 11月 21 17:05 /etc/shadow
pi@raspberrypi:~$ ls -l /etc/passwd
-rw-r--r-- 1 root root 1665 11月 21 17:05 /etc/passwd

実際に/etc/shadowに書かれているパスワードを確認。
中身はハッシュ値が格納されている。

pi@raspberrypi:~$ sudo cat /etc/shadow | grep pi
pi:$5$clhzvEqPUI$X2QJCtWBs22x0hfMq3WEcuALgRth13MmLE9m2Emt6V9:19257:0:99999:7:::

格納されている形式は

$id$salt$encrypted

暗号化はcrypt関数を使用している。

前半の clhzvEqPUI が slat になっていて、同じパスワードをセットしても値が変わるのはここが原因。
上記の id が 5 になっているのは SHA-256 を使用していることを示す。
encrypted は SHA-256 では 43文字固定で出力される。

パスワードハッシュの生成

perl でワンライナーで書くとこんな感じ

perl -e 'print crypt("raspberry", "\$5\$clhzvEqPUI"), "\n";'

実行させると

pi@raspberrypi:~$ perl -e 'print crypt("raspberry", "\$5\$clhzvEqPUI"), "\n";'
$5$clhzvEqPUI$X2QJCtWBs22x0hfMq3WEcuALgRth13MmLE9m2Emt6V9
pi@raspberrypi:~$

と無事に同じ出力を確認することができる。




トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-12-13 (火) 13:20:00