29.8. Ansible を使用して、統合された eDNS と統合されたルート CA を備えた IdM サーバーをインストールする
ansible-freeipa パッケージで利用可能な ipaserver ロールを使用して、DNS-over-TLS (DoT) が有効になっている Identity Management (IdM) サーバーをインストールできます。
enforced ポリシーまたは relaxed ポリシーのいずれかを選択できます。デフォルトでは、インストーラーは relaxed ポリシーを使用します。このポリシーは DoT を試行しますが、セキュアな接続を確立できない場合は標準の暗号化されていない DNS へのフォールバックを許可します。enforced ポリシーを適用するには、Ansible Playbook の vars セクションで ipaserver_dns_policy 変数を enforced に設定します。
DoT の設定では、統合された IdM 認証局 (CA) によって発行された証明書を使用するか、外部 CA によって発行されたカスタム証明書を提供することができます。証明書を提供しない場合、IdM CA はインストール中に自動的に DoT 証明書を発行します。
前提条件
- Ansible バージョン 2.15 以降を使用している。
-
ansible-freeipaパッケージがインストールされている。 -
secret.ymlAnsible vault にipaadmin_passwordが保存されており、secret.ymlファイルを保護するパスワードを格納しているファイルにアクセスできる (この例の場合)。 - IdM サーバーをインストールするためのシステムの準備 で概説されているステップを確認した。
-
enforcedDoT の場合は、DoT のみを使用するようにクライアントシステムとレプリカシステムを設定する のステップを完了した。
手順
オプション: 外部認証局が発行した DoT 用のカスタム PEM 形式の証明書とキーを使用する場合:
IdM サーバーをインストールするホストに SSH で接続します。
$ ssh root@server.idm.example.com2 つのファイルを作成し、
namedデーモンに所有権を割り当てます。# openssl req \ -newkey rsa:2048 \ -nodes \ -keyout /etc/pki/tls/certs/privkey.pem \ -x509 \ -days 36500 \ -out /etc/pki/tls/certs/certificate.pem \ -subj "/C=<country_code>/ST=<state>/L=<location>/O=<organization>/OU=<organizational_unit>/CN=<idm_server_fqdn>/emailAddress=<email>" && \ chown named:named /etc/pki/tls/certs/privkey.pem /etc/pki/tls/certs/certificate.pemIdM サーバー上の SSH セッションを終了します。
# exit
Ansible コントローラーで、統合された IdM CA を備えた IdM サーバーをインストールするための手順を含む、
install-server-integrated-ca.ymlという名前の Playbook ファイルを作成します。--- - name: Playbook to configure IPA server hosts: ipaserver become: true vars_files: - /home/user_name/MyPlaybooks/secret.yml vars: ipaserver_domain: idm.example.com ipaserver_realm: IDM.EXAMPLE.COM ipaserver_hostname: server.idm.example.com ipa_admin_password: "{{ vault_admin_password }}" ipadm_password: "{{ vault_dm_password }}" ipaserver_setup_dns: true ipaserver_dot_forwarders: - "<server_ip>#<dns_server_hostname>" ipaserver_dns_over_tls: true ipaserver_auto_reverse: true roles: - role: freeipa.ansible_freeipa.ipaserver外部認証局によって発行された DoT 用のカスタム PEM 形式の証明書とキーを使用している場合は、
varsセクションに以下を追加します。ipaserver_dns_over_tls_cert: /etc/pki/tls/certs/certificate.pem ipaserver_dns_over_tls_key: /etc/pki/tls/certs/privkey.pemAnsible Playbook の実行:
$ ansible-playbook --vault-password-file=password_file -v -i ~/MyPlaybooks/inventory ~/MyPlaybooks/install-server-integrated-ca.yml
トラブルシューティング
IdM サーバーに
SSH接続します。# ssh root@server.idm.example.comunboundサービスの詳細ロギングを有効にします。# unbound-control verbosity 3更新された設定を適用するには、
unboundサービスを再起動します。# systemctl restart unboundunboundサービスのリアルタイムログを監視します。$ journalctl -u unbound -f