2013-06-04 100 views
2

我试图通过连接到亚马逊EC2:SSH连接到Amazon EC2不工作

ssh -i ~/.ssh/YOUR_KEYPAIR_FILE.pem [email protected]_IP_ADDRESS 

终端需要1或2分钟,然后打印:

ssh: connect to host XXX port 22: Operation timed out 

任何想法?

+1

尝试添加'-vvv'诊断输出 – demure

+0

用'-vvv'会给你更多的信息连接。同时检查您的安全组设置,查看端口22是否对您的位置开放。 – datasage

回答

1

您需要在安全组中打开端口22。所有端口默认关闭。

1

你可以尝试改变权限YOUR_KEYPAIR_FILE.pem这样 搭配chmod 600 YOUR_KEYPAIR_FILE.pem

然后射击命令 SSH -i YOUR_KEYPAIR_FILE.pem EC2用户@ YOUR_IP_ADDRESS

3
  • 转到您的Amazon Web Services帐户

  • 转至实例部分

  • 然后点击你的EC2实例
  • 降低入站选项卡上的底部点击相关联的安全组,然后单击编辑

  • ***创建此规则

  • TYPE SSH
  • 协议TCP
  • 端口范围22
  • 源代码任意***

您现在应该可以通过ssh使用密钥连接到端口22上的实例。

0

我有类似的问题。我一直从ec2实例一路查看我的所有网络,通过VPC和互联网。安全组通过端口22和80允许所有来源。我的NACL允许正确的权限。我知道AWS一切正常,但每次我尝试ssh到一个实例,我仍然会得到一个操作超时,表明问题必须与我的本地计算机相反。

首先检查SSH端口是开放的,我跑了以下内容:

ssh localhost 

这工作得很好!

后来在网上做了一些研究,最后都归结为java和我的终端没有意识到我的机器上安装了java。

支持性文件: AWS Documentation

No Java means that your .pem will not be recognised

开始通过运行follwing:

java -version

如果你没有命中,然后安装相关的Java SDK为您的操作系统和安装后运行

which java

你应该得到这样的事情:

/usr/bin/java

现在,我们可以尝试重新连接到一个实例,希望你应该有成功的这个时候!

ssh -v -i ~/Downloads/labamikey.pem [email protected] 

    __| __|_ ) 
    _| ( / Amazon Linux AMI 
    ___|\___|___| 

[[email protected] ~]$