はじめに
こんにちは、 ネクストモード株式会社 の奥野です。
今回は、Keeper PAMを利用するための土台となる「Keeper Gateway 」の構築方法についてご紹介したいと思います。
Keeper Gatewayは、特権アクセス管理(PAM)の利便性と安全性を両立させるための「要」となる存在です。
まず、Keeper Gatewayを使用することで、サーバーへのシームレスなアクセスが可能となります。ユーザーはブラウザからKeeperのボルトを操作するだけで、対象のサーバーへ直接ログインでき、VPN接続のような複雑な手順や専用ソフトなどは一切不要となります。
また、「ゼロトラスト」に基づいた強固なセキュリティも実現ができます。ゲートウェイが通信を中継するプロキシとして機能するため、接続するサーバー側で外部からのポート開放(インバウンド通信)を行う必要がありません。これにより攻撃リスクを最小限に抑えた安全なリモートアクセス環境を構築できます。
Keeper Gatewayは、 Keeper PAMを利用するための最初の一歩となりますので、ぜひ参考に設定してみてください。
PAMの概要については下記ブログをご参照ください。
Gatewayサーバーを設置する環境
今回は、AWS上に以下の構成で環境を構築しました。
システム構成図

補足
今回の環境における主なポイントは、以下のとおりです。
- プライベートサブネットへの配置
Keeper GatewayをインストールするEC2は、セキュリティを考慮し、外部インターネットから直接アクセスできないように、プライベートサブネット内に配置しています。これにより、サーバー自体をインターネットから隔離しています。 - NAT Gatewayによる通信の確保
Keeper Gatewayの通信要件として、Keeperのクラウドサーバーへのアウトバウンド通信が必要となります。NAT Gatewayを設置し、プライベートな環境を維持したまま安全にインターネットへ接続できるルートを確保しています。
なお、インバウンド通信の許可は不要です。外部からサーバーに対してポートを開放する必要がないため、攻撃リスクを最小限に抑えた非常にセキュアな構成となっています。
サーバー要件
推奨スペック
公式ドキュメントでは、以下のスペックが基準として示されています。
- 推奨環境:CPU 2コア / メモリ 8GB以上
- 本番環境(最小要件):CPU 4コア / メモリ 16GB以上
安定稼働のためにも、余裕を持ったスペック選定を心がけましょう。
対応プラットフォームと推奨OS
Keeper Gatewayは、Docker、Windows、Linuxといった幅広いプラットフォームに対応していますが、選択する環境によって利用できる機能に違いがある点に注意が必要です。
Keeperの全機能を最大限に活用し、最も安定した環境で管理するためには、公式ドキュメントにおいて以下のOSの利用が強く推奨されています。
- Rocky Linux 8
- RHEL 8
- Alma Linux 8
これら「Enterprise Linux 8系」を選択することで、リモートブラウザ分離(RBI)などの高度な機能を含む、すべての機能がフルサポートされます。互換性や管理のしやすさを考慮すると、これらを選択するのが最も確実な構成となります。
設定してみた
ゲートウェイのセットアップ
まずはゲートウェイを使えるようにするための初期セットアップから進めていきましょう。はじめに、Keeperのウェブボルト画面からゲートウェイを新規作成します。

作成画面が表示されたら、プロジェクト名やフォルダ名には任意の名称を入力し、初期化方法は「ワンタイムアクセストークン」を選択します。
「初回リクエスト時にデバイスの外部WAN IPアドレスをロックする」の項目ですが、ここをチェックすると、アクセス元のIPアドレスが初回接続時のものに固定されます。本ブログの構成では、NAT GatewayのパブリックIPからのみアクセスを許可するため、セキュリティをより強固にすることが可能です。
最後に、今回はRHEL 8のサーバーにGatewayを設定するため、OSの選択肢では「Linux」を指定して次へ進みます。

「次へ」進むと、画像のように「アクセストークンが作成されました!」という画面が表示されます。 この画面では、サーバー側でのセットアップに使用する「インストールコマンド」と、認証用の「ワンタイムアクセストークン」が発行されますので、コマンドをコピーしておきます。

PAMユーザーレコードはKeeper Gatewayのセットアップで作成されたユーザーレコードを保存する共有フォルダに格納します。
ゲートウェイのインストール
ここからはRHEL 8サーバーでの操作に移ります。サーバーにログイン後、先ほどコピーしたインストールコマンドをターミナルに貼り付けて実行してください。このコマンドを実行することで、パッケージのダウンロードからゲートウェイのインストール、サービスの起動までが自動的に行われます。
$ curl -fsSL https://keepersecurity.com/pam/install | sudo bash -s -- --token <YOUR_ONE_TIME_TOKEN>✓ => Created temporary directory in /var/tmp✓ => File system permissions check passed.✓ => useradd exists on this system and will be used to add service user keeper-gw service...(中略)...✓ => View Service Status : sudo systemctl status keeper-gateway.service✓ => Restart Service : sudo systemctl restart keeper-gateway.service✓ => Stop Service : sudo systemctl stop keeper-gateway.service⚠ => -------------------------------------------------------------⚠ => Uninstall Command : curl -fsSL https://keepersecurity.com/pam/uninstall | sudo bash -s✓ => Installation complete! Keeper Gateway is installed and running as a system service
インストールが完了したら、まずは以下のコマンドを実行してサービスの稼働状態を確認しましょう。出力結果のステータスが active (running) になっていれば、無事に起動しています。
$ sudo systemctl status keeper-gateway.service
サービスの自動起動の設定もチェックしてみましたが、こちらは最初からしっかり有効(enabled)になっていました!
念のため、以下のコマンドで設定状態を確認しておきましょう。結果が enabled と表示されれば、OSの起動時にゲートウェイのサービスが自動で立ち上がる設定になっています。
$ systemctl is-enabled keeper-gateway.serviceenabled
インストールが正常に完了すると、「シークレットマネージャー」セクションに新しいゲートウェイが追加されています。アプリケーションのステータスが「オンライン」になっていれば、セットアップは成功です。

以上で、Keeper Gatewayのセットアップは完了です!
さいごに
Keeper Gatewayの導入、いかがでしたでしょうか?
ご覧いただいた通り、初期設定は非常に簡単です。OS側の難しい操作や複雑なコマンド入力、面倒な設定ファイルの作成などはほとんど必要ありません。自動化されたスクリプトにお任せするだけで、あっという間にセットアップが完了してしまいました。
さて、ゲートウェイという「道」が無事に開通しました。次は実際にこの道を通って、サーバーへアクセスしてみましょう!
別記事の「【Keeper PAM】LinuxへKeeper PAM経由でSSH接続してみた」では、今回構築したゲートウェイを使って、実際にSSH接続を行う検証内容を紹介しています。
ブラウザから安全かつ快適にサーバーを操作する様子をぜひチェックしてみてください。