【CyberArk】利用環境構築 ~Azure準備編~

「CyberArk」はクラウドサービス(Box,Microsoft 365等)やオンプレミスサーバーの特権管理者アカウントを保護、管理するためのソリューションです。

CyberArkは専用のサーバーを構築し、コンポーネントをサーバーにインストールする必要があります。

今回は、CyberArkをAzure仮想マシン上で構築する流れを解説していきます。

※記事内のコマンドで赤字で表記している箇所は、環境に合わせて適宜変更して実行してください。

今回作成する環境

CyberArkには複数のコンポーネントがありますが、通常、「Vault」と呼ばれるアカウント情報を保管するコンポーネントをインストールする「Vaultサーバー」と、それ以外のコンポーネントをインストールする「Frontサーバー」で分けられることが多いです。

Vaultサーバーに対するその他コンポーネントや3rdパーティー製品のインストールはできません。

今回はVaultサーバー、そのほかのコンポーネントをインストールするFrontサーバーの2種類を構築していきます。

事前準備物

Vaultの構築にあたり、下記のファイルが必要となります。

項番

ファイル名

機能

1

Operator CD.zip

サーバーの起動や操作に使用するためのファイル

2

Master CD.zip

リカバリとマスターログオンに使用するためのファイル

3

License.xml

ライセンスキー

 

各コンポーネントのインストールにあたり、下記のファイルが必要となります。

項番

ファイル名

機能

1

Vault AMI

Vaultインストールするためのマシンイメージ

2

Client-Rls-v12.2.zip

Private Arkをインストールするためのファイル

3

Password Vault Web Access-Rls-v12.2.zip

PVWAをインストールするためのファイル

4

Central Policy Manager-Rls-v12.2.zip

CPMをインストールするためのファイル

5

Privileged Session Manager-Rls-v12.2.zip

PSMをインストールするためのファイル

※いずれも製品版/評価版の契約後にCyberArk社から受領するファイルです。

Azure環境事前準備

ストレージアカウント作成

Vaultサーバーを作成するには、専用のvhdからデプロイする必要があるため、事前にストレージアカウントを作成します。

  1. Azureポータルにログインし、画面右上のCloud Shellを起動します。

  2. 「詳細設定を表示にする」をクリックします。

  3. 下記の情報を入力し、「ストレージの作成」をクリックします。

    設定項

    設定値

    サブスクリプション

    任意のサブスクリプション

    リージョン

    任意のリージョン

    ※今回は東日本で作成します

    リソースグループ

    任意のリソースグループ

    ストレージアカウント

    任意のストレージアカウント(新規作成)

    共有ファイル

    任意の共有ファイル(新規作成)

CloudShell接続先確認

  1. 以下のコマンドを実行し、保存先のストレージアカウントを確認します。

    env | grep ACC_STORAGE_PROFILE

    ※保存先ストレージアカウントが作成したアカウントでない場合、以下のコマンドで切断し、確認コマンドで「y」を入力します。

    clouddrive unmount

Vaultイメージの取り込み&イメージ作成

事前情報確認

  1. 以下5つの項目を事前に確認します。

    設定項目

    確認ポイント

    リソースグループ名

    前項「Cloud Shell接続先の確認」で指定したリソースグループ名であること

    ストレージアカウント名

    前項「Cloud Shell接続先の確認」で指定したストレージアカウント名であること

    ストレージアカウントアクセスキー

    Azureポータル > ストレージアカウント >「ストレージアカウント名」 > アクセスキーでキーの表示ができること

    コンテナー名

    次項で作成手順を記載

    アクセスSASのURL

    CyberArk社から受領した「Windows Server2019 – Vaultコンポーネント」のSAS URL

コンテナー作成

  1. 以下に移動し、コンテナーを作成します。
    Azureポータル > ストレージアカウント > 「作成したストレージアカウント名」 > コンテナー > +コンテナー

    設定項目

    設定値

    名前

    任意の名称

    パブリックアクセスレベル

    プライベート(匿名アクセスはありません)



ストレージコンテキスト設定

  1. Cloud Shellを起動後、以下のコマンドを実行します。

    $destContext = New-AzureStorageContext -StorageAccountName ストレージアカウント名 -StorageAccountKey "ストレージアカウントのアクセスキー"

vhdファイルのコピー

  1. SASからイメージをコピーします。以下のコマンドを実行します。

    Start-AzureStorageBlobCopy -DestContainer コンテナー名 -DestContext $destContext -DestBlob pas-vault-v12.6.vhd -AbsoluteUri "受領したSAS URL"

     

  2. 下記のコマンドを実行し、コピー状態の確認を行います。
    ※ステータスがSuccessになるまでには30分ほどかかります。

    Get-AzureStorageBlobCopyState -Blob pas-vault-v12.6.vhd -Container コンテナー名 -Context $destContext -WaitForComplete

     

  3. コマンドの実行結果から以下3点を確認します。

    • ステータスがSuccessとなっていること

    • BytesCopiedとTotalBytesが一致していること

    • コンテナー内にpas-vault-12.6.vhdファイルができていること

     

VMイメージの作成

  1. VMイメージを作成のため、変数設定を行います。以下の4つのコマンドを実行します。
      1. $containerName = "コンテナー名"

      2. $release = "v12.6"

      3. $vaultDestBlob = "pas-vault-$release.vhd"

      4. $vaultblobUri = ($destContext.BlobEndPoint + $containerName + "/" + $vaultDestBlob)

  2.  イメージ作成するために、以下の7つのコマンドを実行します。
      1. $location = "ストレージアカウントと同じリージョン"

      2. $resourceGroupName = "リソースグループ名"

      3. $vmOSType = "Windows"

      4. $imageName = "PAS-Vault-$release"

      5. $imageConfig = New-AzureRmImageConfig -Location $location

      6. $imageConfig = Set-AzureRmImageOsDisk -Image $imageConfig -OsType $vmOSType -OsState Generalized -BlobUri $vaultblobUri

      7. $image = New-AzureRmImage -ImageName $imageName -ResourceGroupName $resourceGroupName -Image $imageConfig 

  3. 「イメージ」にVaultイメージが作成されていることを確認します。

Primary Vaultの起動 

Primary Vaultサーバーの作成

  1. Azureポータルにログインし、「イメージ」へ移動します。

  2. 作成したイメージを選択し、「作成」をクリックします。

  3. VMを作成します。
    ※特に要件はありませんが、サイズが小さすぎると上手く動作しない可能性があります。 

DR Vaultサブネット作成およびエンドポイント付与

DR(Disaster Recovery)Vaultは本番用Vaultの障害発生に備え、本番用Vaultのスタンバイ機として使用されます。

  1. 「仮想ネットワーク」を開き、「作成」をクリックします。

  2. 仮想ネットワークを作成します。
    ※リージョンは要件に沿って作成してください。今回はJapan Eastで作成します。

  3. 2で作成した仮想ネットワーク>サブネットを選択します。

  4. 「サービス」で「Microsoft.KeyVault」を選択し、保存します。

.NETFrameworkとOSのTLS1.2の有効化

VaultサーバーのTLS設定を、CyberArkの推奨値である「TLS1.2」とします。

  1. 「Primary Vaultサーバーの作成」で作成したVMにログインし、レジストリエディタを開きます。

  2. 以下のレジストリ値を確認します。Path:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727
    "SystemDefaultTlsVersions" = dword:00000001
    "SchUseStrongCrypto" = dword:00000001

    Path:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319

    "SystemDefaultTlsVersions" = dword:00000001

    "SchUseStrongCrypto" = dword:00000001

    Path:HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v2.0.50727
    "SystemDefaultTlsVersions" = dword:00000001
    "SchUseStrongCrypto"= dword:00000001

    Path:HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319

    "SystemDefaultTlsVersions" = dword:00000001

    "SchUseStrongCrypto"= dword:00000001

    Path:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server
    "DisabledByDefault" = dword:00000000
    "Enabled" = dword:00000001

    Path:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client

    "DisabledByDefault" = dword:00000000

    "Enabled" = dword:00000001

  3. Primary Vaultサーバーを再起動します。

Key Vaultの作成

Key Vaultは、VaultおよびDR Vaultの環境を構築する際に必要となります。

VaultおよびDR Vaultが同じリージョンに存在する場合は、リージョン内に1つのKey Vaultを作成となりますが、VaultおよびDR Vaultが別リージョンに存在する場合は、それぞれのリージョンでKey Vaultが必要となります。

今回の構成はVault , DR Vaultは同一リージョンに存在するため、Key Vaultを1つ作成します。

  1. Azureポータル>「キーコンテナ」へ移動し、「作成」をクリックします。
  2. 基本タブで以下の設定を行います。 

    設定項目

    設定値

    サブスクリプション

    任意のサブスクリプション

    リソースグループ

    任意のリソースグループ

    KeyVault名

    任意のKey Vault名

    地域

    ストレージアカウントと同じリージョン

    ※今回はJapan East

    価格レベル

    プレミアム

    回復オプション

    任意の回復オプション


  3. アクセスポリシータブにて、「アクセス許可モデル」を「コンテナーのアクセスポリシー」にします。

  4. アクセスポリシーで「作成」をクリックし、「キーのアクセス許可」で以下3つを選択します。
    1. 作成
    2. キーを折り返す
    3. キーの折り返しを解除

  5. 「プリンシバルの選択」にて、Primary VaultサーバーのオブジェクトIDで検索し選択します。

    ※オブジェクトIDはVaultサーバの「ID」画面で確認できます。(IDがオフになっている場合はオンにしてください)

  6. 「確認および作成」にて、「作成」をクリックしアプリケーションが作成されたことを確認します。

  7. ネットワークタブにて、パブリックアクセスの「選択されたネットワーク」を選択します。

    「仮想ネットワークの追加」をクリックし、Vault用に作成したサブネットを選択します。

    お疲れ様でした。以上でAzureでの事前準備は終了です。

おわりに

今回はCyberArkの環境構築として、事前準備の手順を解説しました。

次回以降は、実際にサーバにコンポーネントをインストールする手順を解説していきます。

執筆担当者プロフィール
岩井 一輝

岩井 一輝(日本ビジネスシステムズ株式会社)

業務ではMicrosoft 365製品やセキュリティ製品を担当しています。 バイクでツーリングしたり、家でギターを弾くことが趣味です。

担当記事一覧