Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

6.5. サーバーロールの管理

IdM サーバーは、インストールされているサービスを基に、CA サーバー、DNS サーバー、またはキー回復機関 (KRA) サーバーなどの各種の サーバーロール を実行することができます。

6.5.1. サーバーロールの表示

Web UI: サーバーロールの表示

サポートされるサーバーロールの全一覧を確認するには、IPA ServerTopologyServer Roles をクリックします。
  • Role status が absent の場合は、トポロジー内でそのロールを実行しているサーバーがないことを示しています。
  • Role status が enabled の場合は、トポロジー内でそのロールを実行しているサーバーが 1 台以上あることを示しています。
Web UI でのサーバーロール

図6.14 Web UI でのサーバーロール

コマンドライン: サーバーロールの表示

ipa config-show コマンドを実行すると、すべての CA サーバー、NTP サーバー、および現行の CA 更新マスターが表示されます。
$ ipa config-show
  ...
  IPA masters: server1.example.com, server2.example.com, server3.example.com
  IPA CA servers: server1.example.com, server2.example.com
  IPA NTP servers: server1.example.com, server2.example.com, server3.example.com
  IPA CA renewal master: server1.example.com
ipa server-show コマンドを実行すると、特定サーバーで有効になっているロール一覧が表示されます。たとえば、server.example.com で有効になっているロールを表示するには、以下を実行します。
$ ipa server-show
Server name: server.example.com
  ...
  Enabled server roles: CA server, DNS server, NTP server, KRA server
ipa server-find --servrole は、特定のサーバーロールが有効になっているサーバーを検索します。たとえば、CA サーバーを検索するには、以下を実行します。
$ ipa server-find --servrole "CA server"
---------------------
2 IPA servers matched
---------------------
  Server name: server1.example.com
  ...

  Server name: server2.example.com
  ...
----------------------------
Number of entries returned 2
----------------------------

6.5.2. レプリカのマスター CA サーバーへのプロモート

注記

本セクションでは、ドメインレベル 1 の CA 更新マスターの変更について説明しています (7章ドメインレベルの表示と引き上げ を参照)。ドメインレベル 0 での CA 更新マスターの変更については、「レプリカのマスター CA サーバーへのプロモート」 を参照してください。
複数のレプリカがあるトポロジーでは、そのうちの 1 つがマスター CA サーバーとして機能し、CA サブシステムの証明書の更新を管理したり、証明書失効リスト (CRL) を生成したりします。デフォルトでは、レプリカを作成する元となる最初のサーバーがマスター CA となります。
マスター CA サーバーをオフラインにする、または使用停止にする場合は、別の CA サーバーをプロモートして、新規 CA 更新マスターとします。
  1. レプリカが CA サブシステムの証明書更新を処理するよう設定します。
  2. レプリカが CRL を生成するように設定します。「CRL を生成するサーバーの変更」 を参照してください。
  3. 今までのマスター CA サーバーの使用を停止する前に、新規マスターが正常に機能することを確認します。「新規マスター CA サーバーの設定確認」 を参照してください。

6.5.2.1. 現行 CA 更新マスターの変更

Web UI: 現行 CA 更新マスターの変更

  1. IPA ServerConfiguration を選択します。
  2. IPA CA renewal master フィールドで、新規 CA 更新マスターを選択します。

コマンドライン: 現行 CA 更新マスターの変更

ipa config-mod --ca-renewal-master-server コマンドを使用します。
$ ipa config-mod --ca-renewal-master-server new_ca_renewal_master.example.com
  ...
  IPA masters: old_ca_renewal_master.example.com, new_ca_renewal_master.example.com
  IPA CA servers: old_ca_renewal_master.example.com, new_ca_renewal_master.example.com
  IPA NTP servers: old_ca_renewal_master.example.com, new_ca_renewal_master.example.com
  IPA CA renewal master: new_ca_renewal_master.example.com
出力で更新が成功したことを確認します。

6.5.2.2. CRL を生成するサーバーの変更

CRL を生成するサーバーを変更するには、現行の CRL 生成マスターでの CRL 生成を停止し、それから他のサーバーで生成を有効にします。

現行 CRL 生成マスターの特定

CA がインストールされている各サーバーで /etc/pki/pki-tomcat/ca/CS.cfg ファイルをチェックします。
  • CRL 生成マスターで、ca.crl.MasterCRL.enableCRLUpdates パラメーターを true に設定します。
    # grep ca.crl.MasterCRL.enableCRLUpdates /etc/pki/pki-tomcat/ca/CS.cfg
    ca.crl.MasterCRL.enableCRLUpdates=true
  • CRL 生成クローンでパラメーターを false に設定します。

現行 CRL 生成マスターで CRL 生成を停止する

  1. CA サービスを停止します。
    # systemctl stop pki-tomcatd@pki-tomcat.service
  2. サーバー上での CRL 生成を無効にします。/etc/pki/pki-tomcat/ca/CS.cfg ファイルを開いて、ca.crl.MasterCRL.enableCRLCacheca.crl.MasterCRL.enableCRLUpdates のパラメーターの値を false に設定します。
    ca.crl.MasterCRL.enableCRLCache=false
    ca.crl.MasterCRL.enableCRLUpdates=false
  3. CA サービスを起動します。
    # systemctl start pki-tomcatd@pki-tomcat.service
  4. CRL リクエストを新規マスターにリダイレクトするように Apache を設定します。/etc/httpd/conf.d/ipa-pki-proxy.conf ファイルを開いて、RewriteRule 引数をコメント解除します。
    # Only enable this on servers that are not generating a CRL
    RewriteRule ^/ipa/crl/MasterCRL.bin https://server.example.com/ca/ee/ca/getCRL?op=getCRL&crlIssuingPoint=MasterCRL [L,R=301,NC]
  5. Apache を再起動します。
    # systemctl restart httpd.service
この手順の前までは、このサーバーは CRL リクエストに対応していましたが、これですべての CRL リクエストが以前の CA マスターにルーティングされます。

サーバーが CRL を生成するように設定する

  1. CA サービスを停止します。
    # systemctl stop pki-tomcatd@pki-tomcat.service
  2. サーバー上での CRL 生成を有効にします。ca.crl.MasterCRL.enableCRLCacheca.crl.MasterCRL.enableCRLUpdates のパラメーターの値を true に設定します。
    ca.crl.MasterCRL.enableCRLCache=true
    ca.crl.MasterCRL.enableCRLUpdates=true
  3. CA サービスを起動します。
    # systemctl start pki-tomcatd@pki-tomcat.service
  4. Apache で CRL リクエストのリダイレクトを無効にします。/etc/httpd/conf.d/ipa-pki-proxy.conf ファイルを開いて、RewriteRule 引数をコメントアウトします。
    #RewriteRule ^/ipa/crl/MasterCRL.bin https://server.example.com/ca/ee/ca/getCRL?op=getCRL&crlIssuingPoint=MasterCRL [L,R=301,NC]
    この手順の前までは、全 CRL リクエストは以前の CA マスターにルーティングされていましたが、これでこのサーバーが CRL リクエストに対応するようになりました。
  5. Apache を再起動します。
    # systemctl restart httpd.service

6.5.2.3. 新規マスター CA サーバーの設定確認

/var/lib/ipa/pki-ca/publish/MasterCRL.bin ファイルが新規マスター CA サーバーにあることを確認します。
このファイルは、/etc/pki/pki-tomcat/ca/CS.cfg ファイルで定義されている間隔を基に、ca.crl.MasterCRL.autoUpdateInterval パラメーターを使って生成されます。デフォルト値は、240 分 (4 時間) です。
このファイルが存在すれば、新規マスター CA サーバーは正常に設定されているので、以前の CA マスターシステムを安全に閉鎖できます。