39.3. LDAP サーバーの Identity Management への移行
重要
この例は一般的な移行手順のため、あらゆる環境に対応するわけではありません。
実際に LDAP 環境の移行に入る前に、LDAP のテスト環境を設定して移行プロセスを検証することを強く推奨します。移行が正しく完了したことを確認するには、次のコマンドを実行します。
- ipa user-add コマンドを使用して IdM にテストユーザーを作成し、移行したユーザーの出力をテストユーザーと比較します。移行したユーザーに、テストユーザーに存在する属性およびオブジェクトクラスの最小セットが含まれていることを確認します。
$ ipa user-add TEST_USER
- IdM にあるように、移行したユーザーの出力を、元の LDAP サーバーにあるように、ソースユーザーと比較します。インポートした属性が倍にならず、期待値になっていることを確認してください。
$ ipa user-show --all TEST_USER
- 既存の LDAP ディレクトリーとは異なるマシンに、カスタム LDAP ディレクトリースキーマなど、IdM サーバーをインストールします。注記カスタムユーザースキーマまたはカスタムグループスキーマの IdM でのサポートは限られています。互換性のないオブジェクト定義があると、移行中に問題が発生する可能性があります。
- compat プラグインを無効にします。
[root@server ~]# ipa-compat-manage disable
移行中に compat ツリーによるデータが必要な場合は、この手順は必要ありません。 - IdM Directory Server インスタンスを再起動します。
[root@server ~]# systemctl restart dirsrv.target
- IdM サーバーが移行を許可できるように設定します。
[root@server ~]# ipa config-mod --enable-migration=TRUE
- IdM 移行スクリプト ipa migrate-ds を実行します。最も基本的な移行の場合、ここで必要となるのは LDAP ディレクトリーインスタンスの LDAP URL のみです。
[root@server ~]# ipa migrate-ds ldap://ldap.example.com:389
LDAP URL を渡すだけで共通のデフォルト設定を使用するディレクトリーデータはすべて移行されます。ユーザーやグループのデータは 「ipa migrate-ds を使用する例」 で説明しているように他のオプションを指定することで選択的に移行することが可能です。前の手順で compat プラグインを無効にしていない場合は、--with-compat
を ipa migrate-ds に渡します。情報のエクスポートが完了すると、命名コンテキストが異なる場合に、このスクリプトにより、必要とされる IdM オブジェクトクラスおよび属性がすべて追加され、IdM ディレクトリーツリーと一致するよう DN は属性に変換されます。たとえば、uid=user,ou=people,dc=ldap,dc=example,dc=com
はuid=user,ou=people,dc=idm,dc=example,dc=com
に移行されます。 - 移行前に compat プラグインが無効になっていた場合は、再度有効にします。
[root@server ~]# ipa-compat-manage enable
- IdM Directory Server インスタンスを再起動します。
[root@server ~]# systemctl restart dirsrv.target
- 移行モードを無効にします。
[root@server ]# ipa config-mod --enable-migration=FALSE
- オプション:SSSD ではないクライアントが LDAP 認証 (
pam_ldap
) ではなく Kerberos 認証 (pam_krb5
) を使用するよう再設定します。全ユーザーが移行されるまで PAM_LDAP モジュールを使用し、次に PAM_KRB5 をしようできるようになります。詳細は、『System-Level Authentication Guide』 の Configuring a Kerberos Client を参照してください。 - ハッシュした Kerberos パスワードを生成する方法には、2 つあります。「パスワード移行のプランニング」 の説明にように、いずれの場合も、ユーザーとの対話なしでユーザーパスワードが移行されます。
- SSSD の使用:
- SSSD がインストールされているクライアントを、LDAP バックエンドから IdM バックエンドに移動し、IdM でクライアントとして登録します。これにより必要なキーと証明書がダウンロードされます。Red Hat Enterprise Linux クライアントでは、この
ipa-client-install
コマンドを使用して実行できます。以下に例を示します。[root@server ~]# ipa-client-install --enable-dns-update
- IdM 移行 Web ページの使用
- 移行 Web ページを使用して IdM にログインするようにユーザーに指示します。
https://ipaserver.example.com/ipa/migration
- ユーザーの移行プロセスを監視するには、パスワードは持っているが Kerberos プリンシパルキーはまだないユーザーアカウントを表示するよう既存の LDAP ディレクトリーに問い合わせます。
[user@server ~]$ ldapsearch -LL -x -D 'cn=Directory Manager' -w secret -b 'cn=users,cn=accounts,dc=example,dc=com' '(&(!(krbprincipalkey=*))(userpassword=*))' uid
注記フィルターの前後に一重引用符を付けてシェルで解釈されないようにします。 - クライアントとユーザーすべての移行が完了したら LDAP ディレクトリーを廃止します。