Category: 运营维护

Unix Like, 操作系统, 服务器, 网络, 运营维护

Nginx ssl_preread传递客户端IP

ssl_preread是基于L4的反代方案,TLS SNI握手时客户端会提供域名,所以可以让Nginx在无需完成TLS握手的情况下,就根据域名进行后端服务器的选择。简单来讲,你只需要给后端服务器配置一个SSL证书,而提供反代功能的Nginx则无需配置。文档见此:http://nginx.org/en/docs/stream/ngx_stream_ssl_preread_module.html 因为这是L4反代,所以通过“proxy_set_header”传递客户端IP的方法是行不通的。其实传递客户端IP的解决办法跟上一篇文章类似:L4(传输层)IP透明反向代理的实现(传递客户端真实IP),ng […]

Read more
未分类, 运营维护

『T.S. 89』两个晚来的提高大麦网购票成功率的方法

Taylor Swift

大家可以看到,那个小亮点数目最多的,最亮的省,是广东省,尤其是珠三角地区! 所以在此提出一个猜测: 在大麦网购票失败的人当中,在广东省购票的人占的比例最大。 也许你会说广东省人多,那购票的人当中,广东省的人所占的比例自然就多,购票失败的广东人占购票失败的人的比例也会多,但你有没有想过为什么呢? 对于大麦网这种网站,要同时应付N多人访问,且保证速度,服务器仅有一台,或仅在一个地区,是不可能的,服务器是分布式的,才能为如此多的访客提供服务(证据:http://www.17ce.com/site/http/201507_a97522b8b50b05c4f2e18c9e579cf1ee.html)。使 […]

Read more
Unix Like, 操作系统, 服务器, 未分类, 运营维护

让cPanel/WHM的Apache使用PHP FPM

雅黑PHP探针

因为FasiCGI,CGI模式下均有少许问题,所以一直以来都给Apache使用mod_php方式执行PHP。 但此模式的资源占用可要给差评了,在网站访问量大的时候,特别是被CC的时候,FORK出的大量Apache进程经常会变成“僵尸”进程,无法正常退出,即使访问量恢复正常,攻击已结束,那些“僵尸”进程一样占用着你的资源,有时攻击猛烈些,直接整个系统宕掉,非硬重启无法救活。纵使有些人会使用如CloudLinux,BetterLinux之类的限制单用户的进程,但还是会有以Apache默认的执行身份fork出的进程…… 为了给虚拟主机带来更稳定,更安全的使用环境,必须更换PHP执行方式! 经过测试与 […]

Read more 3 Comments
Unix Like, 操作系统, 服务器, 运营维护

Nginx与PHP FPM环境下的权限分配与防跨站

相信不少数的网站管理员使用Nginx,并配合PHP FPM运行PHP程序。 之前写过一篇文章,讲述了如何使用ACL权限增强Nginx与PHP FPM环境的安全性,这方法步骤有点麻烦,而且OpenVZ下从物理服务器处挂载为ACL,使用过程中也存在一些问题。 先来讲述一下Nginx与PHP FPM环境下的问题: 服务器上有多个站点,为了安全,我会给每个站点的PHP分配不同的用户身份,因此PHP的执行身份会与Nginx的用户身份不同。 扩展名非.php的文件,会由Nginx去处理,扩展名为.php的文件,Nginx会交给FPM处理,因此Nginx与FPM都需要对文件有read的权限,由于Linux下 […]

Read more 1 Comment
服务器, 未分类, 运营维护

利用.my.cnf,安全实现Shell下MySQL免输入密码登录

Defaults file

MySQL,相信大家都不陌生,平时也可能会在Linux服务器上使用mysql,mysqldump等登录到MySQL服务器进行操作。 如果直接执行

则会提示输入该用户的密码。 想一想,如果执行该命令的是cron等非交互式的程序,那到这一步就无法继续。 有人会在-p后接上密码,这是非常不安全的一种做法,万一有用户这时执行ps aux,你的密码就暴露了…… 其实,MySQL官方文档有说明,可以在~/.my.cnf处指定用户的密码。 .my.cnf的格式如下:

上面的us […]

Read more 12 Comments