Kerberos認証の設定
Kerberos情報は、次のステップを使用してマウント・ターゲットごとに構成されます。
これらのステップでは、LDAP認可を使用してユーザーごとのKerberos認証を有効にすることを前提としています。LDAPの要件および対応する手順がないと、Kerberos認証による匿名アクセスが可能です。詳細は、LDAP Lookups and Anonymous Accessを参照してください。
- 必要なLDAPおよびKerberosインフラストラクチャがあることを確認します。詳細は、前提条件を参照してください。
- デフォルトのVCNリゾルバが使用されていない場合は、顧客管理DNSサーバーにフォワードおよびリバースの名前レコードを追加します。
- マウント・ターゲット・プリンシパルをKDCに追加し、KDCからバイナリ・キータブを抽出します。keytabを抽出する手順は、使用中のKDCのタイプ(Linuxベースまたは Active Directory)によって異なります。
- バイナリKerberosキータブをBase64に変換し、それを使用してOCI Vaultにシークレットを作成します。変換されたキータブに貼り付けるときは、必ずシークレットの形式としてBase64を選択してください。詳細は、ボールトの概要を参照してください。
- プレーン・テキスト形式のシークレットとして、LDAPパスワードをOCI Vaultにアップロードします。詳細は、ボールトの概要を参照してください。
- 必要なIAMポリシーを追加します。
- LDAPサーバーに接続するには、2つのアウトバウンド・コネクタを作成します。ノート
LDAPを認可に使用するには、少なくとも1つのアウトバウンド・コネクタが必要です。2つ目のアウトバウンド・コネクタは、バックアップまたはフェイルオーバーとして使用できます。LDAPサーバーにアクセスできない場合のファイル・ストレージの応答方法の詳細は、LDAP参照および匿名アクセスを参照してください。 - マウント・ターゲットにLDAP構成の詳細を追加します。
- Kerberos認証の詳細を同じマウント・ターゲットに追加し、keytabを検証します。ノート
Kerberos構成は、マウント・ターゲット間で共有されません。 -
Kerberos認証に使用されるマウント・ターゲットに次のものがあることを確認します:
- Kerberos keytab主体のインスタンスと一致する完全修飾ドメイン名(FQDN)。たとえば:
nfs/<FQDN_of_mount_target>@<REALM>
。ノート
デフォルトのInternet and VCN Resolverの場合、ファイル・ストレージ・サービスは、マウント・ターゲットのホスト名と、マウント・ターゲットが存在するサブネットのFQDNを組み合せてFQDNを構築します。詳細は、マウント・ターゲットの管理を参照してください。 - 前方参照と逆参照の両方でDNSサーバーに追加されたFQDN。
- Kerberos keytab主体のインスタンスと一致する完全修飾ドメイン名(FQDN)。たとえば:
- LDAPおよびKerberos対応のマウント・ターゲットを使用して、ファイル・システムを作成または更新します。
- Kerberos対応のエクスポートをマウント・ターゲットに追加します。詳細は、「認証にKerberosを使用」を参照してください。
- ファイル・システムをマウントします。詳細は、Kerberos対応ファイル・システムのマウントを参照してください。ノート
IPアドレスのかわりにマウント・ターゲットのFQDNを使用します。
マウント・ターゲットに対するKerberos認証の有効化
ファイル・ストレージ・マウント・ターゲットのKerberos認証を構成します。
Kerberosを使用するように既存のマウント・ターゲットを更新する場合、ファイル・ストレージが更新を完全に反映するのに時間がかかることがあります。
- ナビゲーション・メニューを開き、「ストレージ」をクリックします。「File Storage」で、「Mount Targets」をクリックします。
- 「リスト範囲」セクションの「コンパートメント」を選択します。
- 目的のマウント・ターゲットを検索し、 をクリックして、「詳細の表示」をクリックします。
- 「NFS」タブをクリックして、マウント・ターゲットの既存のNFS設定を表示または編集します。
- Kerberosの横にある「管理」をクリックします。
-
「Kerberosの管理」ウィンドウで、次の詳細を指定します:
- Kerberosレルム: このマウント・ターゲットが結合するKerberosレルムを入力します。
- 「キータブ情報」セクションで、次の詳細を入力します:
- 使用するキータブ・シークレットを含むVaultを選択します。
- 「キータブ・シークレット」を選択します。
- 「現在のkeytabシークレットのバージョン」および「バックアップkeytabシークレットのバージョン」を選択します。
注意
ボールトおよびキーは必ずバックアップしてください。そうしないと、ボールトとキーの削除によって、そのキーが暗号化に使用されたリソースまたはデータを復号化できなくなります。詳細は、ボールトおよびキーのバックアップとリストアを参照してください。
-
Kerberosを有効にしてkeytabの内容を検査する前に、「keytabの検証」をクリックします。
注意
キータブが正しく構成されていないと、NFSクライアントがファイル・システムにアクセスできなくなる可能性があります。 - Kerberosの有効化: Kerberosを使用するには、このオプションを有効にします。詳細は、Kerberos認証の使用を参照してください。
- 「保存」をクリックします。
oci fs mount-target create
コマンドを--kerberos
、--idmap-type
および--ldap-idmap
オプションとともに使用して、マウント・ターゲットを作成し、KerberosおよびLDAPの詳細を指定します。oci fs mount-target create --availability-domain <availability_domain> --compartment-id <compartment_id> --subnet-id <subnet_id> --kerberos <file://krb.json> --ldap-idmap <file://ldap.json>
oci fs mount-target update
コマンドを--kerberos
、--idmap-type
および--ldap-idmap
オプションとともに使用して、既存のマウント・ターゲットをKerberosおよびLDAPの詳細で更新します。oci fs mount-target update --mount-target-id <mount_target_id> --kerberos <file://krb.json> --ldap-idmap <file://ldap.json>
次に
krb.json
ファイルの例を示します。{ "currentKeyTabSecretVersion": 1, "isKerberosEnabled": true, "kerberosRealm": "EXAMPLE.COM", "keyTabSecretId": "ocid1.vaultsecret.oc1.eu-frankfurt-1.exampleuniqueID" }
次に
ldap.json
ファイルの例を示します。{ "cacheLifetimeSeconds": 300, "cacheRefreshIntervalSeconds": 300, "groupSearchBase": "cn=accounts,dc=example,dc=com", "negativeCacheLifetimeSeconds": 300, "outboundConnector1Id": "ocid1.outboundconnector.oc1.exampleuniqueID", "outboundConnector2Id": "ocid1.outboundconnector.oc1.exampleuniqueID", "userSearchBase": "cn=accounts,dc=example,dc=com", "schemaType": "RFC2307" }
oci fs mount-target validate-key-tabs
コマンドを使用して、マウント・ターゲットに関連付けられたアウトバウンド・コネクタが使用するKerberosキータブをテストします。oci fs mount-target validate-key-tabs --mount-target-id <mount_target_id>
CLIコマンドのパラメータおよび値のリストは、CLIコマンド・リファレンスを参照してください。
CreateMountTargetまたはUpdateMountTargetを
kerberos
、idMapType
およびldapIdmap
オプションとともに使用して、LDAPおよびKerberosの詳細を含むマウント・ターゲットを作成または更新します。ValidateKeyTabsを使用して、マウント・ターゲットに関連付けられたKerberosキータブを検証します。
APIの使用およびリクエストの署名の詳細は、REST APIのドキュメントおよびセキュリティ資格証明を参照してください。SDKの詳細は、SDKおよびCLIを参照してください。