はじめに
AWSインフラ&コーディング練習のために環境を作ってみました。
大本がcloud9で使い捨て可能な環境なので、色々と試せて便利です。
手順要約
- AWS:Cloud9作成
- AWS:Cloud9へElastic IP アドレスを付与
- windows:秘密鍵/公開鍵を発行する
- Cloud9 のセキュリティグループを変更する
- VS code から、Cloud9 に ssh で接続する
手順
1. AWS:Cloud9作成
- 基本的に設定値はデフォルトでOK
- パラメータが下記の値になっていること
- AmazonLinux2
- AWS Systems Manager (SSM)
2. AWS:Cloud9へElastic IP アドレスを付与
- EC2/左側ペイン「Elastic IP」の「Elastic IP アドレスの割り当て」をクリック
- ネットワークボーダーグループが「ap-northeast1」になっていることを確認し「割り当て」をクリック
- チェックボックスを選択し、「アクション」→「Elastic IP アドレスの関連付け」を選択
- [インスタンス] にて、当該 Cloud9 環境を選択し「関連付ける」をクリック
3. windows:秘密鍵/公開鍵を発行する
- SSH鍵を発行
powershell
# ディレクトリ作成&移動
$ mkdir C:\Users\user_name\.ssh
$ cd C:\Users\user_name\
# 鍵作成
$ ssh-keygen
>Generating public/private rsa key pair.
>Enter file in which to save the key (C:\Users\user_name/.ssh/id_rsa): >cloud9[任意の名前を入力]
>Enter passphrase (empty for no passphrase): [そのままEnterで可]
>Enter same passphrase again: [そのままEnterで可]
~省略~
- SSH 接続情報を作成
powershell
$ New-Item config
//下記を記載
Host <任意のホスト名(VSCodeの接続画面に表示されます)>
HostName <付与したElastic IP アドレス>
IdentityFile ~/.ssh/<作成した秘密鍵のファイル名>
4. Cloud9 のセキュリティグループを変更する
-
Cloud9のセキュリティグループ/インバウンドルールを「インバウンドルールを編集」をクリック
-
ルールを追加から下記の値を入力
- タイプ:SSH
- ソース:カスタム
- 接続元の IP アドレス:【PCのアドレス】
- powershell「ipconfig」コマンドで確認
-
Cloud9の左ペインの設定から「Show Hidden Files」と「Show Home in Favorites」にチェックを入力
-
~/.ssh/authorized/authorized_keysにローカルの公開鍵(~.pub)の中身を末尾にコピー
5. VS code から、Cloud9 に ssh で接続する
-
VS Code を起動し、拡張機能の 「Remote - SSH」をインストール
-
VS Code の画面左でリモート接続のアイコンをクリック → SSH TARGETS に表示された [cloud9] にて [Connect to Host in New Window]
-
Select the platform of the remote host "cloud9"は「linux」を選択