分类:运营维护

未分类, 运营维护

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

Taylor Swift

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

Read more No Comments
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服务器进行操作。 如果直接执行 mysql/mysqldump -u root -p 则会提示输入该用户的密码。 想一想,如果执行该命令的是cron等非交互式的程序,那到这一步就无法继续。 有人会在-p后接上密码,这是非常不安全的一种做法,万一有用户这时执行ps aux,你的密码就暴露了…… 其实,MySQL官方文档有说明,可以在~/.my.cnf处指定用户的密码。 .my.cnf的格式如下: [client] password=”MySQL密码” user=MySQL用户名 上面 […]

Read more 12 Comments
服务器, 运营维护

Linux下简单实现单用户资源限制思路

Linux是一个多用户&任务系统。如何防止某些用户占用服务器大量资源,避免影响其他用户的正常使用,是一个永不过时的话题。 很多人采用了国外的Cloudlinux,不过几十元一个月的授权费对于我这样一个学生来说,压力有点大。 前几个星期,我的某个服务器上某个用户被CC了,该用户的HTTPD进程占用了服务器大量资源,最后只能硬重启解决。 从那天开始,如何免费实现限制单用户的资源成为了我的一个迫不及待要解决的问题。 一:获取用户进程以及资源使用信息 Linux下能查看各用户的进程以及资源占用情况的命令有ps和top。其中top是交互式的,不太适合文本处理,因此要选用ps。 ps常用的参数有以 […]

Read more 2 Comments
服务器, 未分类, 运营维护

一个高频率的HTTP服务监控Shell Script

Nginx/Apache之类的长期运行,无法保证在遇到各种突发情况进程不会死掉。如果这时候又出门在外,一时间无法操作,那网站岂不是要宕机数个小时? 明显我无法接受这事情。于是一个简简单单的监控HTTP服务的Shell Script就出来了。 #!/bin/bash #函数restart restart() { #重启Nginx service nginx restart #重启Apache service httpd restart } #循环的开始 while [ “$loop” = “” ] do #延迟五秒 sleep 5 #是否能下载,是则进入下一步循环,否则执行restart wge […]

Read more 4 Comments
服务器, 未分类, 运营维护

Apache:只有访客IP的日志格式

前一篇文章:Nginx日志配合iptables自动封禁IP,提供了一个nginx只有访客IP的日志格式。 这里也顺便提供一个Apache的只有访客IP的日志格式: LogFormat “%a” iponly 把上面的一行代码放到apache的配置文件中去。 然后到站点配置文件中添加: CustomLog ${APACHE_LOG_DIR}/iponly.log iponly ${APACHE_LOG_DIR}改成存放日志的路径。 配合前一篇文章的Shell Script,即可实现防CC。

Read more 3 Comments
服务器, 未分类, 运营维护

巧用Nginx的日志功能配合IPTABLES实现防范基础CC攻击(2013年11月24日8:24:13更新)

Log File

相信不少人都被CC过,我也不例外,因此一直以来想尽各种办法降低PHP所占的资源。 PHP所耗的资源算压下去了,带宽却满了…… 之前也看过有人使用Nginx的第三方模块limit req2实现防CC攻击,自己也弄过,但效果没想象中的好,只用了几十分钟我就抛弃了…… 昨天其中考试结束后,突然灵机一动,想到一个新的防CC方法。回家后经过多次调试,几经完善,已经基本能正常使用了。 这其中利用了Nginx的日志功能,还有自己写的一个Shell Script。本文出自微宇宙(http://zhensheng.im),转载者死一户口本。 Apache的请移步这里:Apache:只有访客IP的日志格式 首先给 […]

Read more 14 Comments
服务器, 运营维护

设置ACL增强网站目录安全性

Linux的安全性高是人人皆知的,可以分别设置user,group,other的r/w/x的权限。 但是,对于我这种注重数据安全的人来说,这样简单的权限设置已无法满足我的需求。 就以Nginx+PHP-FPM的环境为例。一般给Nginx和php-fpm fork出来的进程的用户身份不同的。 假如给Nginx的执行身份是用户nginx,而php-fpm的执行身份是php-fpm。 在网站所有文件owner都是php-fpm的情况下,给网站目录的文件的最低权限就是505(user:r_x,group:___,other:r_x)(不能再低了,再低就无法正常访问了)。本文出自微宇宙(http://z […]

Read more 4 Comments
服务器, 运营维护

cPanel/WHM切换PHP执行方式为APACHE2HANDLER(dso)并为Apache2添加mpm-itk模块

apache2handler

今天安装了cPanel/WHM 11.38.2(下文简称cp),用了后,我只能说,cPanel管理员后台的功能真的不是一般的强大,简直是把DirectAdmin甩到十万九千七亿千米去了。 但世上没有十全十美的东西,不出我的预料,cPanel使用的是suPHP,PHP执行方式是FastCGI。 前面文章我曾经提到过suPHP的缺点,这里就不再重复。 既然APACHE2HANDLER(下文简称A2R)模式的安全性,性能等多方面都比FastCGI好,怎能不对cPanel进行改造改造呢? 首先,要切换PHP的执行方式。以root身份登录cPanel的后台,在“Service Configuration […]

Read more 4 Comments