CIサーバー(踏み台サーバー)からEB CLIでEC2にアプリケーションのデプロイをする運用をしている。
EC2インスタンスに接続する際は、キーペアによる認証を行う。
CIサーバーで複数ユーザーを持ち、それぞれでEC2に接続する場合は、キーペア作成時にローカル(ここではCIサーバー)に作成したプライベートキーを配布することで接続できるようになる。
ちなみに各ユーザーごとにキーペアを登録することもできるよう。
Amazon EC2 のキーペア - Amazon Elastic Compute Cloud
→複数ユーザー用のキーペア
キーペアmy-key-pair作成時に、プライベートキーmy-key-pair.pemを、~/.sshに作っておくと、このキーペアでEC2に接続できる。
プライベートキーを保存できるのは、キーペア作成時のみ。
このプライベートキーを、複数ユーザーで使いまわすことで、持っている人がEC2に接続できる。
キーペア登録とプライベートキー保存のやり方
ciサーバにログイン。
AWS CLIを(設定していない場合は)設定する。
$ aws configure
AWS Access Key ID [None]: ***
AWS Secret Access Key [None]: ***
Default region name [None]: ap-northeast-1
Default output format [None]: text
参考
AWS CLI の設定
AWS CLIのインストールから初期設定メモ - Qiita
コマンドラインでmy-key-pairキーペアの作成とプライベートキー保存
$ aws ec2 create-key-pair --key-name my-key-pair --query 'KeyMaterial' --output text > ~/.ssh/my-key-pair.pem
# ファイルの中身が正しいか確認。
参考
キーペアの使用 - AWS Command Line Interface
パーミッションを400に変更。
他ユーザーに配布する場合は、コピーしてオーナーとグループを変更。
セキュリティ上、プライベートキーをサーバ外部に持ち出さないこと。
AWSのEC2コンソール画面から、該当のEC2のキーペアを変更。
(インスタンスの再起動が走る。)
eb ssh成功!