nginx安全配置之白名单设置

网站安全,防不胜防

你永远不知道黑客利用什么漏洞对你的网站进行攻击,最常见的手段是利用漏洞在你的网站留个后门,喜欢的时候来逛逛,比如玩你的服务器上传一个x.php,直接访问:

1
http://www.example.com/a/b/c/d/a.php

然后就可以为所欲为了,那么有没有办法让黑客即使利用漏洞上传了php代码而没办法运行呢?答案是肯定的。

思路是从运行php的php-fpm着手,在nginx上做配置,客官请看配置。

利用反向代理批量实现https协议访问

最近有一个项目需求,需要为站点增加https访问。

开始只配置了www域名下的https,发现css和js都无法正常加载,原因是https页面,如果加载http协议的内容,会被认为页面不安全,尤其是IE,刷新一下页面就要弹出一次确认,相当烦人。

后来苦逼的把各个子域名都加入了https配置,nginx.conf里写各个子域名都写了一个443的server配置,每新增一个域名,还得copy一份,如果是修改一下站点的配置,还得改两次以上。

内网机器的获取公网IP的方法

1
2
3
4
5
6
7
function getClientIp(){  
$socket = socket_create(AF_INET, SOCK_STREAM, 6);
$ret = socket_connect($socket,'ns1.dnspod.net',6666);
$buf = socket_read($socket, 16);
socket_close($socket);
return $buf;
}

缺点:依赖第三方,效率与网络状况有关。

Linux下测试硬盘读写速度

time有计时作用
dd用于复制,从if读出,写到of
if=/dev/zero不产生IO,因此可以用来测试纯写速度。
同理of=/dev/null不产生IO,可以用来测试纯读速度。
bs是每次读或写的大小,即一个块的大小,count是读写块的数量。