2020年4月27日月曜日

AWS Amazon Linux2 EC2インスタンスへのログイン認証

WindowsサーバのEC2インスタンスに続きLinuxベースのインスタンスを作成していることに。

AMIはAmazon Linux 2で作成、EBSの無料枠が30GまでなのでWindowsインスタンスの削除が必要かと思ったら実際の使用サイズが30にいかなければ良さそう。

とりあえずインスタンスの作成が完了したのでログインしてみる、ログインはデフォルトで作成されているec2-userで公開鍵認証でログインする必要がある。

MacのターミナルからSSHで接続する場合(@から後ろはサーバーによって異なる)

ssh -I 公開鍵ファイル ec2-user@ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com(もしくはパブリックIPアドレス)

公開鍵ファイルはAWSのキーペア(デフォルトの名前で作成しているとMyFirstKey.pem)

接続できると思ったら・・・

The authenticity of host 'ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com (xx.xx.xx.xx)' can't be established.
ECDSA key fingerprint is SHA256:1BD4poD6tGkmoJPz5XAb6kCDeLouiWzfh5dYHuF8wUU.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com,xx.xx.xx.xx' (ECDSA) to the list of known hosts.
知らないホストに繋げようとすると警告が出る、yesを選択すると
/Users/[ユーザー名]/.ssh/known_hostsにサーバ情報が書き込まれ次回からは聞かれなくなる※EC2のパブリックIPがダイナミックな場合は起動毎にIPが代わるので都度聞いてくるっぽい。

次こそと思ったら

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/公開鍵ファイル.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/[公開鍵ファイル.pem]": bad permissions
ec2-user@ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

公開鍵ファイルのパーミッションが悪いと怒られるのでchmodコマンドでパーミッションを変更

$chmod 400 公開鍵ファイル

無事接続成功。

ついでに、作業用ユーザーだけは公開鍵認証ではなくパスワード認証にしてしまう。(あくまでも検証用サーバーのためセキュリティは目をつぶる)

/etc/ssh/sshd_configの最後に以下を追加
Match User [ユーザー名]
  PasswordAuthentication yes
sshdを再起動
#service sshd restart

これでssh ユーザー名@ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.comで接続できるのでちょっと楽になった。




0 件のコメント:

コメントを投稿