如何从我的 Mac 连接到新的 Amazon Lightsail 实例?
Posted
技术标签:
【中文标题】如何从我的 Mac 连接到新的 Amazon Lightsail 实例?【英文标题】:How do I connect to a new Amazon Lightsail instance from my Mac? 【发布时间】:2018-02-12 05:03:54 【问题描述】:我在 Amazon Lightsail 上创建了一个新的 NodeJS 实例,并希望从我的 Mac 命令行连接到它。当连接命令显示Permission denied (publickey)
时,不确定如何在连接命令中包含所需的 SSH 密钥。
【问题讨论】:
【参考方案1】:-
转到您的 Lightsail 帐户页面下的“SSH 密钥”选项卡
选择您所在地区下的默认选项并下载密钥对文件
将是一个 .pem 文件,例如。
LightsailDefaultPrivateKey-us-west-2.pem
打开终端并导航到存储上述文件的目录
在命令行运行chmod 600 [fileName]
,限制文件权限,只有你可以阅读
运行 ssh -i [fileName] [username]@[Public IP]
以建立到 Lightsail 的连接
您的资源的 Lightsail Web 仪表板的“连接”选项卡下提供了用户名和 IP
【讨论】:
见上面@aleem-isiaka 的回答【参考方案2】:使用您现有的 ~/.ssh/id_rsa.pub
使用浏览器客户端登录服务器 做nano ~/.ssh/authorized_keys
使用xclip -sel clip < ~/.ssh/id_rsa.pub
获取您的本地公钥
将 ~/.ssh/authorized_keys
附加到复制的密钥
重启实例
使用ssh ubuntu@[instance_public_ip]
在本地登录
【讨论】:
这个很准确,但是为了正确追加,你应该不打开authorized_keys
文件,你可以试试echo my_rsa_pub_string >> authorized_keys
,也不需要重启实例,这对我来说是缺失的部分,现在它像魅力一样连接起来,谢谢。
这对我有用。现在我只需要弄清楚我的实例密码【参考方案3】:
我花了几个小时弄清楚如何添加一个额外的密钥来登录我的 Wordpress/Bitnami Lightsail 实例。
虽然通过在 [https://lightsail.aws.amazon.com/ls/webapp/account/keys][1] 中添加新的密钥对,我可以直接访问我的实例,但事实并非如此。尝试通过 SSH/SFTP 连接时,我总是收到“Permission denied (publickey)”。
如何解决?
您应该将您的公钥直接添加到您的 Lightsail 实例中:
首先通过您的 Lightsail 控制台连接到您的实例。链接应如下所示:https://lightsail.aws.amazon.com/ls/remote/yourzone/instances/instancename/terminal?protocol=ssh
nano ~/.ssh/authorized_keys
它应该看起来像:
ssh-rsa AFGGS#%NzaC1yc2EFDSGgpCvpVhFyRSpfsdfjhgasdDSduD$
这意味着只允许一个 key par 通过 SSH/SFTP 连接到您的 Lightsail 实例 (voilà!)。
您应该将新的公钥添加到该文件中:
(YOUR PREVIOUS KEY)ssh-rsa AFGGS#%NzaC1yc2EFDSGgpCvpVhFyRSpfsdfjhgasdDSduD$
(ADD NEW PUBLIC KEY) ssh-rsa ASJKAKKFS#%ASDFbsdjfhJHGJvpVhFyRSpfsdfjhgasdDSduD$
重新启动服务器并从本地终端登录:
ssh bitnami@yourpublicip -i /Users/youruser/.ssh/yourkeyfile
有了这个,我还可以在 Filezilla (Mac) 中通过 SFTP 登录,在站点管理器中添加私钥。
【讨论】:
【参考方案4】:为了能够连接到您的 amazon lightsail 实例,您需要先下载密钥。
转到帐户 > SSH 密钥 ( https://lightsail.aws.amazon.com/ls/webapp/account/keys) > 下载 (确保您为安装实例的同一区域下载密钥。)
将其保存在本地计算机的文件夹中。例如-“桌面>键”
打开终端并导航到存储密钥的目录(cd desktop/keys
)
在终端输入此命令:chmod 600 keyfilename.pem
(将密钥文件名称替换为您的实际密钥名称,例如 chmod 600 LightsailDefaultKey-eu-west-2.pem
)
要求您的私钥文件不能被其他人访问。 这就是为什么我们必须更改文件权限
-
运行此命令
ssh -i keyfilename.pem username@ip
将 keyfilename.pem 替换为您的实际文件名,将 username 替换为您的用户名(例如 bitnami 或用户),并将 IP 替换为实际 IP
您可以在您的实例页面上找到您的 IP 和用户名(https://lightsail.aws.amazon.com/ls/webapp/home/instances > 选择实例> 管理)
【讨论】:
以上是关于如何从我的 Mac 连接到新的 Amazon Lightsail 实例?的主要内容,如果未能解决你的问题,请参考以下文章
如何从我的 springboot 应用程序的 Docker 映像连接到 Amazon RDS 实例?
在 mac 上通过 ssh 连接到 amazon aws linux 服务器
使用 curl 连接到 Amazon Selling Partner API