不能ssh到亚马逊EC2实例,这似乎是非常常见的问题,但我已经尝试了所有可用文档中建议的一切,其他任何人都知道从下面缺少什么?
-
创建了新的EC2实例并下载了
.pem
文件 -
在EC2实例中创建了新的入站规则安全组允许我的本地IP
-
在EC2实例网络ACL中创建了一个新的入站规则,以允许我的本地IP
-
在EC2实例网络ACL中创建了一个新的出站规则以访问我的本地IP
-
确保VPC路由已连接到Internet网关
-
确保EC2实例已附加到正确的安全组
毕竟当我尝试从我的本地机器ssh我连接超时时,我还有什么我必须做的我也禁用了防火墙并测试了只是因为
ssh -vvv -i key.pem ec2-user@********
OpenSSH_7.1p2, OpenSSL 1.0.1g 7 Apr 2014
debug1: Reading configuration data /etc/ssh_config
debug2: ssh_connect: needpriv 0
debug1: Connecting to ec2-instance [********] port 22.
debug1: connect to address ****** port 22: Connection timed out
ssh: connect to host ******* port 22: Connection timed out
1 回答
超时通常表示没有网络连接 . 这几乎总是与安全组有关 . 它错误立即返回,这意味着实例收到但拒绝连接 . 如果响应需要很长时间,通常意味着请求未到达实例 .
一些建议:
确认已为实例分配 Public IP address
确认 security group 允许您的IP地址的入站端口22(SSH) . 事实上,出于测试目的,暂时允许它只是为了消除问题的一个潜在原因 .
Remove your NACL entries. 默认NACL条目允许所有入站和出站访问 . 您的更改可能会对此产生负面影响 .
确认它是 Linux 实例(默认情况下Windows不支持SSH)
确认实例位于 Public Subnet (具有您到Internet网关的路由的实例)
您的网络可能拒绝连接(例如,由于防火墙规则) . Try using a different computer and/or a different network (例如家庭与办公室)将此作为原因消除 .