管理ゲートウェイをデプロイするための前提条件の実行

管理ゲートウェイのためのOracle Cloud Infrastructureの設定

管理ゲートウェイおよび管理エージェントは、Oracle Cloud Infrastructure (OCI)の管理エージェント・サービスを使用します。管理ゲートウェイをインストールする前に、管理エージェント・サービスを使用するようにOracle Cloud Infrastructure環境を設定する手順を完了する必要があります。詳細は、管理エージェント・サービスのためのOracle Cloud Infrastructureの設定を参照してください。

管理ゲートウェイのデプロイに関する一般的な前提条件

管理ゲートウェイをデプロイする前に、次の前提条件が満たされていることを確認します:

Oracle Cloud Infrastructureの要件

サポートされているオペレーティング・システム

表7-1 サポートされているオペレーティング・システム

オペレーティング・システム バージョン

Oracle Linux

6 (64ビット)、7 (64ビット)、8 (64ビット)、9 (64ビット)

Red Hat Enterprise Linux

6 (64ビット)、7 (64ビット)、8 (64ビット)

Windows Server 2022 (64ビット)、2019 (64ビット)、2016 (64ビット)、2012 R2 (64ビット)

オペレーティング・システムの要件

  • 最小ディスク要件: 空きディスク容量300MBおよび管理ゲートウェイ・ソフトウェア・ダウンロード用に追加100MB。

    また、バッファリングされたメッセージをディスクに書き込むためのディスク領域も必要です。この領域には、少なくとも1GBの空きディスク領域が必要です。

  • ホストへの管理ゲートウェイ・ソフトウェアのインストールを担当する、sudo権限を持つユーザー。

  • 管理ゲートウェイ・ソフトウェアをインストールする前に、Java Development Kit (JDK)またはJava Runtime Environment (JRE)をホストにインストールしておく必要があります。

    JDKまたはJREバージョン1.8u281以上をダウンロードしてインストールしたことを確認してから、管理ゲートウェイ・ソフトウェアのインストール・プロセスを開始してください。Javaダウンロードを参照してください。

  • 管理ゲートウェイには専用ホストが必要です。管理エージェントがホストにすでにインストールされている場合は、別のホストに管理ゲートウェイをインストールし、それを専用にします。

  • マウントする場合は、/tmpにnoexecフラグが設定されていないことを確認してください。

ネットワークの前提条件

  • ネットワーク設定にファイアウォールがある場合は、管理ゲートウェイがデプロイされるホストから適切なOracle Cloud InfrastructureドメインへのHTTPS通信(ポート443)が許可されていることを確認してください。関連するドメインはレルムによって異なります。たとえば、Oracle Cloud Infrastructure商用レルムOC1を使用する管理エージェントは、*.oraclecloud.comドメインに接続する必要があります。

    Oracle Cloud Infrastructureはリージョンでホストされます。リージョンはレルムにグループ化されます。テナンシは、単一のレルムに存在し、そのレルムに属するすべてのリージョンにアクセスできます。そのレルム内にないリージョンにはアクセスできません。現在、Oracle Cloud Infrastructureには複数のレルムがあります。リージョンおよびレルムの詳細は、リージョンおよび可用性ドメインを参照してください。

    各ゲートウェイは、特定のOCIコンパートメントに属します。ゲートウェイを介して接続するすべてのエージェントは、そのゲートウェイと同じコンパートメントにある必要があります。

    入手可能な任意のネットワーク接続ツールを使用して、データ・センターとの接続を確認できます。

    Oracle Cloud InfrastructureにデプロイされるサービスのIPアドレス範囲の詳細は、IPアドレス範囲を参照してください。

    次のサンプルの表に、通信用に開く必要があるポートを示します。
    方向 ポート プロトコル 理由

    管理ゲートウェイ・ホストから外部

    443

    HTTPS

    Oracle Cloud Infrastructureサービスとの通信。

管理ゲートウェイの証明書の構成

管理エージェント・バージョン221019.0021以降、管理ゲートウェイ・バージョン221019.0021.1667404647以降では、エージェント、ゲートウェイおよびOCI間の通信には証明書が必要です。証明書およびその他の必須エンティティが自動的に作成されますが、これを機能させるために特定のOCIポリシーを設定する必要があります。

次の2つのオプションがあります。

証明書の自動作成(推奨)

これは、証明書を作成するための推奨方法です。

パラメータGatewayCertOcidがレスポンス・ファイルに設定されていない場合、管理ゲートウェイは、必要な証明書およびその他の必須エンティティを自動的に作成しようとします。

管理ゲートウェイが高可用性モードで構成され、ロード・バランサおよび管理ゲートウェイが異なるドメインにある場合は、拡張構成管理ゲートウェイの高可用性を参照してください。

必要な動的グループ:

defaultアイデンティティ・ドメインに動的グループを作成する必要があります。詳細は、アイデンティティ・ドメインのサブジェクトを参照してください。

  1. 次のルールを使用してCredential_Dynamic_Groupを作成します。

    ALL  {resource.type='certificateauthority', resource.compartment.id='<>'}  
  2. 次のルールを使用してManagement_Gateway_Dynamic_Groupを作成します。

    ALL {resource.type='managementagent', resource.compartment.id='<>'} 
ノート

コンパートメントIDはOCIDです。

必要なポリシー:


Allow DYNAMIC-GROUP Credential_Dynamic_Group to USE certificate-authority-delegates in compartment <>

Allow DYNAMIC-GROUP Credential_Dynamic_Group to USE vaults in compartment <>

Allow DYNAMIC-GROUP Credential_Dynamic_Group to USE keys in compartment <>

Allow DYNAMIC-GROUP Management_Gateway_Dynamic_Group to READ certificate-authority-bundle in compartment <>

Allow DYNAMIC-GROUP Management_Gateway_Dynamic_Group to READ leaf-certificate-bundle in compartment <>

Allow DYNAMIC-GROUP Management_Gateway_Dynamic_Group to MANAGE certificate-authorities in compartment <> where  any{request.permission='CERTIFICATE_AUTHORITY_CREATE', request.permission='CERTIFICATE_AUTHORITY_INSPECT', request.permission='CERTIFICATE_AUTHORITY_READ'} 

Allow DYNAMIC-GROUP Management_Gateway_Dynamic_Group to MANAGE leaf-certificates in compartment <> where  any{request.permission='CERTIFICATE_CREATE', request.permission='CERTIFICATE_INSPECT', request.permission ='CERTIFICATE_UPDATE', request.permission='CERTIFICATE_READ'}

Allow DYNAMIC-GROUP Management_Gateway_Dynamic_Group to MANAGE vaults in compartment <> where any{request.permission='VAULT_CREATE', request.permission='VAULT_INSPECT', request.permission='VAULT_READ', request.permission='VAULT_CREATE_KEY', request.permission='VAULT_IMPORT_KEY', request.permission='VAULT_CREATE_SECRET'} 

Allow DYNAMIC-GROUP Management_Gateway_Dynamic_Group to MANAGE keys in compartment <> where any{request.permission='KEY_CREATE', request.permission='KEY_INSPECT', request.permission='KEY_READ'} 

Allow DYNAMIC-GROUP Management_Gateway_Dynamic_Group to USE certificate-authority-delegates in compartment <>

Allow DYNAMIC-GROUP Management_Gateway_Dynamic_Group to USE key-delegate in compartment <> 

Allow DYNAMIC-GROUP Management_Gateway_Dynamic_Group TO MANAGE leaf-certificates in compartment <> where all{request.permission='CERTIFICATE_DELETE', target.leaf-certificate.name=request.principal.id} 

動的グループがデフォルト以外のドメインで以前に作成された場合は、すべてのポリシーが変更されます。

ポリシーをデフォルト以外のアイデンティティ・ドメインに変更するには、次の構文を使用して前述のすべてのポリシーを変更します。

Allow DYNAMIC-GROUP <Domain Name>/Credential_Dynamic_Group to USE certificate-authority-delegates in compartment <>

Allow DYNAMIC-GROUP <Domain Name>/Management_Gateway_Dynamic_Group to READ certificate-authority-bundle in compartment <>
ノート

管理ゲートウェイのクイックスタートOCI Marketplaceアプリケーションをインストールして、動的グループ、ポリシーを自動的にインストールし、管理ゲートウェイの証明書を管理できます。

手動認証管理

証明書は手動で設定できます。管理者は、OCIコンソールを使用して証明書を作成できます。その後、パラメータGatewayCertOcidを使用して、レスポンス・ファイルにその証明書のOCIDを指定します。

証明書の作成については、Overview of Certificate.htmを参照してください。

必須の動的グループ:

  1. 次のルールを使用してCredential_Dynamic_Groupを作成します。

    ALL  {resource.type='certificateauthority', resource.compartment.id='<>'}  
  2. 次のルールを使用してManagement_Gateway_Dynamic_Groupを作成します。

    ALL {resource.type='managementagent', resource.compartment.id='<>'} 
ノート

コンパートメントIDはOCIDです。

必要なポリシー:

Allow DYNAMIC-GROUP Management_Gateway_Dynamic_Group to READ certificate-authority-bundle in compartment <>
Allow DYNAMIC-GROUP Management_Gateway_Dynamic_Group to READ leaf-certificate-bundle in compartment <>
ノート

ポリシーはコンパートメントごとです。ゲートウェイおよびそれに接続するすべてのエージェントに、同じコンパートメントを使用する必要があります。

コンピュート・インスタンス上の管理エージェントの有効化

コンピュート・インスタンスを使用する場合は、Oracle Cloud Agentの機能を使用して管理エージェント・プラグインを有効にできます。

続行する前に、前提条件が完了していることを確認します。詳細は、コンピュート・インスタンスへの管理エージェントのデプロイの前提条件の実行を参照してください。

管理エージェントの有効化

ノート

コンピュート・インスタンス上の管理エージェント・プラグインは、Java仮想マシン(JVM)で実行されます。2023年3月以降、管理エージェント・プラグインはJavaランタイム(JRE)とともにデプロイされます。

Javaランタイムは、新しく検出されたセキュリティの脆弱性に対処するために、管理エージェントのアップグレード・プロセスの一部として常に最新の状態に保たれます。管理エージェント・プラグインを有効にした後、自動アップグレードを有効にするか、アップグレード操作を定期的に手動で起動して、最新バージョンの管理エージェント・プラグイン・ソフトウェアを実行することが重要です。詳細は、コンピュート・インスタンス上の管理エージェントのアップグレードを参照してください。

コンソールを使用した管理エージェントの有効化

管理エージェント・プラグインがインスタンスに対して有効にされているかどうかを確認するには:
  1. ナビゲーション・メニューを開き、「コンピュート」をクリックします。「コンピュート」で、「インスタンス」をクリックします。
  2. 目的のインスタンスをクリックします。
  3. 「Oracle Cloud Agent」タブをクリックします。

    プラグインのリストが表示されます。

  4. 管理エージェント・プラグインの「有効」スイッチを切り替えます。

詳細は、コンソールを使用したプラグインの管理を参照してください。

コンピュートAPIを使用した管理エージェントの有効化

APIの使用の詳細は、REST APIを参照してください。

SDKについては、ソフトウェア開発キットとコマンドライン・インタフェースを参照してください。

次のAPI操作を使用して、管理エージェントをOracle Cloud Agentプラグインとして管理します:
  • LaunchInstance - インスタンスの作成時に、プラグインを有効または無効にしたり、すべてのプラグインを停止したりします。

  • UpdateInstance - 既存のインスタンスで、個々のプラグインを有効または無効にしたり、すべてのプラグインを停止または起動したりします。

次に示すのは、LaunchInstanceまたはUpdateInstance API操作に含まれるJavaサンプルからの抽出です。ユーザーはこれを使用して、コンピュート・インスタンスの起動時または更新時に管理エージェントを有効化できます:
... 
    .agentConfig(LaunchInstanceAgentConfigDetails.builder()
			.isMonitoringDisabled(false)
			.isManagementDisabled(true)
			.areAllPluginsDisabled(false)
			.pluginsConfig(new ArrayList<>(Arrays.asList(InstanceAgentPluginConfigDetails.builder()
					.name("Management Agent")   
					.desiredState(InstanceAgentPluginConfigDetails.DesiredState.Enabled).build()))).build())
...

ここで、.name("Management Agent")はこれが管理エージェント・プラグイン用であることを示し、.desiredState(InstanceAgentPluginConfigDetails.DesiredState.Enabled).build()))).build())は管理エージェントを有効化することを示します。

詳細は、APIを使用したプラグインの管理を参照してください。

管理ゲートウェイを使用したOracle Cloud Agentの構成

Oracle Cloud Computeインスタンスで有効になっている管理エージェントの管理ゲートウェイを構成するには:

  1. emd.propertiesファイルの更新
    1. emd.propertiesファイル(通常は、次の場所)に移動します。
      /var/lib/oracle-cloud-agent/plugins/oci-managementagent/polaris/agent_inst/config/emd.properties
    2. ファイルの末尾に、次の3つのエントリを追加します。
      GatewayServerHost=<gateway host>
      GatewayServerPort=<gateway port>
      GatewayServerCredentialTimeout=30s
  2. 次に、管理ゲートウェイがプロキシ・ユーザー名とパスワードで構成されている場合は、管理ゲートウェイ資格証明を管理エージェントにシードする必要があります。
    1. 次のコマンドを使用して/tmp/cred.jsonファイルのコンテンツを表示します。
      cat /tmp/cred.json |sudo -u oracle-cloud-agent /var/lib/oracle-cloud-agent/plugins/oci-managementagent/polaris/agent_inst/bin/credential_mgmt.sh -o upsertCredentials -s Agent
    2. /tmp/cred.jsonファイルで、次の値を環境の実際の管理エージェント資格証明に置き換えます。
      • 次の形式を使用したOCID: agent.ocid1.managementagent.oc1.phx.unique-id
      • example-username
      • パスワード
        {"source":"agent.ocid1.managementagent.oc1.phx.unique-id",
        "name":"ManagementAgent-Proxy",
        "type":"ProxyCreds",
        "description":"Proxy Credentials",
        "properties":[
        {"name":"ProxyUser","value":"example-username"},
        {"name":"ProxyPassword","value":"example-password"}]}
  3. Oracle Cloud Agentを再起動するには、次のコマンドを入力します:
    systemctl restart oracle-cloud-agent