为 chrooted jail(jailkit)设置 PHP/MYSQL

为 chrooted jail(jailkit)设置 PHP/MYSQL

我正在运行 Ubuntu,使用 PHP5-FPM、mysql 和 Nginx

我刚刚用 jailkit 设置了一个 chrooted jail。现在我需要弄清楚如何设置我的 php 和 mysql 以在 jail 中工作。

Google 搜索没有给我太多信息,jailkit 网站上也没有这方面的文档。(这可能很容易,但我对这个领域还很陌生)

答案1

这里有一个示例配置部分,您可以将其放入其中,/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

似乎运行良好,您可能需要更改一些路径。jailkit 可以自行解析符号链接路径,但我为了以防万一还是把两者都添加了。

两个警告

1)用户必须使用完整的mysql -h语法(mysql -h basehostname database),因为jail中没有mysql本地套接字

2)您的mysql必须监听公共接口,以便jail可以连接到它。

答案2

无论如何都明白了!

只需找出 php 和 mysql 二进制文件所在的位置(/user/bin 或 /user/sbin)并将它们复制到相对 chroot 目录即可。然后,当您php从 chroot 用户运行命令时,您将收到一条错误消息,提示such and such a libary is missing您只需要找到该库并将其复制到相对 chroot 目录中,并继续执行此操作,直到所有依赖库都已复制完毕。

相关内容