For the complete documentation index, see llms.txt. This page is also available as Markdown.

SSHエージェント

Keeperの内蔵SSHエージェントを使用して管理対象インフラへのSSHアクセスを簡素化

概要

Keeperデスクトップアプリケーションには、SSHエージェント機能が組み込まれており、SSHキーと接続の管理でのセキュリティと利便性が高まります。この機能により、対象システムへの安全なアクセスが簡素化され、SSHキーをローカルに保存する必要がなくなります。また、Keeperの強力なキー管理機能およびローテーション機能とのシームレスな連携も可能です。このSSHエージェント機能は、すべてのKeeperユーザーにご利用いただけます。

KeeperデスクトップとSSHエージェントはすべてのプラットフォームでご利用いただけます。

  • Windows

  • macOS

  • Linux

主な特徴

  • 組み込み SSH エージェント すべての秘密鍵がKeeperデスクトップアプリに自動的に組み込まれるため、サードパーティのSSHエージェントは不要になります。

  • ローカルキー ストレージなし SSHキーは Keeperで安全に保存および管理されるため、ローカルマシンでキーが漏洩するリスクはありません。

  • シームレスな認証 Keeperボルトがロック解除されている際に、対象システムへのSSHアクセスを安全に認証します。

  • ローカルおよびリモート使用

    KeeperPAMトンネル経由の管理対象システムに加えて、直接接続可能なターゲットへのSSH接続もサポートします。

  • Git統合 GithubおよびGitlabで認証し、ワークステーションにローカルに秘密鍵を保存せずにGitコミットに署名します。

  • 暗号化されたキー Keeperに保存されているSSH秘密鍵はパスフレーズで暗号化できるため、保護層がさらに強化されます。さらに、レコードの [パスワード] フィールドをパスフレーズとして使用することで、セキュリティと利便性の両立を実現します。

  • キーローテーション Keeperの自動SSHキーローテーションによりSSHエージェントと連携し、常に最新のキーを使用できるようにします。

ダウンロード

Keeperデスクトップアプリケーションは、こちらのダウンロード ページから入手できます。

キーをKeeperに保存する

Keeperボルトでは、SSH秘密キー以下の2つの方法で保存できます。

  • カスタムフィールドとして追加

  • ファイルとして添付

カスタムフィールドの例
添付ファイルの例

どちらの場合でも、パスワードがレコードパスワードフィールドに保存されている限り、パスワードで保護されたキーがサポートされます。

PEM (プライバシー強化メール)

秘密キーに使用されるBase64エンコード形式。OpenSSLおよび旧バージョンのOpenSSHでよく使用されます。

オープンSSH

OpenSSHの最新バージョン (7.8以降) において、ssh-keygenユーティリティによって生成されるキーのデフォルト形式。秘密キーにはカスタムシリアル化形式が使用されます。

PKCS#8

複数のキータイプをサポートする秘密キーをエンコードするための標準化されたフォーマット。OpenSSLや相互運用性のためによく使用されます。

SSHエージェントの利点

Keeperアプリケーションに組み込まれたSSHエージェントにより、Keeperに安全に保存されたキーをパソコンで使用できるようになります。

SSHプロトコルでは、エージェントに読み込まれているすべての鍵を順に試行し、サーバー側と一致する鍵を見つけることで認証が行われます。しかし、OpenSSHでは1回の認証試行でエージェントが使用できる鍵の数に制限があり、通常は6つまでとなっています。この制限はSSH構成におけるMaxAuthTriesパラメータによって定義されており、Keeper側で直接制御することはできません。

この制限に対応するために、Keeperでは鍵の使用を最適化するための機能を強化しています。たとえば、特定のリソースに関連付けられたトンネルを起動すると、そのトンネル用の鍵がエージェントによって即座に有効化されるようになっています。もしアクティブな鍵の最大数に達している場合でも、関連する鍵をエージェントのリストの先頭に移動させ、接続時に確実にその鍵が使用されるように優先順位を調整します。

SSHエージェントの有効化

Keeperデスクトップアプリケーションから、[設定] > [開発者] 画面にアクセスし、この画面からSSHエージェントを管理します。

開発者設定

SSHエージェントを有効にすると、ボルトがロック解除されている間、Keeperに保存されている指定されたすべてのSSHキーがローカルマシン上で使用可能になります。

毎回のログイン時にSSHエージェントを自動的に起動させるには、[起動時にSSHエージェントを起動する] を選択します。

SSHエージェント設定

特定のキーで SSHエージェントを有効にするには、ドロップダウンからキーを選択します。

レコードへのSSHアクセスを制限する
pencil-line

ボルト内のキーをSSHエージェントで検出するには、レコードが以下の条件を満たしている必要があります。

  • レコードタイプが SSH KeyServer、または PAM User であること

  • Private Key フィールドに有効な形式のキーが含まれていること (上記の対応形式をご参照ください)

  • キーにパスフレーズが必要な場合は、Passphrase フィールドが含まれていること

ご利用のOS (Linux、macOS、Windows) でSSHエージェントを有効にするには、以下のガイドをご参照ください。

SSHエージェントの使用

最もシンプルな使用例では、SSH鍵をKeeperに保存します。パソコン上でSSHクライアントを使用し、秘密キーを必要とする操作を行う際、KeeperのSSHエージェント (Keeperデスクトップアプリケーションに統合されている) が起動し、ボルトがロック解除されている場合に、ユーザーにリクエストの承認を促します。

GitでSSHエージェントを使用する

KeeperのSSHエージェントを使うと、GitHubなどのサービスへの認証やGitコミットへの署名を、安全かつスムーズに行えます。Keeperを使ったGitHubでの認証およびGitコミットへの署名の設定手順をご確認ください。

トンネルでSSHエージェントを使用する

ゼロトラスト構成でターゲットリソースを経由してトンネル接続を行う場合、KeeperのSSHエージェントが自動的にセッションを認証します。

PAMリソースでトンネルが有効化されると、トンネル情報の下にSSHコマンドが表示されます。

Keeper SSHエージェントがまだ有効化されていない場合は、[SSHコマンド (?)] ヘルプをクリックすると、SSHエージェントの設定画面を開くためのリンクが表示されます。

トンネル付きSSHエージェント

ローカルターミナルから、SSHコマンドを貼り付けます。

SSHコマンド

パソコン上で、Keeperデスクトップの認証リクエストが起動します。リクエストには、要求されているキーが含まれています。リクエストを承認するには、[承認する] をクリックします。今後同じキーに対するリクエストを自動的に承認したい場合は、[二度と表示しない] を選択してください。

SSHエージェント認証ダイアログ

アクセスが許可されると、暗号化されたKeeperトンネルを介して、対象システムへのSSH接続が即座に確立されます。

SSHエージェントで確立されたトンネル

環境セットアップ

LinuxおよびmacOS

macOSおよびLinuxでは、ボルトのロック解除時にKeeperのSSHエージェントがバックグラウンドで動作します。sshgitssh-add などのSSHツールと通信するには、SSH_AUTH_SOCK 環境変数をKeeperエージェントのUnixドメインソケットへ設定する必要があります。

LinuxまたはmacOSからKeeper SSHエージェントを使用するには、以下のコマンドをシェルのスタートアップファイルにコピーして貼り付けます。

ターミナルセットアップコマンド

zsh (macOS)

  • ~/.zshrc ファイルを編集

  • 変更を適用: source ~/.zshrc

bash

  • ~/.bashrc ファイルを編集

  • 変更を適用: source ~/.bashrc

fish shell

  • ~/.config/fish/config.fish ファイルを編集

  • 以下の行を追加して保存

  • 変更を適用

構成を確認

/path/to/keeper-ssh-agent.sock が表示されます。

変更を反映するには、新しいシェルを開き直す必要がある場合があります。


Windows

KeeperのSSHエージェントでは、WindowsネイティブのOpenSSHエージェントと同様に、標準の ssh-agent プロトコルを 名前付きパイプ 経由で実装しており、Windows OpenSSHクライアントと連携できます。

Keeperボルトのロック解除時の動作は以下のとおりです。

  • Windowsの名前付きパイプでの待ち受けを開始

  • ローカルのキーファイルなしで、sshssh-addgit などのOpenSSHツールと連携

  • ssh-agent プロトコルに基づく認証リクエスト、署名操作、キー一覧取得への応答

これにより、Windowsで完全なOpenSSH互換性が得られ、以下が可能になります。

  • エージェント転送

  • SSHキー署名

  • Keeperに安全に保存されたキーによるパスワードレスログイン

  • Gitコミット署名などの開発ワークフロー

WindowsのSSHエージェントサービスは、KeeperデスクトップのSSHエージェント画面で有効にすると起動します。

Windows上のSSHエージェント

PowerShell経由でターゲットへ接続すると、Keeperから許可の確認が表示されます。

アクセス許可ダイアログ

WindowsでのSSHエージェント競合について

WindowsでOpenSSHエージェントサービスが実行中の場合は、KeeperのSSHエージェントを使用する前に停止してください。両エージェントは同じ名前付きパイプ (\\.\pipe\openssh-ssh-agent) を待ち受けるため、同時に有効にできるのは一方のみです。

組み込みのOpenSSHエージェントを停止するには、以下を実行します。

停止後は、Keeperのエージェントが処理を引き継ぎ、ボルトに安全に保存されたキーを使ってすべての ssh および git 操作を処理します。


SSHキーのローテーション

KeeperPAMでは、オンデマンドまたはスケジュールに基づいてSSHキーを自動的にローテーションできます。

最終更新