我需要为Apache用户'nobody‘生成SSH密钥。
我正在尝试让一个PHP脚本执行一些Git命令,以便从BitBucket ( http://brandonsummers.name/blog/2012/02/10/using-bitbucket-for-automated-deployments/ )中提取一个存储库。
然而,我遇到了麻烦,因为PHP脚本通过apache运行,用户似乎是“无名之辈”。因此,它无法通过SSH连接。而如果我通过命令行运行脚本,Apache用户似乎是“root”,并且工作正常。
php脚本需要执行Git并使用SSH访问BitBucket,但是我在服务器上的SSH密钥是给用户“root”的。
如何为非交互式用户创建公钥和私钥?
root@server [~]# lsof -i | grep :http
httpd 16942 nobody 5u IPv4 23590964 0t0 TCP *:http (LISTEN)
httpd 16942 nobody 6u IPv4 23590970 0t0 TCP *:https (LISTEN)
httpd 16944 nobody 5u IPv4 23590964 0t0 TCP *:http (LISTEN)
..... and more发布于 2014-02-13 00:19:15
mkdir /nobody/.ssh
chown nobody -R //nobody/.ssh
chmod 777 /nobody/.ssh
ssh-add /nobody/.ssh/id_rsa
sudo -u nobody ssh-keygen
(when prompted specify save path in /nobody/.ssh)只有当密钥密码短语需要存储在keychain中时,问题才会出现,否则它就会起作用。
https://stackoverflow.com/questions/21609176
复制相似问题