Laravel 5.1 SSH - 无法连接到远程服务器
Posted
技术标签:
【中文标题】Laravel 5.1 SSH - 无法连接到远程服务器【英文标题】:Laravel 5.1 SSH - Unable to connect to remote server 【发布时间】:2017-08-01 05:29:56 【问题描述】:我在这里关注了此链接中的所有内容:
Laravel 5.1 SSH
https://laravelcollective.com/docs/5.1/ssh
注意:
Key
是我通常用来通过 SSH 连接到我的虚拟机的密钥。
Passphrase
也输入正确。
本地环境 = Mac OS X
用户名 = bhengli>
私钥已设置为 0600
-rw------- 1 bheng staff 1766 Mar 10 13:25 id_rsa
公钥已设置为 0600
-rw------- 1 bheng staff 1766 Mar 10 13:25 id_rsa.pub
配置
'connections' => [
'production' => [
'host' => '45.55.88.88',
'username' => 'root',
'password' => '',
'key' => '../id_rsa',
'keytext' => '',
'keyphrase' => '*****',
'agent' => '',
'timeout' => 10,
],
],
我尝试了更多选项:
1.将私钥放在与设置文件相同的目录中
'key' => 'id_rsa',
2。将公钥放在与设置文件相同的目录中
'key' => 'id_rsa.pub',
3.私钥的完整路径
'key' => '/Users/bheng/.ssh/id_rsa',
4.公钥的完整路径
'key' => '/Users/bheng/.ssh/id_rsa.pub',
用法
我尝试运行一个简单的date
命令。
SSH::into('production')->run(['date']);
结果
我一直得到
无法连接到远程服务器
问题
我忘了什么吗? 我的配置看起来还好吗?
如何继续调试呢?
【问题讨论】:
如果你还没有探索过这个途径,请确保你在密钥上设置了正确的权限,并确保运行 Laravel 的用户具有使用该密钥的必要权限. 我在我的 Mac OS 上,以我自己的身份登录,: user : me ,我可以访问密钥。我只是把那个键改成 0600 您可以尝试对它们的关键路径进行硬编码。它可能是从一个意外的目录运行它。 “无法连接到远程服务器”是一个非常模糊的错误。您可能会超时、连接被拒绝或身份验证失败。 @Kenster:增加我的超时设置有帮助吗?我如何知道我是否未能通过身份验证或连接被拒绝?有没有我可以查看的日志文件。 【参考方案1】:很可能,您的私钥不是 PKCS1 格式。尝试创建密钥的副本并进行转换:
cp ~/.ssh/id_rsa ~/.ssh/id_rsa_pkcs1
ssh-keygen -p -m PEM -f ~/.ssh/id_rsa_pkcs1
然后在 Rocketeer 中使用id_rsa_pkcs1
键。
【讨论】:
以上是关于Laravel 5.1 SSH - 无法连接到远程服务器的主要内容,如果未能解决你的问题,请参考以下文章
无法通过 Visual Studio Code 远程 SSH 连接到 GCP VM
Remmina:无法使用 SSH 连接到远程服务器,但我可以从 shell SSH
无法从 PhpStorm 远程连接到 KINSTA 站点的 MySQL