macOS Server の証明書を確認する

xscertd に問題がある場合や、サービスに証明書を割り当てる場合、状況に応じて、キーチェーンのアクセス制御を確認する必要があります。

「getCACerts」と入ったメッセージがログファイルに表示される場合や、OS X Server でサービスに証明書を割り当てることができない場合は、アクセス制御が原因で、識別情報の秘密鍵コンポーネントにサーバがアクセスできなくなっていると考えられます。

アクセス制御を確認する

  1. サーバでキーチェーンアクセスを開きます。
  2. 左側のサイドバーの「キーチェーン」で「システム」を選択します。
  3. 左側のサイドバーの「分類」で「すべての項目」を選択します。「すべての項目」が表示されない場合は、 をクリックします。
  4. 以下の OPENDIRECTORY 識別プリファレンスオブジェクトを確認します。

OPENDIRECTORY_ROOT_CA_IDENTITY を確認する

  1. OPENDIRECTORY_ROOT_CA_IDENTITY 識別プリファレンスをダブルクリックします。
  2. 「優先する証明書」メニューで、「[組織名] Open Directory 認証局」と設定されているはずです。カスタムの信頼設定 が指定されていることを確認してください。
  3. この証明書の名前と表示される有効期限を控えておきます。識別プリファレンスのウインドウを閉じます。
  4. 「分類」の「証明書」をクリックします。
  5. 名前と有効期限が同じ証明書を探します。この証明書の開閉用三角ボタンをクリックします。証明書の下に秘密鍵が表示されます。
  6. 秘密鍵をダブルクリックします。
  7. 「アクセス制御」タブをクリックします。場合によって、管理者の認証情報の入力が必要です。
  8. 以下のアプリケーションにこのキーへのアクセスが許可されているはずです。
    slapconfig
    xscertd-helper
    xscertadmin
    servermgrd 
  9. 上記いずれかの項目がリストに表示されていない場合は、手動で追加します。「+」ボタンをクリックして新しい項目を追加し、「command + shift + G」キーを押します。
  10. 「フォルダへ移動」ウインドウで、見当たらない項目の具体的なパスを入力します。
    • slapconfig の場合は、パス「/usr/sbin/slapconfig」を入力します。
    • xscertd-helper の場合は、パス「/usr/libexec/xscertd-helper」を入力します。
    • xcertadmin の場合は、パス「/usr/sbin/xscertadmin」を入力します。
    • servermgrd の場合は、パス「/アプリケーション/Server.app/Contents/ServerRoot/System/Library/CoreServices/ServerManagerDaemon.bundle/Contents/MacOS/servermgrd」を入力します。
  11. 見当たらない項目のパスを入力したら、「移動」をクリックします。その項目がハイライトされたら、「追加」をクリックして項目を追加します。
  12. すべての項目がリストに表示されたら、「変更内容を保存」をクリックします。管理者のパスワードを求められたら入力し、「キーチェーンを変更」をクリックします。

 

OPENDIRECTORY_INT_CA_IDENTITY を確認する

  1. OPENDIRECTORY_INT_CA_IDENTITY 識別プリファレンスをダブルクリックします。
  2. 「優先する証明書」メニューで、「IntermediateCA_[DNS サーバ名]_1」と設定されているはずです。有効のマーク が付いていて、このルート認証局から発行されたものであることを確認してください。
  3. この証明書の名前と表示される有効期限を控えておきます。識別プリファレンスのウインドウを閉じます。
  4. 「分類」の「証明書」をクリックします。
  5. 名前と有効期限が同じ証明書を探します。この証明書の開閉用三角ボタンをクリックします。証明書の下に秘密鍵が表示されます。
  6. 秘密鍵をダブルクリックします。
  7. 「アクセス制御」タブをクリックします。場合によって、管理者の認証情報の入力が必要です。
  8. 以下のアプリケーションにこのキーへのアクセスが許可されているはずです。
    slapconfig
    xscertd-helper
    xscertadmin
    servermgrd 
  9. 上記いずれかの項目がリストに表示されていない場合は、手動で追加します。「+」ボタンをクリックして新しい項目を追加し、「command + shift + G」キーを押します。
  10. 「フォルダへ移動」ウインドウで、見当たらない項目の具体的なパスを入力します。
    • slapconfig の場合は、パス「/usr/sbin/slapconfig」を入力します。
    • xscertd-helper の場合は、パス「/usr/libexec/xscertd-helper」を入力します。
    • xcertadmin の場合は、パス「/usr/sbin/xscertadmin」を入力します。
    • servermgrd の場合は、パス「/アプリケーション/Server.app/Contents/ServerRoot/System/Library/CoreServices/ServerManagerDaemon.bundle/Contents/MacOS/servermgrd」を入力します。
  11. 見当たらない項目のパスを入力したら、「移動」をクリックします。その項目がハイライトされたら、「追加」をクリックして項目を追加します。
  12. すべての項目がリストに表示されたら、「変更内容を保存」をクリックします。管理者のパスワードを求められたら入力し、「キーチェーンを変更」をクリックします。

OPENDIRECTORY_SSL_IDENTITY を確認する

  1. OPENDIRECTORY_SSL_IDENTITY 識別プリファレンスをダブルクリックします。
  2. 「優先する証明書」メニューで、「[dns サーバ名]」と設定されているはずです。有効のマーク が付いていて、OPENDIRECTORY_SSL_IDENTITY から発行されたものであることを確認してください。
  3. この証明書の名前と表示される有効期限を控えておきます。識別プリファレンスのウインドウを閉じます。
  4. 「分類」の「証明書」をクリックします。
  5. 名前と有効期限が同じ証明書を探します。この証明書の開閉用三角ボタンをクリックします。証明書の下に秘密鍵が表示されます。
  6. 秘密鍵をダブルクリックします。
  7. 「アクセス制御」タブをクリックします。セキュリティ通知が表示される場合があります。
  8. 「この項目の使用をすべてのアプリケーションに許可」が選択されていることを確認します。「変更内容を保存」をクリックします。管理者のパスワードを求められたら入力し、「キーチェーンを変更」をクリックします。

識別プリファレンスの確認が終わったら

3 つすべての識別プリファレンスの確認が済んだら、サーバを再起動して、問題が解決したか確認してください。

公開日: