パスワードの一括変換についての備忘録です。
→これはdebian GNU 5.0 lennyと、Windowsマシンを使うという前提です。
やり方のダイジェスト!
---------------------------------
1. ls /home > a1.txt または ls /var/spool/mail > a1.txt で、登録ユーザの一覧をテキストファイルにする。
2. テキストファイルをエクセルに展開。たて一列にユーザ名が並ぶ。
3. パスワードを変更したいユーザだけを残して残りは削除。
4. ここへ行ってパスワードを人数分作る(桁数は15程度)。
5. 出来上がったパスワードをエクセルのユーザ名の隣へコピペ。
6. 内容を確認してcsv形式で保存。
7. このcsvファイルをwordpadで開く←notepadではありません!
8. 『置換』で『,』カンマをすべて『:』コロンへ一括置換する。
9. a2.txt と、text形式で保存。→Linuxマシンへコピー。
10. nkf -Lu a2.txt > a3.txt 行末コードをCRLFからLFにする。
11. /etc/login.defs を開き、#MD5_CRYPT_ENAB no のコメントアウトをはずし、yes に直す。
12. 一度ログアウトして再度ログイン、su - で root へ。
13. chpasswd < a3.txt 【一括でパスワードが変更される】
14. いくつか新しいパスワードでログインできるかチェックする。
※chpasswdはデフォルトでは暗号化ロジックがDESなので、8文字以上のパスワードは使えません。
11の操作でMD5を使うようにするとこの制限はなくなります。
※正確に書くとDESの場合、8文字以上パスワードを設定しても、8文字分しかチェックされません。
つまり、12345678abcと12345678xxyは同じものと扱われてしまいます。