MacOS X LeopardでのOpenLDAP over SSLのクライアント側設定 2008.05.23

MacOS X Tiger(10.4)ではOpenLDAP over SSLを使用するにはディレクトリユーティリティでGUI上からSSLを使用の
チェックボックスをチェックするだけで,正常に機能していた.MacOS X Leopard(10.5)においては同様のGUIによる
設定だけでは機能しないようである.

Cool Solutions: LDAP Directory Access over SSL, with MacOS 10.5 Leopard によると,OpenLDAPの設定ファイル
(/etc/openldap/ldap.conf)において,TLS_REQCERTの項目がTigerではneverに設定されている.このためTigerでは
証明書のチェックが行われないためうまく機能していた.LeopardではTLS_REQCERTがdemandに設定されているため,
証明書のチェックを行おうとするので,SSL接続が確立できないということである.

またAppleのサポートページにも解決法が記載されている.
概略すると,クライアント側のMacにおいて以下を実行する.

  • ターミナル上から次のコマンドを実行:openssl s_client -connect servername:636
  • 画面に表示された「-----BEGIN CERTIFICATE-----」から「-----END CERTIFICATE-----」の行をコピーする.
  • sudo suで管理者になり例えば/etc/openldap/mycertというファイルを作ってコピーした内容をペーストする.
  • /etc/openldap/ldap.confファイルを編集して,TLS_CACERT /etc/openldap/mycertを追加し,サーバ証明書を指定する.
  • 再起動する.
  • ちなみに,servernameは証明書のコモンネームと一致していないとはじかれてしまう.


    by Jun ARAI, 2008