我获得了EC2机器的一些登录信息,基本上是ec2-X-X-X.compute-X.amazonaws.com以及用户名和密码。
如何访问本机?我试过sshing:
ssh username@ec2-X-X-X.compute-X.amazonaws.com
但输入密码时我得到Permission denied, please try again.
。 sshing正确的方式来访问EC2机器? (谷歌点击我发现建议您可以插入机器,但他们也使用了密钥对。)或者更有可能的问题是我获得了无效的登录凭据?
答案 0 :(得分:7)
我们的Amazon AMI称“请以ec2用户身份而非root用户身份登录。”,因此看起来每个图片可能有不同的登录用户,例如
ssh -i ~/.ssh/mykey.pem ec2-user@ec2-NN-NNN-NN-NN.us-foo-N.compute.amazonaws.com
简而言之,尝试root,它会告诉你应该登录哪个用户。
[编辑]我假设您没有该帐户的AWS管理控制台凭据,但如果您这样做,则可以导航到AWS管理控制台的EC2-> Instances面板,右键单击机器名称并选择“连接...”将显示可用于登录的选项列表。您将(或应该)需要一个密钥来通过ssh访问实例。你应该得到这个或者它可能需要生成。
如果是Windows实例,您可能需要使用远程桌面连接来使用IP或主机名进行连接,然后您还需要Windows帐户登录名和密码。
答案 1 :(得分:1)
在this video中逐步介绍通过SSH连接到AWS EC2 Linux实例的过程(包括下面提到的几点)。
要通过SSH连接到您的EC2实例来解决此特定问题:
您运行的ssh命令格式不正确。它应该是:
ssh -i /path/my-key-pair.pem ec2-user@ec2-198-51-100-1.compute-1.amazonaws.com
注意,您需要访问上述命令中使用的私钥(.pem)文件。首次启动实例时,AWS会提示您下载此文件。您需要运行以下命令以确保只有您的root用户具有对它的读访问权:
chmod 400 /path/to/yourKeyFile.pem
根据您的Linux发行版,运行ssh时需要指定的用户可能是以下之一:
您需要启用入站SSH防火墙。这可以在AWS的“安全组”部分下完成。有关此作品的完整详细信息,请参见here。
答案 2 :(得分:0)
事实上,EC2(Amazon Elastic Compute Cloud)默认情况下不允许对其实例(Linux机器)进行密码验证。
唯一允许的身份验证方法是使用在创建实例时创建的SSH密钥。在创建过程中,它们允许您只下载一次SSH密钥,因此如果您松开它,则必须重新生成它。
此SSH密钥仅适用于主要用户 - 通常名为
ec2-user
" (Amazon Linux,Red Hat Linux,SUSE Linux)root
" (Red Hat Linux,SUSE Linux)ubuntu
" (Ubuntu Linux发行版)fedora
" (Fedora Linux发行版)或类似(取决于分布)
请参阅连接说明:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstances.html
如果要添加新用户,建议的方法是为新用户生成并添加新的SSH密钥,但不指定密码(由于默认情况下未启用密码身份验证,因此无论如何都无用)。 / p>
管理其他用户:http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/managing-users.html
毕竟,如果您想启用密码身份验证,这会降低安全性并且不建议使用,但您仍可能出于特定原因需要执行此操作,那么只需编辑
/etc/ssh/sshd_config
例如: sudo vim / etc / ssh / sshd_config
找到说:
的行PasswordAuthentication no
并将其更改为
PasswordAuthentication yes
然后重启实例
sudo restart
重新启动后,您可以使用密码身份验证创建其他用户。
sudo useradd newuser
sudo passwd newuser
将新用户添加到sudoers列表中:
sudo usermod -a -G sudo newuser
确保用户主文件夹存在并由用户拥有
sudo mkdir /home/newuser
sudo chown newuser:newuser /home/newuser
新的,您已准备好尝试通过ssh使用newuser
登录。
使用ssh密钥进行身份验证将继续与密码身份验证同时工作。
答案 3 :(得分:0)
为此,您需要拥有一个私钥,就像keyname.pem。
使用ctrl + alt + t打开终端。
使用命令chmod 400 keyname.pem或chmod 600 keyname.pem将文件权限更改为400或600
打开安全组中的端口22。
在终端ssh -i keyname.pem username@ec2-X-X-X.compute-X.amazonaws.com上触发命令