VPCを使用してEC2でいくつかの環境を実行しています。各VPCには、ネットワークへの最初のSSHエントリポイントとして使用される、強化された要塞ホストが構成されています。
プライベートVPCサブネット内のホストにアクセスするには、ユーザーはまず踏み台インスタンスにSSHで接続し、次にサブネット内の他のホストにSSHで接続します。これを行うには、ユーザーが最初のSSH接続を行うときに、SSHキー(AWSから.pemファイルとしてダウンロード)を転送します。例えば:
ssh -A [email protected]
ssh [email protected]
要塞ホストの目的は、チームメンバーが両方の.pemキーを持つ環境に安全にアクセスできるようにすることです。チームメンバーは信頼され、単一の組織内にあります。
私の質問は次のとおりです。チーム内で.pemファイルを管理および配布するための最良の方法は何ですか。
どんな提案でも大歓迎です。
これらのキーを共有しないでください。限目。
各ユーザーは独自のSSHキーペアを生成し、公開キーはアクセスが必要な各システムに展開する必要があります。秘密鍵は、理由のあるとおりに名前が付けられています。各ユーザーに対して秘密であり、それらによって生成され、パスフレーズで保護され、そのユーザーのワークステーションの安全な場所に保管されている必要があります。完全に信頼されたチームであっても、共有資格情報を使用すると、(さまざまな理由により)すべてのベストプラクティスに反することになります。
ユーザーごとのキーの使用を開始すると、他の両方の問題がなくなります。
さらに、愚かなデュアルssh rigamaroleを回避するには、ユーザーのssh設定に次のように入力します。
Host internal-Host.example.com
Hostname internal-Host.example.com
User ubuntu
IdentityFile ~/.ssh/id_rsa
ProxyCommand ssh bastion-Host.example.com nc %h %p 2> /dev/null
これを実行すると、ユーザーは単一のコマンドを実行して、内部ホストに直接接続できます。 $ ssh internal-Host.example.com
。