限制读取权限和文件获取内容


Restrictive read permissions and file get contents

我使用PHPSecLib与此代码:

ssh = new Net_SSH2('my-ec2-dns');
$key = new Crypt_RSA();
$key->loadKey(file_get_contents('my-ec2-private-key'));

只有我可以使用电脑和服务器。

我得到一个权限拒绝file_get_contents,因为ec2实例需要400权限的私钥。

我如何解决这个问题,以便我可以SSH到我的服务器在PHP环境?

实现这一目标的唯一方法就是以某种方式绕过安全措施。

可能的解决方案:

  • 将您的私钥复制到具有更宽松权限的另一个文件(640)。
  • 在组中添加运行web服务器的用户,以便它可以访问文件
  • 确保web服务器没有以任何方式chroot,所以它可以到达你的文件或添加一个符号链接(需要+FollowSymlink)