Ssh 尝试访问EC2实例时超时的可能原因
我无法SSH到我的实例中-操作超时。原因可能是什么?我能做些什么来解决它?重启通常需要很长时间才能生效,而且可能只会让事情变得更糟Ssh 尝试访问EC2实例时超时的可能原因,ssh,amazon-ec2,amazon-web-services,Ssh,Amazon Ec2,Amazon Web Services,我无法SSH到我的实例中-操作超时。原因可能是什么?我能做些什么来解决它?重启通常需要很长时间才能生效,而且可能只会让事情变得更糟 更新:这与权限无关-我可以正常登录。我怀疑这可能是因为内存问题您是否为实例设置了适当的安全组?即,允许从您的网络访问实例上的端口22。(默认情况下,不允许所有流量。) 更新:好的,不是安全组问题。但是,如果您从同一个AMI启动另一个实例并尝试访问该实例,问题是否仍然存在?也许这个特定的EC2实例只是随机地以某种方式失败了——发生类似的事情只是时间问题。(推荐阅读:(
更新:这与权限无关-我可以正常登录。我怀疑这可能是因为内存问题您是否为实例设置了适当的安全组?即,允许从您的网络访问实例上的端口22。(默认情况下,不允许所有流量。)
更新:好的,不是安全组问题。但是,如果您从同一个AMI启动另一个实例并尝试访问该实例,问题是否仍然存在?也许这个特定的EC2实例只是随机地以某种方式失败了——发生类似的事情只是时间问题。(推荐阅读:(PDF),亚马逊网络服务传道者Jinesh Varia的一篇文章。请特别参阅标题为“设计失败,一切都不会失败”的部分。您看过该实例的控制台输出了吗?您可以通过(实例->右键单击实例->获取系统日志)执行此操作。我曾经遇到过EC2实例上的网络服务无法正确启动的情况,导致SSH连接超时;重新启动实例通常会解决问题。还有一种可能性。AWS安全组设置为仅与特定的传入ip地址一起工作。如果您的安全组是以这种方式设置的,您(或帐户持有人)需要将您的ip地址添加到安全组中。为此,请打开AWS仪表板,选择安全组,选择安全组,然后单击入站选项卡。然后根据需要添加您的ip。我也遇到了同样的问题,解决方案是添加我的ip 本地计算机的IP到活动安全性中的入站规则列表 小组。在下面的入站对话框中,在端口范围中输入22,在源字段中输入/32,并在下拉列表中保留“自定义tcp规则”
我也遇到了同样的问题,解决方案是允许从任何地方访问活动安全组中的入站规则列表。在入站对话框中,在端口范围中输入22,在源字段中的任意位置输入22,然后在下拉列表中选择“ssh”
注意:这可能不是推荐的解决方案,因为这意味着可以从任何机器上通过ssh连接此实例,但我无法使其与我的本地IP一起工作。以下是可能的问题:
- 最有可能的情况是,安全组未正确配置,无法在端口22上向您的i.p.提供SSH访问。安全设置的更改不需要重新启动服务器即可生效,但需要等待几分钟才能生效
- 本地防火墙配置不允许SSH访问服务器。(您可以尝试不同的internet连接,您的手机/加密狗也可以尝试)
- 服务器未正确启动(即使在amazon控制台上,访问检查也会失败),在这种情况下,您需要停止并启动服务器
- 创建专有网络
CIDR:10.0.0.0/24
- 创建Internet网关
- 将Internet网关连接到VPC
- 创建路由表
- 将路由添加到路由表
目的地:0.0.0.0/0
目标:
- 创建子网
CIDR:10.0.0.0/24
路由表:要连接,请像这样使用ssh:
其中,ssh -i keyname.pem username@xxx.xx.xxx.xx
是私钥的名称,keyname.pem
是操作系统发行版的正确用户名,username
是公共ip地址 当超时或出现故障时,请检查以下各项: 安全组 确保为tcp端口22和所有ip或您的ip设置入站规则。您可以通过ec2菜单在实例选项中找到安全组 路由表 对于专有网络中的新子网,您需要更改为指向internet网关目标的路由表0.0.0.0/0。在vpc中创建子网时,默认情况下,它会分配默认路由表,该表可能不接受来自internet的传入流量。您可以编辑vpc菜单中的路由表选项,然后编辑子网 弹性IP 对于vpc中的实例,需要分配一个公共弹性ip地址,并将其与实例关联。无法从外部访问专用ip地址。您可以在ec2菜单(而不是实例菜单)中获得弹性ip 用户名 确保您使用的用户名正确。它应该是xxx.xx.xxx
或ec2用户
或root
中的一个。如果需要的话,试一下所有的 私钥ubuntu
确保使用的是正确的私钥(启动实例时下载或选择的私钥)。看起来很明显,但复制粘贴让我两次 这个答案是为愚蠢的人(比如我)准备的。EC2的公共DNS可能(将)在重新启动时更改。如果您没有意识到这一点,并尝试通过SSH连接到旧的公共DNS,则连接将暂停并超时。这可能会导致您认为您的EC2或安全组或。。。不,只是SSH到新的DNS。如果有必要,请更新您的
文件 当我使用没有密码的公共Wifi时,我也遇到了类似的问题。将internet连接切换到安全连接确实解决了问题。如果您的EC2实例无法使用SSH访问,则需要~/.ssh/config
++++++++++++++++++++++++++++++++++++++Net device info+++++++++++++++++++++++++++++++++++++++ +--------+------+------------------------------+---------------+-------+-------------------+ | Device | Up | Address | Mask | Scope | Hw-Address | +--------+------+------------------------------+---------------+-------+-------------------+ | lo | True | 127.0.0.1 | 255.0.0.0 | . | . | | eth0 | True | 172.30.2.226 | 255.255.255.0 | . | 0a:70:f3:2f:82:23 | +--------+------+------------------------------+---------------+-------+-------------------+ ++++++++++++++++++++++++++++Route IPv4 info+++++++++++++++++++++++++++++ +-------+-------------+------------+---------------+-----------+-------+ | Route | Destination | Gateway | Genmask | Interface | Flags | +-------+-------------+------------+---------------+-----------+-------+ | 0 | 0.0.0.0 | 172.30.2.1 | 0.0.0.0 | eth0 | UG | | 1 | 10.0.3.0 | 0.0.0.0 | 255.255.255.0 | lxcbr0 | U | | 2 | 172.30.2.0 | 0.0.0.0 | 255.255.255.0 | eth0 | U | +-------+-------------+------------+---------------+-----------+-------+
sudo ufw allow ssh sudo ufw allow 22 sudo ufw enable sudo ufw status