【发布时间】:2018-05-28 00:15:59
【问题描述】:
当我运行pm2 deploy development setup 时,我收到以下错误。这很奇怪,因为这个密钥没有设置密码。
Enter passphrase for key '/Users/spongebob/.ssh/dev.pub':
Permission denied (publickey,keyboard-interactive).
setup paths failed
Deploy failed
我创建了一个没有密码的密钥对,并将其传输到我的开发机器,如下所示:
ssh-copy-id -i ~/.ssh/virtualbox_dev -o "IdentityFile /Users/spongebob/.ssh/dev" -f dev@192.168.0.17
不用密码我也可以正常登录SSH:
ssh -o 'IdentityFile /Users/spongebob/.ssh/dev' 'dev@192.168.0.17'
Last login: Sun May 27 12:39:57 2018 from 192.168.0.11
我已将此密钥作为部署密钥添加到 Github,因为这是一个私有存储库(并且还添加了 virtualbox_dev 密钥以防万一)。并测试了它是否有效...
Hi MyUsername/blue-mask-api! You've successfully authenticated, but GitHub does not provideshell access.
这是我的部署配置(我在package.json 中有这个):
"deploy": {
"development": {
"key": "/Users/spongebob/.ssh/dev.pub",
"user": "dev",
"host": "192.168.0.17",
"ref": "origin/master",
"path": "/home/dev/",
"repo": "git@github.com:MyUsername/blue-mask-api.git",
"post-deploy": "echo 999999999999",
"ssh_options": [
"StrictHostKeyChecking=no",
"PasswordAuthentication=no"
]
}
这很令人困惑,因为它要求输入密码并且没有一组。当我把它留空时,我仍然会被拒绝。
【问题讨论】:
-
您的
PasswordAuthentication值在您的框中的/etc/ssh/sshd_config中说明了什么? -
我已将其设置为否:
PasswordAuthentication no -
PM2doc 是怎么说的?如果没有,您是否尝试过翻转它? -
我不想要密码。 PM2 文档建议关闭密码。我已经做到了。你用过 pm2 还是熟悉它?
-
我确实使用 PM2 但不用于部署。我试图查看问题是否与 PM2 无关,而只是通用的
permission denied错误,因为当我遇到该错误时,我通过打开PasswordAuthentication来修复它
标签: node.js git github ssh pm2