繁体   English   中英

允许用户使用密钥对通过SSH进入EC2 Linux实例

[英]Allowing users to SSH into EC2 Linux Instance with key pairs

我创建了一个新的EC2 Amazon Linux实例。 我想允许开发人员通过SSH进入EC2实例。 为了对此进行测试,我正在Windows计算机上进行尝试。 我已按照下面链接中的说明进行操作,但无法使用正在生成的密钥对进行SSH(Putty)连接。

我在这里如下的说明参考这里

使用FireSSH和AWS生成的pem以ec2-user身份登录EC2之后,我使用SSH运行以下命令来创建新用户,.ssh目录和权限。

[ec2-user ~]$ sudo adduser newuser

[ec2-user ~]$ sudo su - newuser

[newuser ~]$ mkdir .ssh

[newuser ~]$ touch .ssh/authorized_keys

[newuser ~]$ chmod 600 .ssh/authorized_keys

[newuser ~]$ vim .ssh/authorized_keys

然后,我使用vim公钥粘贴到authorized_keys中。 我将在下一步解释从何处获取公钥。

ssh-rsaAAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuS .... 

要创建我在上一步中粘贴的公共密钥,我按照本参考中的步骤从“生成SSH密钥”开始

我从PuttyKeyGen复制了公共密钥,该公共密钥显示在标有“用于粘贴到OpenSSHauthorized_keys的公共密钥”框中的框中。 然后,将其粘贴到newuser目录中EC2实例上的.ssh/authorized_keys文件中。

我注销了EC2上的SSH客户端。 然后,我尝试使用Windows计算机上新创建的私钥用Putty登录。 我使用newuser登录名。 我在Putty中收到此错误: server refused our key 还有一个对话框,显示已Disconnected: No supported authentication methods available {server sent: publickey)

我在这些步骤中做错了什么?

我做了两件事,现在可以了。 可能是使它起作用的位数。

我使用PuttyGen生成了一个新的密钥对,但是我指定了1024位的SSH-2 RSA ,而不是PuttyGen放入的默认2048

当我使用SSH重新登录EC2时,我使用nano而不是vim粘贴了公钥。

始终使用ec2-import-keypair功能来验证对于EC2实例是否良好。 如果导入成功,那就很好了,否则,请重新生成合规性密钥对。 如果仅复制不符合要求的密钥对,则会遇到麻烦。

这是导入密钥对的文档

  • OpenSSH公钥格式(格式为〜/ .ssh / authorized_keys)
  • Base64编码的DER格式SSH公钥文件格式,如
  • 不支持 RFC4716 DSA密钥。 确保将密钥生成器设置为创建RSA密钥。

  • 支持的长度: 1024、2048和4096

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM