AWSのEC2にインスタンスを創って、SSHで接続するまで

2017年10月26日

なんだかずっと触ろう触ろうと思って結局触らず終いでしたが、機会があったのでAWSデビューしました。

AWSはサインアップしてから1年間無料で使えるので(サービスの制限有り)、資本の少ないスタートアップや一回試してみたいというフリーランスのエンジニアの方にはぴったりだと思います。

今日は、AWSの新規アカウント作成後、インスタンスを創って、ssh接続するところまで。

①インスタンス作成

ダッシュボードから、左メニューにある「インスタンス」をクリック
インスタンスを作成。

AMI: Amazon Linux (無料)
インスタンスタイプ: t2.micro(無料)
セキュリティグループ: ssh 22と、http 80を許可
ストレージは、28GiB(30GBまで無料)

②キーを新規作成

設定が終わったら、キーファイル、[名前].pemを作成し、ダウンロード。
[shell]
mv ~/Download/キーファイル ~/.ssh
[/shell]
キーを.sshディレクトリに移動する。

③sshで接続する

以下のコマンドで、EC2に接続だー!
[shell]
ssh -i ~/.ssh/[ファイル名].pem ec2-user@パブリックIP
[/shell]

と思いきや、エラー発生。

[shell]
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0640 for ‘/Users/username/.ssh/[ファイル名].pem’ are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: /Users/username/.ssh/[ファイル名].pem
Permission denied (publickey).
[/shell]

パーミッションがオープンすぎるので、だめらしい。
なので、所有権を変更してあげれば良い。

[shell]
chmod 0600 ~/.ssh/awskey.pem
[/shell]

これで、再度
[shell]
ssh -i ~/.ssh/awskey.pem ec2-user@52.69.60.21
[/shell]
をうつと、無事EC2に接続できました。

[shell]

__| __|_ )
_| ( / Amazon Linux AMI
___|\___|___|

[/shell]

次回は、今回立ち上げたEC2で諸々の設定をしたいと思います。

[参考]
http://blog.ruedap.com/2011/04/04/mac-ssh-key-copy-error