use*_*jhg 5 ssh authentication amazon-ec2
我有两个实例在我的 aws 上运行。我对他们两个都有相同的密钥对。我长时间使用这两个实例。但是今天,如果我运行此命令,我在尝试通过终端登录时在一个实例上遇到错误。
ssh -i mypem.pem ec2-user@52.xx.xxx.xxx
Permission denied (publickey).
Run Code Online (Sandbox Code Playgroud)
但是如果我尝试使用相同的pem文件登录到其他实例。它有效,我可以成功登录。
我已经尝试了所有的解决方案
但没有什么对我有用
如果我做
ssh -i mypem.pem ec2-user@52.xx.xxx.xxx -v
Run Code Online (Sandbox Code Playgroud)
结果是:
OpenSSH_7.4p1, LibreSSL 2.5.0
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to 52.xx.xxx.xxx [52.xx.xxx.xxx] port 22.
debug1: Connection established.
debug1: key_load_public: No such file or directory
debug1: identity file mypem.pem type -1
debug1: key_load_public: No such file or directory
debug1: identity file mypem.pem-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.4
debug1: Remote protocol version 2.0, remote software version OpenSSH_7.4
debug1: match: OpenSSH_7.4 pat OpenSSH* compat 0x04000000
debug1: Authenticating to 52.xx.xxx.xxx as 'ec2-user'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: algorithm: curve25519-sha256
debug1: kex: host key algorithm: ecdsa-sha2-nistp256
debug1: kex: server->client cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none
debug1: kex: client->server cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: mykeyhere
debug1: Host '52.xx.xxx.xxx' is known and matches the ECDSA host key.
debug1: Found key in /Users/myusername/.ssh/known_hosts:6
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_EXT_INFO received
debug1: kex_input_ext_info: server-sig-algs=<rsa-sha2-256,rsa-sha2-512>
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/myusername/.ssh/mypem.pem
debug1: Authentications that can continue: publickey
debug1: Trying private key: mypem.pem
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Permission denied (publickey).
Run Code Online (Sandbox Code Playgroud)
我试过的
chmod 400 mypem.pem
Run Code Online (Sandbox Code Playgroud)
我也试过这个
sudo ssh -i amazonec2.pem ec2-xxx-xxx-xxx-xxx.us-west 2.compute.amazonaws.com
Run Code Online (Sandbox Code Playgroud)
明白啦
Please login as the user "ec2-user" rather than the user "root"
Run Code Online (Sandbox Code Playgroud)
然后我做了这个
sudo ssh -i amazonec2.pem ec2-xxx-xxx-xxx-xxx.us-west-2.compute.amazonaws.com -l ec2-user
Run Code Online (Sandbox Code Playgroud)
我有
权限被拒绝(公钥)
如果我尝试使用相同的密钥登录到其他实例。我可以成功登录。请帮助这里实际出了什么问题
我实例上的安全组是这样的:
小智 1
如果您没有运行 Amazon Linux,则必须更改ec2-user特定操作系统的用户名 ( )。
就我而言,我使用的是 Ubuntu 服务器,并使用ubuntu@xxx.xx.xxx.xxx.
| 归档时间: |
|
| 查看次数: |
8819 次 |
| 最近记录: |