公钥和私钥对用户不正确

时间:2015-07-15 作者:Can Sürmeli

一段时间以来,我一直在犯错误Public and Private keys incorrect for wp-user 当我尝试更新插件时。

我有一个带有灯组的CentOS 7 VPS设置。我已经安装并配置了Wordpress安装,除了无法通过Wordpress控制面板更新插件或上传图像外,其他安装都很好。

我让Wordpress使用SSH访问我的服务器。我跟踪了this tutorial 这样做。基本上,在我的系统中有一个为这个任务创建的特定用户(使Wordpress通过SSH连接),它有SSH密钥。根据教程,各种文件的权限都可以(我已经仔细检查了),但Wordpress不执行该操作。

我还需要什么配置?

其他一些信息:

Wordpress SSH操作的用户有密码,因此可以通过SSH登录,并且特别允许在ssh_config

3 个回复
最合适的回答,由SO网友:Can Sürmeli 整理而成

我解决了!终于在经历了很多令人沮丧的日子之后。

在教程页面的评论中,有人建议删除/评论以下行:

定义(\'FTP\\u PRIKEY\',\'/home/wp user/\');

我这样做了,错误信息立即消失,事情开始更新。

SO网友:Concrete Gannet

我收到了相同的错误消息。

在我的例子中,我创建了带有密码短语的ssh密钥。但是the codex site 表示“建议使用不受密码保护的私钥。有许多报告表明,受密码保护的私钥无法正常工作。”

一旦我重新创建了没有密码短语的密钥,它就工作了。

SO网友:blakek

这是一个古老的话题,但我始终无法找到对我们任何地方都有用的答案。

我们的根本原因是库不能使用OpenSSH RSA密钥。我不知道到底是哪个有问题;我们使用的是Ubuntu 20.04的libssh2和php7包。4-ssh2。自PHP 5天以来,这似乎一直是一个问题,2021仍在继续。

如果您的私有RSA密钥以以下行开头,则可以轻松测试它是否是OpenSSH RSA密钥:

-----BEGIN OPENSSH PRIVATE KEY-----
不幸的是,这是运行时的默认输出ssh-keygen 在许多流行的web服务器上。

如果它从以下内容开始,则假设其他所有内容都已正确设置,它应该可以工作:

-----BEGIN RSA PRIVATE KEY-----
可以通过运行ssh-keygen -m PEM -t rsa. 似乎其他关键类型也起到了作用。

如果您没有使用OpenSSH格式的RSA密钥,我建议您检查系统身份验证日志(例如,/var/log/auth.log). 另外,作为您正在尝试的用户尝试SSH-ing(例如,sudo -u www-data ssh ubuntu@localhost -i ~/.ssh/id_rsa). 这些人提供的任何错误消息都应该比这里遇到的消息更有帮助。

请注意,不正确的文件权限也可能导致此错误消息。我们保留了SFTP用户拥有的所有网站文件,因此web服务器只能通过SFTP写入任何文件。我们将访问密钥设置为root:www-data 所以SSH用户和web服务器都是www-data 小组可以使用这些键。

最后,确保密钥位于授权密钥文件中(~/.ssh/authorized_keys).

祝遇到这件事的人好运!

结束

相关推荐

SSH Upgrade Problem

我总是犯同样的错误,有什么想法吗?我使用生成了一个没有密码的密钥ssh-keygen我将密钥权限设置为600,我已使用成功登录ssh -i /root/.ssh/id_rsa 1**.**.*8.128</我已尝试将主机名更改为localhost 和127.0.0.1服务器正在运行CentOS 5.4。