2015年5月25日月曜日

OpenLDAPのパスワードハッシュ化

OpenLDAPでSHA2やPBKDF2方式のパスワードの生成方法のメモ

PBKDF2-SHA1方式
# slappasswd -h '{PBKDF2}' -o module-path=openldapモジュールのパス -o module-load=pw-pbkdf2 -s secret

PBKDF2-SHA256方式
# slappasswd -h '{PBKDF2-SHA256}' -o module-path=openldapモジュールのパス -o module-load=pw-pbkdf2 -s secret

PBKDF2-SHA512方式
# slappasswd -h '{PBKDF2-SHA512}' -o module-path=openldapモジュールのパス -o module-load=pw-pbkdf2 -s secret


SSHA512方式
# slappasswd -h '{SSHA512}' -o module-path=openldapモジュールのパス -o module-load=pw-sha2 -s secret

SSHA256方式
# slappasswd -h '{SSHA256}' -o module-path=openldapモジュールのパス -o module-load=pw-sha2 -s secret

Pythonのpasslibモジュールを使うと、簡単にPBKDF2-SHA512形式のパスワードを生成できる。

Cent6でのpasslibモジュールの利用準備
# yum install python-setuptools
# easy_install pip
# pip install passlib

passlibモジュールによるPBKDF2-SHA512形式パスワード文字列の生成スクリプト。
#!/usr/bin/env python
from passlib.hash import ldap_pbkdf2_sha512
def main():
password="secret"
hash = ldap_pbkdf2_sha512.encrypt(password, rounds=60000, salt_size=4)
print hash
return
main()



0 件のコメント:

コメントを投稿