我正在运行Ubuntu,PHP5-FPM,MySQL和Nginx
我刚刚用jailkit安装了一个chroot监狱。 现在我需要解决如何设置我的PHP和MySQL在监狱工作。
谷歌search没有给我太多,jailkit网站没有这方面的文件。 (这可能很简单,但我对这个领域还是比较陌生的)
这里是一个示例configuration部分,你可以把它放在/etc/jailkit/jk_init.ini这样未来的监狱增加是无缝的。
我使用这个部分
[mysql-client] comment = mysql client executables = /usr/bin/mysql paths = /usr/lib/libmysqlclient.so.16.0.0 , /usr/lib/libmysqlclient.so.16, /usr/lib/libstdc++.so.6,/usr/lib/libstdc++.so.6.0.13,/lib/libgcc_s.so.1
看起来工作得很好,你可能需要改变一些path。 jailkit可以自己解决符号链接path,但我添加了两种情况。
两个警告
1)用户必须使用完整的mysql -h语法(mysql -h basehostname数据库),因为您在监狱中没有mysql本地套接字
2)你的mysql必须在公共接口上监听,所以jail可以连接到它。
无论如何想出来!
只要找出php&mysql二进制文件所在的位置(/ user / bin或/ user / sbin)并将它们复制到相对的chroot目录即可。 然后,当你从chroot用户运行php命令时,你会得到一个错误,说such and such a libary is missing所以你只需要findlibaray并将其复制到相对的chroot目录,并继续下去,直到所有相关的库已被复制。