jk2K's 窝

休息,是为了更好的前行

哈喽, 我是叶萌(@jk2K), 一名来自中国的 PHP / iOS 开发者


为 apache 运行用户创建 ssh key

解决方案

方案1, 自动

sudo -u apache ssh-keygen -t rsa

方案2, 手动

你必须复制root用户生成的keyapache用户的.ssh文件夹下, 软链接是不行的, 必须复制, 复制, 复制, 重要的事情说三遍

假设apachehomedir/var/www(检查/etc/passwd), root用户生成的私钥(key)是id_rsa-git

mkdir -p /var/www/.ssh/
cp /root/.ssh/id_rsa-git /var/www/.ssh/id_rsa

无需复制公钥(public key)

注意

  • 默认使用的私钥名称是id_rsaid_dsa, 所以你复制过来的私钥名称得是这个
  • apache现在默认的运行用户为daemon, 他的homedir/usr/sbin, 你可能得改成其他目录才能生效, 可以改成home/daemon
chown -R apache:apache /var/www/.ssh
chmod 0700 /var/www/.ssh
chmod 0600 /var/www/.ssh/id_rsa

需求说明

apache 在执行git相关命令时报Could not create directory '/usr/sbin/.ssh'

参考链接

comments powered by Disqus