我正在尝试使用Amazon EC2的经验,但无法连接到服务器。 在Amazon Management Console中创buildPEM文件后,我使用PuttyGen创build私钥。 使用腻子,我试图连接使用新创build的私钥。
但它提示我login为:我进入“根”。 然后它给了我错误“请将EC2login为非root用户的EC2用户”
任何想法哪个用户是错误 – 因为我没有看到在AWSpipe理控制台的任何用户创build页面?
谢谢
“root”帐户已被禁用。 在你之前input“root”的地方,input“ec2-user”,你就进入了。一旦你进入了,如果你需要以root身份运行一个命令,在命令前加上“sudo”。
例如:
sudo nc -l 80
或者以root用户身份获取控制台:
sudo bash
如果您希望能够以root身份login到预构build的Amazon AMI,则需要执行两项操作,这些命令应该以root用户身份运行。
编辑/ etc / ssh / sshd_config文件并将“PermitRootLogin No”行改为“PermitRootLogin without-password”。 然后用'service sshd restart'重新启动sshd客户端。 要小心,如果你搞砸了sshd文件,可能你只有当前的ssh会话来解决它,所以总是用第二个会话来testing任何改变。
编辑/root/.ssh/authorized_keys文件。 第一个(也是唯一的)条目以'command … sleep 10; ssh-rsa [big long key]'。 如果从行首开始删除文本,直到它显示ssh-rsa,您将能够通过SSH与您的Amazon密钥对以root身份login。
只需在您的腻子configuration的数据部分插入ec2用户。
这听起来像是你正在加载你的EC2实例的AMI所特有的。 大多数AMI使用root作为默认的用户设置,但这取决于AMI实例的方式。 在大多数情况下,这只是根目录,它让你创build任何额外的用户。 例如,我在AMI中安装了root用户,并在启动时安装了SSH密钥,然后允许其他用户通过Puppet进行configuration。 如果您使用configuration为禁止rootlogin的SSH构buildAMI,那么您显然需要安装其他用户才能成功login。
我注意到这个问题的解决scheme是在腻子,你把你的长连接名称,如:
ec2-50-11-111-111.compute-1.amazonaws.com
您可以使用
而且这个错误消失了,并且您以@标志前面的任何用户名login