SSL/TLSクライアント認証
KCMにSSL/TLSクライアント認証を強制
Keeper Connection Managerは、SSL/TLSクライアント認証を要求するように設定できます。
クライアント証明書の概要
Keeper Connection Managerにデバイスベースのアクセスセキュリティを実装するには、NGINXクライアント証明書を使用してこれを実現できます。 クライアント証明書はユーザーの承認済みデバイスのウェブブラウザにインストールされ、サーバーはクライアント証明書がインストールされたデバイスからの通信のみを受け入れます。
この高度な保護を有効にする手順を以下で説明します。
(1) 認証局 (CA) 鍵の作成
強力な自動生成パスフレーズを使用してCA鍵を生成します。パスフレーズは必ずKeeperボルトに保存してください。
(2) CA証明書の作成
CA鍵を使用して証明書を作成します。質問に答えるときは、コモンネームとメールは空のままにしておくことができます。 国、州、地域、組織について入力した情報は、後で証明書を更新するときに必要になる場合があるため保存します。
補足:証明書のパラメータを分析するには、以下のコマンドを実行します。
(3) クライアント鍵の作成
エンドユーザーデバイスのクライアント鍵を生成する必要があります。すべてのデバイスに対して1つの鍵を生成するか、各ユーザーが独自の鍵を生成して証明書を要求するかを設定できます。どちらにも設定できます。 強力な自動生成パスフレーズを使用してクライアント鍵を生成します。パスフレーズは必ずKeeperボルトに保存してください。
(4) CSRの作成
クライアント鍵ごとにCSRを生成して、署名付き証明書を作成します。
(5) CA鍵でCSRに署名
要求に署名するには、手順1で生成したCAパスフレーズを入力する必要があります。
これで、署名付きクライアント証明書 (client.crt) が利用できるようになりました。
(6) クライアント証明書をPKCS#12に変換
証明書をウェブブラウザにインポートするには通常、PKCS#12のpfxファイルが必要です。以下のコマンドを使用して、client.pfxファイルを生成します。パスフレーズが必要になります。このパスフレーズは、証明書をインストールする必要があるユーザーごとに設定されるため、使用はこの目的に限定されます。
(7) NGINXの設定に追加
SSL/TLSクライアント認証を要求するようにkeeper/guacamole-ssl-nginx
イメージを設定するには、環境変数CLIENT_CERTIFICATE_FILE
を指定します。ユーザーは、この証明書によって署名された秘密鍵にブラウザがアクセスできる場合にのみ、ブラウザを使用してNGINXのKCMインスタンスに接続できるようになります。
この変数は、コンテナ内のファイルを指すという点でCERTIFICATE_FILE
環境変数に似ていますが、この場合は、_クライアント_の秘密鍵の認証に使用される証明書を管理します。
以下に例を示します。
設定を更新したら、コンテナを再起動します。
(8) 設定のテスト
ユーザーのマシンにクライアント証明書をインストールする前に、Keeper Connection Managerのログイン画面を読み込んで、以下の403エラーが送信されることを確認します。
(9) クライアント証明書のインストール
Keeper Connection Managerにアクセスする必要があるエンドユーザーのクライアントデバイスごとに、クライアント証明書をユーザーのブラウザまたはマシンにインストールする必要があります。クライアント証明書のインストールはプラットフォームによって異なります。
Windowsの場合
手順6のクライアント証明書 (client.pfx) をダブルクリックまたは右クリックして、クライアント証明書のパスフレーズを入力します。
ブラウザを再起動します。
次回Keeper Connection Managerを読み込んだときに、証明書を承認してください。
Mac OSの場合-Chrome
client.pfxファイルをダブルクリックするか、キーチェーンログイン証明書セクションに読み込んでインポートします。 証明書の「Trust」 (信頼) セクションで、「Always Trust」 (常に信頼) を選択します。
ブラウザを再起動し、Keeper Connection Managerのログイン画面を読み込んで証明書を選択します。
Mac OSの場合-Firefox
Firefoxを開いて、画面右上のメニューをクリックし、「オプション」をクリックし、「プライバシーとセキュリティ」メニューより「証明書を表示(C)」をクリックします。「認証局証明書」タブより「インポート」をクリックし、client.pfx証明書ファイルを選択してインポートします。
インポートが成功すると、Keeper Connection Managerのログイン画面が読み込まれます。
オプションパラメータ
SSL/TLS認証の動作をさらに変更するために、以下の追加の環境変数も利用できます。
変数 | 説明 | デフォルト |
| NGINXがGuacamoleのプロキシとして機能するように設定する | |
| NGINXがクライアント(ブラウザ)が提示する証明書を要求および検証する方法とその要否を管理します。NGINXの | on |
| NGINXがクライアントの証明書を検証しようとするときに、クライアントの証明書チェーンを確認する深さを管理します。NGINXの | 1 |
Last updated