第17章 ホストおよびサービスへのアクセス委任

本章で言及する 管理 とは別のホストやサービスの キータブおよび証明書を取得できることを指します。すべてのホストとサービスには managedby エントリーがあり、これにホストやサービスが管理可能なものが記載されています。デフォルトでは、ホストはホスト自体とそのサービスすべてを管理できます。また、適切な委任更新や、適切な managedby エントリーの提供により、ホストが他のホストや他のホスト上のサービスを管理可能とすることもできます。
IdM サービスは、そのサービスへのアクセス許可が付与、もしくは委任 されている IdM ホストであれば、どのホストからでも管理できます。同様に、ホストにはドメイン内の他のホストへの許可を委任することが可能です。
ホストおよびサービスの委任

図17.1 ホストおよびサービスの委任

注記

managedBy エントリーで別のホストに権限が委任されている場合に、そのホスト上の全サービスの管理を委任されたわけではありません。委任は個別に行われる必要があります。

17.1. サービス管理の委任

ホストは、service-add-hostユーティリティを使用してサービス上で制御が委任されます。
# ipa service-add-host principal --hosts=hostname
サービスの委任には、2 つのタイプがあります。
  • principal 引数を使用したプリンシパルの指定。
  • --hosts オプションを使用した制御によるホストの識別。
以下に例を示します。
[root@server ~]# ipa service-add HTTP/web.example.com
[root@server ~]# ipa service-add-host HTTP/web.example.com --hosts=client1.example.com
ホストに権限が委任されれば、ホストプリンシパルを使ってサービスを管理できます。
[root@client1 ~]# kinit -kt /etc/krb5.keytab host/client1.example.com
[root@client1 ~]# ipa-getkeytab -s server.example.com -k /tmp/test.keytab -p HTTP/web.example.com
Keytab successfully retrieved and stored in: /tmp/test.keytab
このサービスのチケットを作成するには、委任された権限を持つホストで証明書リクエストを作成します。
[root@client1]# kinit -kt /etc/krb5.keytab host/client1.example.com
[root@client1]# openssl req -newkey rsa:2048 -subj '/CN=web.example.com/O=EXAMPLE.COM' -keyout /etc/pki/tls/web.key -out /tmp/web.csr -nodes
Generating a 2048 bit RSA private key
.............................................................+++
............................................................................................+++
Writing new private key to '/etc/pki/tls/private/web.key'
cert-request ユーティリティを使用してサービスエントリを作成し、証明書情報を読み込みます。
[root@client1]# ipa cert-request --principal=HTTP/web.example.com web.csr
Certificate: MIICETCCAXqgA...[snip]
Subject: CN=web.example.com,O=EXAMPLE.COM
Issuer: CN=EXAMPLE.COM Certificate Authority
Not Before: Tue Feb 08 18:51:51 2011 UTC
Not After: Mon Feb 08 18:51:51 2016 UTC
Serial number: 1005
証明書要求の作成や ipa cert-request の使用に関する詳しい情報は、「ユーザー、ホスト、またはサービス向けの新規証明書のリクエスト」を参照してください。