CentOS下php-fpm使用chroot模式运行

由于PHP本身或者代码的问题,可能导致网站被入侵,在黑客入侵网站后,他关注不只是你的网站本身,还有网站所在的服务器。

为了防止系统因为PHP方面漏洞而被入侵,通过chroot方式来运行php进程是一个比较不错的方法,下面介绍下如果配置。

创建/etc/php-fpm.d/chroot.conf,内容如下:

[chroot]
listen = 127.0.0.1:9001
user = apache
group = apache
pm = dynamic
pm.max_children = 20
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 10
pm.max_requests = 100
request_terminate_timeout = 120
request_slowlog_timeout = 2
slowlog = /var/log/php-fpm/chroot-slow.log
chroot = /www
php_admin_value[error_log] = /var/log/php-fpm/chroot-error.log
php_admin_flag[log_errors] = on
php_value[session.save_path]    = /var/lib/php/session

以上是参考配置,进程启动的一些参数可以根据实际需要灵活配置。


然后执行以下脚本,创建chroot环境所需的目录和文件。

#!/bin/bash

mkdir /www
mkdir /www/etc
cp -a /etc/hosts /www/etc/
cp -a /etc/resolv.conf /www/etc/

mkdir /www/tmp
chmod 777 /www/tmp
chmod o+t /www/tmp

mkdir /www/lib64
cp -a /lib64/libnss_dns* /www/lib64/

mkdir -p /www/usr/lib64
cp -a /usr/lib64/libsoftokn3.so /www/usr/lib64/

mkdir -p /www/usr/share/zoneinfo/Asia/
cp -a /usr/share/zoneinfo/Asia/Shanghai /www/usr/share/zoneinfo/Asia/

mkdir -p /www/var/lib/php/session/
chown apache.apache /www/var/lib/php/session/

mkdir -p /www/var/log/php-fpm/
chown apache.root /www/var/log/php-fpm/
chmod 770 /www/var/log/php-fpm/


最后修改php.ini,将默认时区设置为Asia/Shanghai


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值