RADIUSプロキシの設定

Remote Authentication Dial In User Service (RADIUS)は、ネットワーク・デバイス間の通信に関するルールおよび規則を定義するネットワーク・プロトコルです。RADIUSプロキシは、ユーザーまたはデバイスを認証および認可し、それらのサービスの使用状況もトラッキングします。

必要なポリシーまたはロール

RADIUSプロキシを設定および検証するには、次のアクセス権付与のいずれかが必要です:
  • 管理者グループのメンバーにします
  • アイデンティティ・ドメイン管理者ロールまたはセキュリティ管理者ロールを付与します
  • manageドメインが付与されているグループのメンバーにします

ポリシーおよびロールについてさらに理解するには、管理者グループ、ポリシーおよび管理者ロール管理者ロールの理解およびIAMポリシーの概要を参照してください。

RADIUSプロキシの設定

RADIUSプロキシをインストール、設定およびテストします。

開始する前に:
  • RADIUSプロキシがアイデンティティ・ドメインで使用可能であることを確認します。RADIUSプロキシは、Oracle Apps PremiumおよびPremiumアイデンティティ・ドメイン・タイプでのみ使用できます。アイデンティティ・ドメイン・タイプと、それぞれに関連付けられている機能および制限について学習するには、IAMアイデンティティ・ドメインのタイプを参照してください。
  • 最新のPostmanクライアントをインストールします。
  • RADIUSプロキシPostmanコレクションをダウンロードします。
  • RADIUSプロキシ・マッピングの手順を確認します。RADIUSプロキシ・マッピングを参照してください。
  • 次のチェックポイントを確認します。RADIUSプロキシを設定するときは、次のチェックポイントを使用して、プロセスの各ステップで構成が正しいことを確認します。
    1. アイデンティティ・ドメインでRADIUSプロキシとRADIUSプロキシ・クライアント・アプリケーションがアクティブ化されていることを確認します。
    2. データベースのIPアドレスとRADIUSプロキシのポート番号がRADIUSアプリケーションで正しく構成されていることを確認します。
    3. RADIUSエージェントが起動して実行されていることを確認します。
    4. プロキシ・サーバーが起動して実行されていることを確認します。
    5. データベースが起動していることを確認します。
  1. コンソールの「ダウンロード」ページから最新のRADIUSプロキシ・インストーラをダウンロードします。
    1. ナビゲーション・メニューを開き、「アイデンティティとセキュリティ」をクリックします。「アイデンティティ」で、「ドメイン」をクリックします。作業するアイデンティティ・ドメインの名前をクリックします。必要なドメインを見つけるには、コンパートメントの変更が必要になる場合があります。次に、「設定」「ダウンロード」の順にクリックします。
    2. 「Oracle Identity Cloud Service RADIUS Proxy for Linux」を選択し、「ダウンロード」をクリックします。
  2. RADIUSアプリケーション・テンプレートからRADIUSアプリケーションを作成します。ノート: RESTでは、RADIUS ProxyRADIUS AppSearchSearch all apps (with search criteria)の順に移動します。
    1. コンソールで、「アプリケーション」「追加」「アプリケーション・カタログ」の順にクリックします。
    2. 「Oracle Database RADIUSアプリケーション・テンプレート」を検索し、「追加」をクリックします。
    3. 次の例のようにアプリケーション詳細を入力します。
      • 名前: dbserver
      • 説明: Oracle DatabaseサーバーをRADIUSクライアントとして表すアプリケーション
      • Oracle DatabaseサーバーのIPアドレス: 10.242.230.122 (このIPアドレスは、データベースがインストールされている場所です。)
      • RADIUSプロキシのポート: 1812 (RADIUSプロキシがこのOracle Databaseからのリクエストをリスニングするポート番号。同じポート番号をOracle DatabaseのRADIUS設定で構成する必要があります。)
      • 秘密キー: testing123 (RADIUSプロキシとOracle Databaseサーバー間の通信の保護に使用する秘密キー。同じキーをOracle DatabaseのRADIUS設定で構成する必要があります。)
    4. 「追加」「アクティブ化」をクリックし、「ユーザー」タブをクリックします。
      ノート

      「ユーザーの割当て」をクリックして、Oracle Databaseへのサインインを許可されているユーザーをこのRADIUSアプリケーションに割り当てます。個々のユーザーを割り当てるかわりに、それらのユーザーを含むグループを割り当てることもできます。「グループ」タブをクリックし、「グループの割当て」をクリックします。

      ノート: RADIUS認証の構成のステップ3C: RADIUSサーバーの構成で定義されている次のフォーマットに従って、アイデンティティ・ドメインにグループ名を作成します: ORA_databaseSID_rolename[_[A]|[D]]

      IAMで識別されるOracle Databaseのすべてのロールに対して、前述のフォーマットを使用して対応するグループを作成します。各データベース・ユーザーが各データベース・ロールに関連付けられるように、IAMでこのグループにユーザーを割り当てます。

  3. IAMでRADIUSプロキシを作成します。
    1. クライアント・アプリケーションを登録します。クライアント・アプリケーションの登録を参照してください。
    2. Postmanを開き、RADIUS Proxy.postman_collection.jsonコレクションをインポートして、この項のRESTリクエストを作成します。
    3. コレクションで使用される環境変数を含むRADIUS Proxy Example Environment with Variables.postman_environment.json環境ファイルをインポートします。
    4. 次の環境変数を設定します。

      HOSTには、IAMアドレスを使用します(例: https://yourtenant.identity.oraclecloud.com/)。

      CLIENT_IDおよびCLIENT_SECRETには、前にコピーした値を使用します。

      ノート

      他の環境変数は、RESTリクエストが発生すると自動的に設定されます。次のRESTリクエストが同じ順序で行われることを確認してください。
    5. アクセス・トークンを取得します。IAMへのAPIコールを行うには、IAMに対してクライアントを認証し、OAuthアクセス・トークンを取得する必要があります。アクセス・トークンによって、クライアント(この場合はPostman)とIAM間のセッションが提供されます。デフォルトでは、アクセス・トークンのタイムアウト間隔は60分であるため、追加のREST APIコールを実行するために新しいアクセス・トークンをリクエストする必要があります。OAuthアクセス・トークンを取得するには、PostmanコレクションのRADIUS ProxyOAuth TokenObtain access_token (client credentials)にあるリクエストを行います。
    6. POST操作を使用して、RADIUSプロキシを作成します。RADIUS ProxyCreateCreate a RADIUS Proxyの順に移動します。

      エンドポイント: admin/v1/RadiusProxies/ {{RPid}}

      { 
      "displayName": "Acme RADIUS Proxy", 
      "description": "This is a RADIUS Proxy used for authentication of database users", 
      "type":
      "proxy", 
      "timeout": 20, 
      "noOfWorkerThreads": 10, 
      "schemas" :
      ["urn:ietf:params:scim:schemas:oracle:idcs:RadiusProxy"] 
      }
    7. このPATCH操作を使用して、RADIUSプロキシをアクティブ化します。RADIUS ProxyLifecycleActivate a RADIUS Proxyの順に移動します。

      エンドポイント: /admin/v1/RadiusProxies/{{RPid}}

      { 
      "Operations":[ 
      { 
      "op": "replace",
      "path": "active", 
      "value": true 
      } ],
      "schemas": [
      "urn:ietf:params:scim:api:messages:2.0:PatchOp" ] }
    8. POST操作を使用して、RADIUSプロキシ・リスナーを作成します。RADIUS ProxyRADIUS Proxy ListenersCreateCreate a RADIUS Proxy Listenerの順に移動します。

      エンドポイント: {{HOST}}/admin/v1/RadiusProxyListeners

      { 
      "description": "Brief description for this RADIUS Proxy Listener.",
      "displayName": "RP1_L1", 
      "hostName": "<HostName of the machine in which RADIUS Proxy will be installed.>", 
      "radiusProxySettings":"{\"key1\": \"value1\", \"key2\": \"value2\"}", 
      "radiusProxy":
      { "value" : "<ID of RadiusProxy which is created above.>" 
      }, 
      "schemas" : ["urn:ietf:params:scim:schemas:oracle:idcs:RadiusProxyListener"]
      
      }
    9. dbserverアプリケーションIDを取得します。admin/v1/Apps?filter=displayName eq "dbserver"でGETコールを実行します。このGETコールのレスポンスからアプリケーションIDをフェッチします。RADIUS ProxyRADIUS AppSearchSearch all apps (with search criteria)の順に移動します。
      dbserverのURLからアプリケーションIDを取得することもできます。
    10. POST操作を使用して、RADIUSプロキシ・マッピングを作成します。RADIUS ProxyRADIUS Proxy MappingsCreateCreate a RADIUS Proxy Mappingの順に移動します。

      エンドポイント: {{HOST}}/admin/v1/RadiusProxyMappings/

      ノート

      次の"value"のIDは、前に作成したRADIUSプロキシのIDです。
      {
      "description": "RADIUS Proxy mapping for Database server",
      "radiusProxy": {
      "value" : "<RadiusProxyID>"
      },
      "radiusApp": {
      "value": "<<ID of RADIUS App obtained above.>"
      },
      "schemas" : ["urn:ietf:params:scim:schemas:oracle:idcs:RadiusProxyMapping"]
      }
      

      RADIUSプロキシ・マッピングの手順については、RADIUSプロキシ・マッピングを参照してください。

    11. RADIUSプロキシのclient_idおよびclientSecretを取得します。client_idおよびclientSecretは、RADIUSプロキシのインストール時に必要です。RADIUSプロキシは、これらの資格証明を使用してIAMで認証します。RADIUS ProxySearchCreateGet client ID, and client secret of the App corresponding to RADIUS Proxyの順に移動します。

      エンドポイント: {{HOST}}/admin/v1/Apps/{{RPOAuthClientAppId}}?attributes=clientSecret,name

      RPOAuthClientAppIdは、RADIUSプロキシに対応するアプリケーションのIDです。これは、ステップ3fのPOST操作を使用したRADIUSプロキシ・マッピングの作成のレスポンス[response.oauthClient.value]にあります。

      レスポンス:
      {
      "isAliasApp": false,
      "basedOnTemplate": {
      "value": "RadiusProxyAppTemplateId"
      },
      "displayName": "Acme RADIUS Proxy",
      "name": "<client id>",
      "id": "75d525ce49ee469ba4dcac00bdfe6446",
      "clientSecret": "<client secret>"
      }
      
  4. インストーラを実行します。
    1. ダウンロードしたidcs_radius_proxy-xxxx.zipファイルをフォルダに解凍します。
    2. フォルダに<radius bin location-xxxx>という名前を付けます。ここで、xxxxはバージョン番号です(例: 20.1.3)。
      3つのファイル(FileInfo.jsonidcs_radius_proxy_installer.binおよびInstallerValidation.jar)が抽出されます。InstallerValidation.jarファイルとidcs_radius_proxy_installer.binファイルは、抽出後に同じディレクトリに配置されます。これらは同じディレクトリに配置する必要があります。
    3. rootユーザーとしてログインするか、sudoとして次のコマンドを実行します: ./idcs_radius_proxy_installer.bin
      ノート

      インストーラでは、グラフィカル・ユーザー・インタフェース・モードのみがサポートされています。コンソール・モードはサポートされていません。そのため、「Graphical installers are not supported by the VM.」というエラーが表示された場合は、Xサーバーが正しく構成されていることを確認します。次に、root以外のユーザーとしてコマンドxhost +si:localuser:rootを実行し、インストーラを再度実行します。
  5. RADIUSプロキシをインストールします。
    1. 「ようこそ」画面を確認し、「次」をクリックします。
    2. 「情報」画面を確認し、「次」をクリックします。
    3. RADIUSプロキシ・インストーラがインストールされる宛先フォルダを選択します(デフォルトは/root/oracle_radius_proxyです)。「次へ」をクリックします。
    4. 「HTTPプロキシ」画面で、RADIUSプロキシでHTTPプロキシを使用してIAMに接続する必要がある場合は、「HTTPプロキシの使用」を選択します。そうでない場合は、このチェック・ボックスの選択を解除します。「次へ」をクリックします。
    5. 「IAM」画面で、クラウド・サービスURLを次のフォーマットで入力します: https://yourtenant.identity.oraclecloud.com。IAMで作成されたRADIUSプロキシのクライアントIDおよびクライアント・シークレットを指定します。(これは、前述のPOST操作を使用して作成したRADIUSプロキシです。)「次へ」をクリックします
    6. 「RADIUSユーザーおよびグループ情報」画面で、次のようなユーザー名およびユーザーのグループ情報を指定します:
      • ユーザー名: <client>
      • グループ: <dba>

      IAM RADIUSプロキシ・デーモンは、指定されたユーザー名およびグループによって実行されます。

    7. 「次へ」をクリックします。
    8. インストール前の画面で、すべての情報が正しいことを確認します。情報が正しければ、「インストール」をクリックします。
    9. インストールが完了したら、「完了」をクリックします。
  6. RADIUSエージェントとRADIUSプロキシが実行中であることを確認します。RADIUSエージェントは、一定の間隔でIAMから構成データを取得します。次に、RADIUSプロキシで使用される構成ファイルを更新します。
    1. 次のRADIUSエージェント・コマンドを使用して、エージェントが実行中であるかどうかを確認します:
      • python <RADIUS_PROXY_INSTALLER_LOCATION>/oracle_radius_proxy/radius_agent/scripts/src/radius_agent.py status
      • 必要に応じて、stopstartおよびrestartも使用できます。
    2. 次のコマンドを使用して、RADIUSプロキシを実行します: /sbin/service idcs_radiusd start
    3. 次のRADIUSサーバー・コマンドを実行して、RADIUSサービスが実行中であることを確認します。
      • /sbin/service idcs_radiusd status
      • 必要に応じて、stopstartおよびrestartも使用できます。
  7. (オプション) NTRadPingテスト・ユーティリティを使用して、RADIUSプロキシが動作していることを確認します。
    1. WindowsでNTRadPingテスト・ユーティリティをインストールし、IAMでユーザーを作成します。
    2. 例として次のスクリーンショットを使用します。次のスクリーンショットで、clientはIAMで作成したユーザーで、testing123はRADIUS設定の「アプリケーション詳細」ページの「秘密キー」で指定した秘密キーです。

      次の図は、WindowsのNTRadPingテスト・ユーティリティを示しています。

      WindowsのNTRadPingテスト・ユーティリティのスクリーンショット

  8. Oracle Database 12cを設定および構成します。認証の構成の手順に従い、次のコマンドを使用してデータベースにユーザー/ロールを作成します。
  9. Oracle Database 12cを設定および構成します。詳細は、RADIUS認証の構成を参照してください。RADIUS認証の構成の項の手順に従い、データベースにユーザーおよびロールを作成します。
  10. IAMユーザー・インタフェースを使用してCIDR形式のIPアドレスを追加することはできません。Oracle DatabaseのIPアドレスがCIDR形式の場合は、Postmanコレクションの次のリクエストを使用します。CIDR形式からのIPアドレスの変更を参照してください。
  11. MFAを設定します。MFAを設定するには、マルチファクタ認証の管理を参照してください。

RADIUSプロキシのログ・ファイルおよび構成情報

ログおよび構成情報については、次のRADIUSプロキシ・ファイルの場所を書き留めます。この情報は、トラブルシューティングに役立ちます。

インストーラ・ログ <radius_proxy_installer_location>/oracle_radius_proxy/_Oracle/ Identity/ Cloud/ Service/ RADIUS/ Proxy_installation/Logs/
エージェント・ログ <radius_proxy_installer_location>/oracle_radius_proxy/radius_agent/logs/agent.log
プロキシ・ログ <radius_proxy_installer_location>/oracle_radius_proxy/radius_proxy/log/radius_proxy.log
プロキシ構成 <radius_proxy_installer_location>/radius_proxy/conf/radius_proxy.conf
エージェント構成 <radius_proxy_installer_location>/radius_agent/conf/radius_agent.conf
クライアント構成 <radius_proxy_installer_location>/radius_proxy/conf/radius_clients.conf

RADIUSプロキシ・マッピング

RADIUSプロキシとRADIUSプロキシ・リスナーには1-1マッピングがあります。たとえば、RADIUSプロキシごとに1つのRADIUSプロキシ・リスナーがあります。複数のOracle DB RADIUSクライアントを1つのRADIUSプロキシにマップできます。つまり、RADIUSプロキシにはOracle DB RADIUSクライアントを使用した1-nマッピングがあります。

管理者が複数のOracle DB RADIUSクライアントを構成する場合、その数のOracle Database RADIUSアプリケーションをIAMアイデンティティ・ドメインに作成する必要があります(Oracle DB RADIUSクライアントごとに1つずつ)。たとえば、管理者が4つのOracle DB RADIUSクライアントを1つのRADIUSプロキシに構成した場合、IAMアイデンティティ・ドメインには、4つのOracle Database RADIUSアプリケーションが構成されている必要があります(Oracle DBクライアントごとに1つずつ)。