2016年2月3日水曜日

[CentOS7] SHA512 で暗号化したい


SHA512の暗号化コードが欲しい場合、CentOS6 だと grub-crypt コマンドを使用してましたが、CentOS7 には grub-crypt がありません。

最小構成だと perl はインストールされませんが、 python はあるので、python で暗号化コードを作成します。

"password" という文字列を暗号化したい場合、以下のようになります。
SALT値として "salt1234" を与えて暗号化しています。

[root@node71 ~]# python -c "import crypt, getpass, pwd; print crypt.crypt('password', '\$6\$salt1234\$')"
$6$salt1234$Zr07alHmuONZlfKILiGKKULQZaBG6Qmf5smHCNH35KnciTapZ7dItwaCv5SKZ1xH9ydG59SCgkdtsTqVWGhk81


usermod コマンドでパスワードを設定する場合は、以下のようになります。

[root@node71 ~]# usermod -p '$6$salt1234$Zr07alHmuONZlfKILiGKKULQZaBG6Qmf5smHCNH35KnciTapZ7dItwaCv5SKZ1xH9ydG59SCgkdtsTqVWGhk81' user01
[root@node71 ~]# getent shadow user01
user01:$6$salt1234$Zr07alHmuONZlfKILiGKKULQZaBG6Qmf5smHCNH35KnciTapZ7dItwaCv5SKZ1xH9ydG59SCgkdtsTqVWGhk81:16833:0:99999:7:::