SSHプラグイン
コマンダーを使用したSSH鍵のローテーション
Keeperシークレットマネージャーの新しいパスワードローテーション機能がリリースされました。パスワードローテーションのどのような事例でもこの新機能の使用を推奨します。詳細については以下をご参照ください。
Keeperシークレットマネージャーを使用したパスワードローテーション
Keeperコマンダー用のSSHプラグインを使用すると、1つまたは複数のターゲットシステムに対して、SSH鍵の生成およびローテーションが可能になり、ローカルユーザーやリモートユーザーのUnix/Linuxパスワードのローテーションもできます。
前提条件
SSH鍵のローテーション
OpenSSLとOpenSSHのインストール
このプラグインを使用するには、OpenSSLとOpenSSHのパッケージが、Keeperコマンダーを実行するコンピュータにインストールされている必要があります。
インストールを確認するには、ターミナルアプリケーションを開き、「openssl」
コマンドと「ssh」
コマンドがインストールされ、システムのPATH環境変数でアクセスできることを確認します。
SSHパスワードのローテーション
プラグイン名: ssh
ローテーション用のレコードを準備
ローテーションは、従来のレコードにもタイプ指定されたレコードにも対応しています。 タイプ指定されたレコードを使用する場合は、「ログイン」タイプのフィールドが必要です。 ローテーションの種類に応じて、その他のフィールドを追加することもできます。 以下の手順をご参照ください。
標準の「SSH鍵」レコードタイプがSSHローテーションに適しています。
従来のレコードとタイプ指定のあるレコードの詳細については、トラブルシューティングをご参照ください。
ログイン名を設定
Keeperのレコードの「ログイン」フィールドにターゲットシステムのログイン名を入力します。
ホスト名とポートを設定
タイプ指定されていないレコードを使用する場合は、ホストとポートをカスタムフィールドに設定できます。以下をご参照ください。
ヒント:ローテーションのプラグインが指定されていない場合、コマンダーはポート番号で使用するローテーションを推測します。 ポート22はSSHローテーションを使用します
その他のローテーション設定
ローテーションパラメータをカスタマイズできる値は以下のとおりです。 これらのオプションをテキストフィールドとしてレコードに追加し、表に示すように、パラメータに相当するラベルを設定します。
cmdr:plugin
sshkey
ssh
cmdr:host
(任意) ターゲットサーバーのホスト名またはIPアドレス。レコードフィールドとして入力しない場合は、カスタムフィールドとして追加できます
cmdr:rules
「大文字の数, 小文字の数, 数字の数, 記号の数」
(たとえば、4,6,3,8)
(任意) パスワード生成ルール
SSH鍵をローテーションする場合、ターゲットサーバーの公開鍵のローテーションを自動化するには、ターゲットホストの.ssh/authorized_keysの公開鍵を手動で1回
更新する必要があります。
これを初回に設定すると、それ以降のローテーションはコマンダーによって自動的に更新されます。
ローテーション
SSH鍵のローテーション
初期設定と実行
このプラグインを初めて設定する場合は、以下の手順に従ってください。
1. Keeperのレコードを入力
Keeperのレコードのタイトル、ログイン、ホスト名またはIP、ポートの各フィールドに入力します。
2. rotateコマンドを実行して公開鍵を格納
このレコードに対して、Keeperシェルでrotate
コマンドを実行します。コマンダーは公開鍵と秘密鍵を生成し、それらをレコードに格納します。公開鍵をコピーまたは保存し、ターゲットホストの.ssh/authorized_keys
ファイルに保存します。この手順は、最初に手動で行うか、またはssh-copy-id
コマンドを使用してください。
ターゲットシステムのauthorized_keysファイルのパーミッションを設定してください。chmod 700 ~/.ssh; chmod 600 ~/.ssh/authorized_keys
3. 鍵のローテーションを実行
Keeperシェルでrotate
コマンドを実行して、完全なローテーションを実行します。ローテーションに成功すると、ターゲットホストは新たに生成された公開鍵で更新され、Keeperのレコードは秘密鍵と公開鍵のペアで更新されます。
このプラグインは、ターゲットシステムがSSHサービスのデフォルト設定 (ユーザーのホームディレクトリの.ssh
ディレクトリにあるauthorized_keys
ファイル) を使用することを前提としています。
rotate
コマンドの詳細については、こちらをご参照ください
SSHパスワードのローテーション
SSHのパスワードをローテーションするには、コマンダーでrotate
コマンドを使用します。 コマンドにレコードタイトルもしくはUIDを渡します (複数のレコードを1度にローテーションさせるには、正規表現で--match
を使用します)。
プラグインは、こちらに示すようにコマンドに指定することも、レコードのフィールドに追加することもできます (上記のオプションを参照)。 指定しない場合、コマンダーはポートフィールドを使用して、使用するプラグインを識別します。 この場合、ポート22はsshプラグインが使用されることを意味します。 レコードにプラグインタイプを追加すると、プラグインの異なる複数のレコードを1度にローテーションできます。
最終更新