EC2 인스턴스에 대한 SSH 연결이 실패했기 때문에 인스턴스 중지 → 시작하면 성공
소개
AWS의 공부에 있어서 이하의 책에서 핸즈온을 하고 있을 때에 미묘하게 넘어졌기 때문에 메모입니다.
※매우 좋은 책입니다.
환경
- OS:MacOS
- ソフト:ターミナル
- AMI:Amazon Linux 2
- セキュリティグループ:独自でHTTP/HTTPS/SSHのインバウンド許可
사건
作成したてのインスタンスにsshログインを試みたところ、エラーが発生
$ ssh -i "/Users/xxxx/.ssh/myserverkey.pem" [email protected]
[email protected]: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
결론
EC2を「停止」→「起動」したら解消しました。
停止を行うと、パブリックIPやパブリックDNSが変更されますので、新しいパブリックIPを指定したらすんなり接続できました。
다음은 결론에 이르기까지 생각할 수 있는 원인
키 권한이 잘못되었습니다.
SSH が機能するには、キーが公開されていないことが必要です。必要な場合は次のコマンドを使用します。
とのことなので、キーならびにキーの上位(ホームディレクトリ)まで権限の制限を行いました。
chmod 400 /Users/xxxx/.ssh/myserverkey.pem
chmod 600 /Users/xxxx/.ssh
chmod 600 /Users/xxxx
事象変わらず
로그인 사용자 실수
AMIによってログインするユーザーの指定が異なります。
Amazon Linux 2 または Amazon Linux AMI の場合は、ユーザー名は ec2-user です。
CentOS AMI の場合、ユーザー名は centos です。
Debian AMI の場合は、ユーザー名は admin または root です。
Fedora AMI の場合、ユーザー名は ec2-user または fedora です。
RHEL AMI の場合は、ユーザー名は ec2-user または root のどちらかです。
SUSE AMI の場合は、ユーザー名は ec2-user または root のどちらかです。
Ubuntu AMI の場合は、ユーザー名は ubuntu です。
EC2の「説明」の「AMI ID」をクリックし、作成した「Amazon Linux 2」で作成していることを確認
コマンドの実行において指定している「ec2-user」で問題ないため、原因ではないことを確認
SSH가 인바운드 허용되지 않음
独自でセキュリティグループを作っていたこともありインバウンドの設定を確認したがSSHは許可。
念の為、デフォルトのセキュリティーグループに切り替えてみたが、タイムアウトした。
$ ssh -i "/Users/xxxx/.ssh/myserverkey.pem" [email protected]
ssh: connect to host xx.xx.xx.xx port 22: Operation timed out
セキュリティグループやIPの打ち間違いといったコマンドミスも関係ないことを確認し、もとのセキュリティグループに戻す
키 페어 파일이 잘못되었습니다.
何らかの理由でコピーが失敗しているようなことがあるようなので、新しいキーペアを作成してそちらを指定して同コマンドを実行したが、同じエラーになるため、関係がなさそう。
キーをおいているPCそのもののコピーの仕方などに問題がある可能性もあったのでWindowsでも試そうと思いましたが、未実施。
EC2 인스턴스가 제대로 시작되지 않았을 가능성
まずは、「インスタンスの状態」が「running」であることを再確認。
現状の状態は問題ないようなので、EC2インスタンスを「再起動」してみるが、事象変わらず。
はじめにに記載した、本に「再起動」と「停止→起動」は挙動が違うことを思い出して試してみたらうまくいきました。
결론
検索やAWSのトラブルシューティングにヒットするものでは解決に至らなかったためちょっと困りました。
以前もAWSの勉強(挫折)を行なっている際、作成したEC2インスタンスがうまく起動されずにちょっと手間取っていたので、インスタンスの起動に疑いの目を向けられましたが、この起動の失敗率一体・・・。
また、起動時に割り当てられたIPに問題があったのか、問題があったのであれば何がどうだめだったのか、はたまたIPは関係がない部分でインスタンスに何らかの問題があったのか地味に根本原因がわかっていないので、わかる方いたら教えていただけると嬉しいです。
Reference
이 문제에 관하여(EC2 인스턴스에 대한 SSH 연결이 실패했기 때문에 인스턴스 중지 → 시작하면 성공), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/c3drive/items/8fcfbde4de0ce55d00be텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)