[How to] SSH to Elastic [an] Beanstalk instanceに関する非常に良い質問がありますが、私が気づいたことの 1 つは、この方法では SSH キーを 1 つしか追加できないことです。
複数の SSH キーをインスタンスに追加するにはどうすればよいですか? 複数のキーを新しいインスタンスに自動的に追加する方法はありますか?
[How to] SSH to Elastic [an] Beanstalk instanceに関する非常に良い質問がありますが、私が気づいたことの 1 つは、この方法では SSH キーを 1 つしか追加できないことです。
複数の SSH キーをインスタンスに追加するにはどうすればよいですか? 複数のキーを新しいインスタンスに自動的に追加する方法はありますか?
という名前のファイルを作成することも、.ebextensions/authorized_keys.config
別の方法です。
files:
/home/ec2-user/.ssh/authorized_keys:
mode: "000400"
owner: ec2-user
group: ec2-user
content: |
ssh-rsa AAAB3N...QcGskx keyname
ssh-rsa BBRdt5...LguTtp another-key
ファイル名authorized_keys.config
は任意です。
rhunwicks と rch850 の回答を組み合わせて、AWS コンソールで設定したものを保持しながら、追加の SSH キーを追加するクリーンな方法を次に示します。
files:
/home/ec2-user/.ssh/extra_authorized_keys:
mode: "000400"
owner: ec2-user
group: ec2-user
content: |
ssh-rsa AAAB3N...QcGskx keyname
ssh-rsa BBRdt5...LguTtp another-key
commands:
01_append_keys:
cwd: /home/ec2-user/.ssh/
command: sort -u extra_authorized_keys authorized_keys -o authorized_keys
99_rm_extra_keys:
cwd: /home/ec2-user/.ssh/
command: rm extra_authorized_keys
eb ssh
秘密鍵ファイルが AWS コンソールで定義された秘密鍵と同じ名前である場合にのみ機能することに注意してください。
いいえ、Elastic Beanstalk は 1 つのキー ペアのみをサポートします。SSH キーをファイルに手動で追加できauthorized_keys
ますが、これらは Elastic Beanstalk ツールに認識されません。
これを実現する方法の 1 つは、使用する追加のキー ペアの公開キーを ~ec2-user/.ssh/authorized_keys に追加するユーザー データ スクリプトを作成し、そのユーザー データでインスタンスを起動することです。たとえば、 :
#!
echo ssh-rsa AAAB3N...QcGskx keyname >> ~ec2-user/.ssh/authorized_keys
echo ssh-rsa BBRdt5...LguTtp another-key >> ~ec2-user/.ssh/authorized_keys