11

私の人生では、これはどこにも見つからないようです。誰かが私にリンクを教えてくれれば、私はとても感謝しています。

openLDAPでSSHAハッシュを有効にしようとしています。デフォルトでは、パスワードはプレーンテキストで保存されます。これは犯罪だと思いますが、私はADの人なので、何を知っていますか。ただし、必要に応じて、ハッシュをオンにするために必要な情報を簡単に見つけることができると思います。そして、あなたは選びませんか?

4

5 に答える 5

11

'password-hash'を使用して、ハッシュアルゴリズムを変更できます。デフォルトのアルゴリズムはSSHA(クリアテキストではありません)です。

slapdは、クライアントから送信されたパスワードがプレーンテキストの場合にのみ上記を使用し、クライアントがハッシュされたパスワードを送信している場合は、そのまま保存されることに注意してください。

例:pam_ldapで、pam_password exop(またはclear)を使用します

パスワードがハッシュ化されており、それがopenLDAPが宣伝する機能であることがわかっている場合、サーバーでパスワード強度テストはどのように実行されますか?

ハッシュ化されたパスワードを送信した場合、slapdは強度テストを実行できないため、クライアントはクリアテキストでパスワードを送信する必要があります(ppolicyにはハッシュ化されたパスワードを受け入れる/拒否するオプションがあります)。

ノート:

  1. クライアントがssl/tlsを使用していることを確認してください(パスワードがクリアテキストで送信されないようにするため)
  2. userpassword属性には特殊文字({})が含まれているため、使用されているハッシュアルゴリズムを識別するためにbase64-dを実行する必要があります。

例:通常、属性は次の形式で返されます(::結果がbase64でエンコードされていることを示します)

userPassword:: e1NTSEF9QjU0VXNmQWhJN1dQZ3FvbDVSQ1l5RHUzTlVqa1luVVhYV2ljbmc9PQ=
 =

$ echo e1NTSEF9QjU0VXNmQWhJN1dQZ3FvbDVSQ1l5RHUzTlVqa1luVVhYV2ljbmc9PQ==|openssl base64 -d
{SSHA}B54UsfAhI7WPgqol5RCYyDu3NUjkYnUXXWicng==
于 2012-07-31T19:58:59.840 に答える
2

LDAP仕様では、相互運用性のためにプレーンテキストのパスワードが必要です。上記のセキュリティに関するリンクは、サーバーが適用できるデフォルトのハッシュタイプのオプションを提供しますが、その影響を考慮してください。

于 2012-07-31T04:17:45.127 に答える
2

userPasswordLDAPの追加/変更操作で属性 を保存しようとすると、userPassword値はプレーンテキストとして保存されます。ただし、OpenLDAPのオーバーレイモジュールのppolicy_hash_cleartextオプションを 使用して、この動作をオーバーライドできます。ppolicy有効にすると、クライアントがプレーンテキストのパスワードを送信すると、SSHAデフォルトで保存されます。OpenLADPでハッシュパスワードを有効にする方法の詳細については、こちらをご覧ください。

于 2015-06-26T07:33:57.377 に答える
2

これは古い質問ですが、それでも関連性があります。総当たり攻撃が比較的容易なため、SSHA(SHA-1など)の使用は推奨されなくなりました。

より安全なハッシュアルゴリズムはSHA-512です。OpenSSL 1.1を使用すると、次のようにクライアント側でより強力なハッシュを生成できます。

_generate_password_hash() {
  local plaintext; plaintext="$1"

  command printf "{CRYPT}%s" "$(openssl passwd -6 -stdin <<< "${plaintext}")"
}

これにより、次のような文字列が出力されます。

{CRYPT}$6$SGIWzAbjh.3WoQQJ$vEFlcRBQpd2fJ8dxcbojr83pjQcXcJ.InRMzNRryTQ//fMYJoCRFWAPn22EvJyDikG.MNuUqRYqQtI97Clj2F0

{CRYPT}最初の代わりに注意してください{SSHA}

たとえば、ldapmodifyを使用してパスワードを適用できます。

ldapmodify -h "${LDAP_HOST}" -D cn=user,dc=example,dc=com -W <<EOF
dn: cn=user,dc=example,dc=com
changetype: modify
replace: userPassword
userPassword: $(_generate_password_hash NEW_PASSWORD_HERE)
EOF

LibreSSLには、使用可能なハッシュアルゴリズムの異なるセットがあることに注意してください。オプションが表示されないopenssl version場合は、実際のOpenSSLバージョンを確認してください。openssl passwd --help-6

于 2019-10-30T13:13:55.933 に答える
1

OpenLDAPは、管理者が選択できるさまざまなストレージスキームをサポートしています。アカウントの作成に使用するツールは、ハッシュを実行するように構成する必要があります。サーバーは、クライアントが要求する形式でパスワードを保存します。ハッシュが適切に行われると、ldapsearchは次のようにハッシュされたパスワードを表示します。

userPassword: {SSHA}d0Q0626PSH9VUld7yWpR0k6BlpQmtczb

詳細については、 http://www.openldap.org/doc/admin24/security.htmlを参照してください。

管理ツールに関しては、個人的にhttp://phpldapadmin.sourceforge.netをお勧めします。

于 2012-07-31T00:37:04.230 に答える