最近、新しいEC2インスタンスを設定しました。翌日、ssh経由でインスタンスに接続できませんでした。前日に接続と切断ができたが、何もしなかったと誓う。ここにSSHデバッグ情報があります:
ssh -i webserver.pem -v [email protected]
OpenSSH_5.9p1, OpenSSL 0.9.8r 8 Feb 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: Connecting to my.elastic.ip [my.elastic.ip] port 22.
debug1: Connection established.
debug1: identity file webserver.pem type -1
debug1: identity file webserver.pem-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.9p1 Debian-5ubuntu1.1
debug1: match: OpenSSH_5.9p1 Debian-5ubuntu1.1 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.9
debug1: SSH2_MSG_KEXINIT sent
Connection closed by my.elastic.ip
この問題を解決する方法はありますか?または、インスタンスを再インストールしますか?この問題をできるだけ早く解決する必要があるので、助けてください。あなたの助けが高く評価されています!
私の.pemに対するPS権限は600に設定されています。
セキュリティグループを確認してください。トラフィックがインスタンスから戻ることを許可する送信ルールがあることを確認してください。
デフォルトの送信ルールを使用する
type: All traffic, Protocol: All, Ports: All, Destination: 0.0.0.0/0
それが動作します。
私の問題は、ユーザー名が間違っていることでした。 ubuntuインスタンスでは「ubuntu」、Amazonインスタンスでは「ec2-user」にする必要があります。
多くの場合、インスタンスの起動に使用したAMIのデフォルトのユーザー名を使用する必要があります。
Ubuntu AMIの場合、ユーザー名はubuntuです。
それ以外の場合、ec2-userおよびrootが機能しない場合は、AMIプロバイダーに確認してください。
(1)sshコマンドを実行するときに、pemキーを置いたのと同じフォルダにいるかどうかを確認してください。それ以外の場合は、「ssh -i/your_key_path /mykey.pem」を使用する必要があります。
(2)それでも効果がない場合。別のキーを作成し、AWSウェブページからEC2インスタンスを設定できると思います。その後、再試行してください。
この問題が発生したため、PEMファイルが正しくないことがわかりました。 Amazon EC2キーペア-キーペアの指紋の確認 の指示に従って確認できます。
AWSを使用してキーペアを作成した場合、OpenSSLツールを使用して、秘密キーファイルからフィンガープリントを生成できます。
$ openssl pkcs8 -in path_to_private_key -inform PEM -outform DER -topk8 -nocrypt | openssl sha1 -c
サードパーティツールを使用してキーペアを作成し、公開キーをAWSにアップロードした場合、OpenSSLツールを使用して、ローカルマシンの秘密キーファイルからフィンガープリントを生成できます。
$ openssl rsa -in path_to_private_key -pubout -outform DER | openssl md5 -c
出力は、コンソールに表示される指紋と一致する必要があります。
私は同じ問題を抱えていました、それはあなたがpem秘密鍵ファイルに与える許可の問題です。 Sudo(管理)アクセスを使用して、ターミナルでsshコマンドを実行していることを確認してください。