Azure App Gateway (高度な設定)

Azure App Gatewayサービスを使用してKeeperオートメーターをAzure Container Instancesにデプロイ

概要

本ガイドでは、Azure Application Gatewayを使用して安全なVNetでKeeperオートメーターを公開するための手順を解説します。この方式は、Azureコンテナーアプリの設定よりも高度となりますので、Azure App Gatewayや暗号化されたSAMLリクエストを使用する必要がない場合は、Azureコンテナーアプリ方式をご使用ください。

この方式では、すでにSSL証明書をお持ちであることを確かにしてください。お持ちでない場合は、カスタムSSL証明書ページの手順をご参照ください。

手順

  1. Azureクラウドシェルを開く

portal.azure.comにログインし、クラウドシェルのアイコンをクリックします。

クラウドシェルを起動
  1. ご希望の地域でリソースグループを作成

Azureにリソースグループがまだ存在しない場合は作成します。こちらの例ではeastusの地域を使用していますが、必ずお客様の地域をご使用ください。

  1. ストレージアカウントの作成

ストレージアカウントがまだ存在しない場合は作成します。正しい地域 (useeast) と上のリソースグループ名を使用するようにします。keeperautomatotorstorageを置き換えるのに選択する名前は、azureではグローバルで他に存在しないものである必要があります。

  1. ファイルシェアの作成

ファイルシェアが存在しない場合は作成します。

現在のシェアを表示します。

  1. コンテナー用にバーチャルネットワーク (VNet) と1件のSubnetを作成

  1. バーチャルネットワークをサービスエンドポイントで更新

  1. ストレージキーの取得

アカウントのストレージキーを見つけるには以下のコマンドを使用します。ストレージアカウント名は実際の名前に置き換えます。

以下のようなkey1の値をコピーします。

  1. サブネットIDの取得

サブネットIDを見つけるには以下のコマンドを実行します。

サブネットIDのパスを _subnetで終わるところまで全部コピーします。以下はその例です。

  1. YAMLコンテナーファイルの作成

ローカルで、automatorなどの名前でフォルダを作成します。

任意のエディタを使用して、そのフォルダー内に以下の内容を含むautomator.ymlというファイルを作成します。

前の手順の設定に基づいて文字列の値を変更する必要がある箇所が複数あります。

  • サブネットIDは、手順8で取得したIDのフルパスと一致する必要があります。

  • storageAccountNameは手順3の値と一致する必要があります。

  • storageAccountKeyは手順7の値と一致する必要があります。

  1. SSL証明書とSSLパスワードファイルのアップロード

Azureインターフェイスから、[リソースグループ] > [ストレージアカウント] > [ファイルシェア]に移動し、作成したオートメーターファイルシェアに移動します。ここから、automator.ymlファイル、SSL証明書ファイル、SSL証明書パスワードファイルをアップロードします。

ファイルの名前が automator.yml ssl-certificate.pfx および ssl-certificate-password.txt であることを確認してください。

ファイルのアップロード
  1. 3つのファイルをローカルのCLIワークスペースにコピーします

  1. コンテナーインスタンスの作成

automator.ymlの設定を使用してコンテナーを作成します。

応答でコンテナの内部IPを取得します。

後で使用するために、このIPの変数を設定します。以下はその例となります。

  1. アプリケーションゲートウェイサブネットの作成

  1. アプリケーションゲートウェイの作成

XXXXXXの箇所でSSL証明書のパスワードが置き換えられていることを確かにします。

  1. パブリックIPを見つける

Azure portalのインターフェイスで、[リソースグループ] > [アプリゲートウェイ]に移動し、パブリックIPアドレスをメモします。

パブリックIPを取得
  1. DNSのルーティング

オートメーターサービスのDNS (例: automator.company.com) が、Azureコンテナーサービスが手順 15で生成したIPアドレスを指していることを確かにします。

  1. 正常性プローブの作成

正常性プローブは、オートメーターサービスが実行されていることをApp Gatewayに通知します。Azure portalのインターフェイスからAutomator App Gatewayを開き、左側のメニューから[正常性プローブ]をクリックします。

正常性プローブ

次に、以下のスクリーンショットに見られる設定で新しい正常性プローブを作成します。必ずホストを手順16で設定したFQDNに置き換えます。

正常性プローブの設定

[テスト]をクリックしてプローブを追加します。コンテナIPがホスト名に適切にアドレス指定されていれば、テストは成功します。

  1. ウェブアプリケーションファイアウォールの設定

Azure portalのインターフェイスからAutomator App Gatewayを開き、左側の[ウェブアプリケーションファイアウォール] をクリックします。 WAF V2を有効にして以下の画面のように設定します。

ウェブアプリケーションファイアウォールの設定

[ルール]タブをクリックし、[OWASP 3.2]に設定されたルールを選択して、[有効]および[保存]をクリックします (重要な手順となります)。

ファイアウォールルールの設定

🎉 Azure内でのインストールは完了です。

最後にKeeperコマンダーを使ってオートメーターの設定を行います。

  1. Keeperコマンダーのインストール

この時点では、サービスは実行されていますがまだKeeperとは通信ができません。

ワークステーション、サーバー、コンピューターのどれかにKeeperコマンダーCLIをインストールします。初期設定にのみ使用します。バイナリインストーラーを含むインストール手順についてはこちらのページをご参照ください。 コマンダーを開いた後、loginコマンドでログインします。オートメーターをセットアップするにはKeeper管理者、またはSSOノードを管理する権限を持つ管理者としてログインする必要があります。

  1. コマンダーでの初期設定

Keeperコマンダーにログインし、automator createで始まる一連のコマンドを使用してオートメーターを有効にします。

ノード名 (この場合はAzure Cloud) は、以下のように管理コンソールのUIから取得します。

オートメーター作成

コマンドの出力には、IDプロバイダからのメタデータを含むオートメーター設定が表示されます。

URLはまだ入力されていません。選択したFQDNを使用してURLを編集します。

次に、キーを交換します。オートメーター公開キーで暗号化されたエンタープライズ秘密キーがオートメーターに提供されます。

新しい設定でオートメーターを初期化します。

サービスを有効にします。

この時点で設定は完了です。

自動ヘルスチェックには以下のURLをご使用になれます。

https://<server>/health

以下はcurlコマンドを使用した例です。

当URLはウェブブラウザでは開きません。

  1. AD FSを使用した環境の場合

IDプロバイダとしてAD FSを使用してKeeperオートメーターを有効にする場合、以下の手順に従ってKeeper証明書を更新するまでログインできません。

  • Keeper管理コンソールへログインします。

  • [管理] > [SSOノード] > [プロビジョニング]に移動し、SSOクラウド設定を見ます。

  • [Export SP Cert]をクリックします。

  • AD FS管理コンソールで、Keeper Cloud SSO証明書利用者信頼プロパティを選択します。

  • [暗号化]タブで、古い証明書をこの新しい証明書に置き換えます。

  • [署名]タブで、新しいSP証明書をこの新しい証明書に置き換えます。

セットアップは完了です。

これでオートメーターサービスが実行された状態になりました。

Azure Portal

Azure Portalの「コンテナーインスタンス」システムで、コンテナーが実行されているのを確認できます。 /bin/shを使用してコンテナーに接続し、実行ログを表示することもできます。

コンテナー
ログ
/bin/shで接続

コンテナーの再起動時にIPを更新

この設定に基づいてコンテナーを再起動すると、/24サブネットから新しい IP アドレスが割り当てられることがあります。新しいIPをすばやく見つけて、正しいIPでApplication Gatewayバックエンドプールを更新するには、Azure CLIから以下のスクリプトを実行します。

オートメーターサービスのテスト

Keeperオートメーターがデプロイされましたので、エンドユーザー体験のテストが可能です。ユーザーが SSO IDプロバイダーで認証した後は、承認を求めるプロンプトは必要ありません。

最も簡単なテスト方法は、ブラウザでシークレットモードのウィンドウを開いてKeeperウェブボルトへアクセスし、SSOクラウドでログインすることとなります。デバイスの承認を求めるプロンプトが表示されない場合、オートメーターが正常に機能しています。

ボルトへログイン
SSOログイン
自動承認
ボルトの復号化

最終更新

役に立ちましたか?