クラウドベースの統合開発環境 AWS Cloud9を使ってみた(Systems Manager経由編)
はじめに
前回の記事「クラウドベースの統合開発環境 AWS Cloud9を使ってみた(Directアクセス編)」の手順について記載しましが、今回はSystems Manager経由編について記載します。
Direct アクセスの場合
・22番のインバウンドポートを開いている。(接続できるIPアドレスは制限)
Systems Manager経由するメリット
・EC2インスタンスに対して、インバウンドポートを開かない(no-ingress)
Systems Managerを使ってno-ingressでEC2に接続するメリットについては以下を参照
Cloud9環境構築手順
AWSマネージメントコンソールからCloud9を選択し、
[create enviroment]を押下。
1.Name enviroment
Cloud9の環境名や説明を設定し、[Next step]を押下
2.Configure settings
Cloud9の環境設定は3つの選択肢があります。
1.direct accessモードで新しいEC2インスタンスを作成する
2.Systems Manager経由でアクセスする新しいEC2インスタンスを作成する
3.既存のリモートサーバにSSH経由で接続する
今回はSystems Manager経由で利用するために
[Create a new no-ingress EC2 instance for enviroment(access via Systems Manager]を選択します。
その他のオプションについては割愛。
3.確認画面
しばらく(数分)すると、Cloud9の画面が起動します。
Systems Manager経由でもサクッとCloud9を実行することができました。
構築された環境を確認
1.EC2のインバウンドルールを確認
セキュリティゲートウェイのインバウンドルールが無いことを確認
2.IAMロールを確認
Systems Manager経由を選択したことにより、EC2に"AWSCloud9SSMInstanceProfile"というIAMロールが設定されていることを確認
3.AWSCloud9SSMInstanceProfileの内容を確認
許可ポリシー
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ssmmessages:CreateControlChannel",
"ssmmessages:CreateDataChannel",
"ssmmessages:OpenControlChannel",
"ssmmessages:OpenDataChannel",
"ssm:UpdateInstanceInformation"
],
"Resource": "*"
}
]
}
信頼ポリシー
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": [
"ec2.amazonaws.com",
"cloud9.amazonaws.com"
]
},
"Action": "sts:AssumeRole"
}
]
}
最後に
今回、Systems Manager経由で利用するCloud9環境を構築してみたが、Directアクセスとほぼ変わらない手順だった。
インバウンドポートを開けていないSystems Manager経由(no-ingress)の環境の方が、安心して利用できるので、Directアクセスではなく、Systems Manager経由アクセスの方がCloud9作成時のデフォルト選択肢になっていても良いと思ったのだが、そうなっていない理由はなぜだろうか・・・
Systems Manager経由の場合は、AWSCloud9SSMInstanceProfileのIAMロールが自動的にアタッチされるからだろうか・・・(EC2は1つのIAMロールしかアタッチすることができない)
この記事が気に入ったらサポートをしてみませんか?