debian,ubuntu一键安装vpn服务器脚本
使用这个脚本可以在ubuntu上快速进行vpn服务器的安装。
wget http://lab.3haku.net/install_vpn_ubuntu.sh; sh install_vpn_ubuntu.sh
手动安装请【参考这里】
安装第一步会询问服务器的外网ip,填写好即可
装好后有个默认账号admin 密码admin
另外如果想高级点,用这个。
wget http://lab.3haku.net/PPTPD.tar ; tar xvf PPTPD.tar ; sh PPTPD/ubuntu.sh
这个还会安装Freeradius。和RAD。可以用web界面去管理vpn账号,还可以限制流量什么的。
php扩展开发(一)
要开发php的扩展,php的源代码是必须的
首先从php官网下载回源代码
http://www.php.net/downloads.php
然后解压出来,进入ext目录下面
使用它附带的工具ext_skel
比如我要创建一个名为xsscheck的插件
./ext_skel --extname=xsscheck
ext目录内就会生成xsscheck文件夹,并会出现怎样使用你的插件的提示
下面依次进行操作
打开xsscheck文件夹内的config.m4文件
把以下部分的注释取消掉
修改完毕后退出
运行phpize(如果没有,请先编译你的php源代码,在bin目录下)
如果发生错误Cannot find[......]
用swig构建php扩展
swig是个将使用c/c++编写的软件与其他编程语言对接的工具
简单的说,它可以把你已经写好的c/c++源代码通过转换变成python,php,java等的扩展
让你可以在这类高级语言中使用底层c++
它支持php,可以编译成php的扩展供我们调用
下面是一段c++函数
#include <stdio.h> #include <stdlib.h> #include <string.h> char *helloworld(); char *helloworld() { char *target = "helloworld"; return target;
}
然后我们试试把它搞成一个php[......]
服务器被入侵记.
今天查看我的一个站点biewang.net,长期没有维护。想试试还能用不
右键看源码无意间发现被挂上了东西。
在页面脚部有大量的垃圾链接。虽然因为页面css的原因屏蔽掉了没有展示出来,但是seo依然会被严重打击下来。
找找原因。
首先想是不是代码有漏洞被利用了。
这个站是用的之前写的框架的。页面输入都严格过滤了。
想了下也没有文件操作的部分会使用户传入恶意的东西吧主页改掉的。
然后想是不是给提权了。于是看了下改主机上的其他几个站。包括这个博客。
没有发现被入侵的迹象。php是用suphp模式运行的。没有殃及其他站也就是说是通过别忘这个站进来的。
还是查查apache的日志。只找这个站最近的记录。
cat /var/log/ht[......]
swfupload的session问题
swupload是个一个客户端文件上传工具
让这个上传flash嵌入在网页里面可以使用一些非常棒的特性
官网在这里http://code.google.com/p/swfupload/
最近使用的时候发生一个问题
文件上传的session和页面session不同步
demo里面有提到设置post_params
让swfupload吧页面的session_id作为参数传递
但是实际使用的时候依然有问题
具体表现就是在文件上传处理页面设置的session无法在当前页面得到
使用fidder抓包后发现原因是swfupload里面的cookie上也带有一个sessid
POST字段里面才是实际需要的sessid
因为swfupload使用的是socket方式 所以和我们[......]
pafetion1.4版本发布
近期很多同学反映接口不能使用.
然后改动了下接口
并把以前不规范的cookie获取方式修改了
直接使用
下载地址
调用例子
1.发送消息
http://lab.3haku.net/f/do?phone=xxxxxx&pwd=xxx&to=xxxx,xxxx,xxxx&msg=xxxx
2.添加好友
http://lab.3haku.net/f/do?phone=xxxxxx&pwd=xxx&add=xxxx,xxxx,xxxx
说明:
phone 发送者手机号码 (-v1)
pwd 发送者飞信密码[......]
关于一致性哈希
1. 一致性哈希
2.1 基本场景
比如你有 N 个 cache 服务器(后面简称 cache ),那么如何将一个对象 object 映射到 N 个 cache 上呢,你很可能会采用类似下面的通用方法计算 object 的 hash 值,然后均匀的映射到到 N 个 cache ;
hash(object)%N
一切都运行正常,再考虑如下的两种情况;
1 一个 cache 服务器 m down 掉了(在实际应用中必须要考虑这种情况),这样所有映射到 cache m 的对象都会失效,怎么办,需要把 cache m 从 cache 中移除,这时候 cache 是 N-1 台,映射公式变成了 hash(object)%(N-1) ;
2 由于访问加重,需要添加 cache ,这时候 ca[......]
phpcurl模块
1 概述
PHP支持的由Daniel Stenberg创建的libcurl库允许你与各种的服务器使用各种类型的协议进行连接和通讯。
目前支持http、https、ftp、gopher、telnet、dict、file和ldap协议。libcurl同时也支持HTTPS认证、HTTP POST、HTTP PUT、 FTP 上传(这个也能通过PHP的FTP扩展完成)、HTTP 基于表单的上传、代理、cookies和用户名+密码的认证。
为什么不用socket?
curl,是client url的简写,用来模拟浏览器的功能,浏览器能做的它基本都能实现,登陆,上传文件,下载...
socket可以理解为通信链的句柄,比CURL更底层一点
某些时候我们可能更需要简单模拟[......]
apache日志分离组件cronolog
1.1 概述
apache默认的日志都会记录到一个文件内
如果访问量过多,时间过长,将导致日志堆积,文件变大,影响apache的性能
cronolog是一个用于日志切分的软件,使用管道把输入定位到其他路径保存
1.2 安装
wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
tar xcvf cronolog-1.6.2.tar.gz
cd cronolog-1.6.2
sudo ./configure -–prefix=%INSTALL_DIR%
sudo make install
1.3 使用
修改apache的日志记录
CustomLog "|[......]