海运的博客

Linux下资源容器

发布时间:July 24, 2014 // 分类:Linux服务 // No Comments

FastDFS配合FastDHT去重

发布时间:January 28, 2014 // 分类:Linux服务 // No Comments

FastDHT使用Berkeley DB为后端存储,安装:

wget https://fastdht.googlecode.com/files/FastDHT_v1.23.tar.gz
tar zxvf FastDHT_v1.23.tar.gz 
cd FastDHT
./make.sh C_INCLUDE_PATH=/usr/local/BerkeleyDB.6.0/include \
LIBRARY_PATH=/usr/local/BerkeleyDB.6.0/lib/
./make.sh install
mkdir -p /home/yuqing/fastdht
echo "/usr/local/BerkeleyDB.6.0/lib/" > /etc/ld.so.conf.d/db.conf
ldconfig

配置fastdht:

/etc/fdht/fdht_servers.conf
group_count = 2
group0 = 192.168.1.1:11411
group0 = 192.168.1.2:11411
group1 = 192.168.1.1:11411
group1 = 192.168.1.2:11411

配置fastdfs storage

/etc/fdfs/storage.conf 
check_file_duplicate=1
file_signature_method=hash
key_namespace=FastDFS
keep_alive=1
#include /etc/fdht/fdht_servers.conf

再次测试上传多次同个文件,重复上传的文件以链接方式保存。

分布式存储FastDFS使用

发布时间:January 28, 2014 // 分类:Linux服务 // No Comments

安装:

yum install -y libevent-devel pcre-devel zlib-devel
wget http://fastdfs.googlecode.com/files/FastDFS_v4.06.tar.gz
tar zxvf FastDFS_v4.06.tar.gz
cd FastDFS
./make.sh && ./make.sh install

配置tracker:

/etc/fdfs/tracker.conf 
base_path=/home/fastdfs #工作目录,记录日志相差信息
bind_addr=0.0.0.0
port=22122
run_by_group=fastdfs
run_by_user=fastdfs

配置storage:

/etc/fdfs/storage.conf 
group_name=group1 #服务器所在组,组内服务器数据同步
base_path=/home//fastdfs
store_path0=/home/fastdfs #数据目录
tracker_server=192.168.1.1:22122 #tracker服务器

配置client:

/etc/fdfs/client.conf 
tracker_server=192.168.1.1:22122

测试上传:

fdfs_test /etc/fdfs/client.conf upload .bashrc 

查看group/storage信息及删除storage:

fdfs_monitor /etc/fdfs/client.conf
fdfs_monitor /etc/fdfs/client.conf delete group1 192.168.1.1

安装配置php客户端:

cd php_client/
./configure
make && make install
cp fastdfs_client.ini /etc/php.d/
#配置调用上面配置的/etc/fdfs/client.conf 

使用php上传文件:

<?php
$tracker = fastdfs_tracker_get_connection();
var_dump($tracker);
$storage = fastdfs_tracker_query_storage_store();
var_dump($storage);
$ret = fastdfs_storage_upload_by_filename('fastdfs.spec');
var_dump($ret);
$ret = fastdfs_storage_upload_by_filename1('fastdfs.spec');
var_dump($ret);
$file = file_get_contents("fastdfs.spec");
$ret = fastdfs_storage_upload_by_filebuff($file, 'spec');
var_dump($ret);
$ret = fastdfs_storage_upload_by_filebuff1($file, 'spec');
var_dump($ret);
?>

storage存储安装Nginx模块,用于提供文件下载,文件不存在时通过tracker获取同组内其它storage数据:

wget http://fastdfs.googlecode.com/files/fastdfs-nginx-module_v1.15.tar.gz
./configure --add-module=/root/fastdfs-nginx-module/src
cp mod_fastdfs.conf /etc/fdfs/ #配置文件

插件配置:

tracker_server=192.168.1.1:22122
group_name=group1
url_have_group_name = false #url是否包含组名
response_mode=proxy #向其它storage获取数据方式,代理或重定向
    #location /grout0/M00 { #url_have_group_name要设置为true
    location /M00 {
            root /home/yuqing/fastdfs/data;
            ngx_fastdfs_module;
    }

<pre><code>直接使用Nginx提供文件访问,不通过tracker:
</code></pre>

  location /M00 {
    alias /home/yuqing/fastdfs/data;
    #ngx_fastdfs_module;
  }

Socks5转HTTP

发布时间:January 12, 2014 // 分类:Linux服务 // No Comments

privoxy过滤规则强大,可根据不同的规则选择不同的代理

listen-address  0.0.0.0:8118
forward-socks5 / 192.168.1.1:7070 .
permit-access 127.0.0.1
permit-access 192.168.1.0/24

polipo支持缓存:

proxyAddress = "192.168.1.5"     
allowedClients = 127.0.0.1, 192.168.1.0/24
proxyPort = 8118
socksParentProxy = "192.168.1.1:7777" 
socksProxyType = socks5
diskCacheRoot = " "

Proxy代理管理器3proxy

发布时间:January 12, 2014 // 分类:Linux服务 // 2 Comments

3proxy是款功能强大的代理软件,本身支持HTTP及Socks5代理,同时还支持将HTTP代理转为socks5代理,及多代理负载均衡。

yum install 3proxy

```

后台进程

daemon

DNS服务器

nserver 8.8.8.8

DNS缓存

nscache 65536

超时

timeouts 1 5 30 60 180 1800 15 60

日志

log /var/log/3proxy.log
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
rotate 30

用户 CL明文密码

users user1:CL:pwd user2:CL:pwd

权限控制参数

allow

deny

开启socks和http代理,指定监听端口和出口IP

auth iponly strong
allow user1,user2
allow * 192.168.0.0/16 *
socks -p1080 -e192.168.1.1
socks -p1081 -e192.168.1.2
proxy -p8080 -e192.168.1.1
proxy -p8081 -e192.168.1.2
flush

开启HTTP代理,端口3128,轮换出口IP

auth iponly
allow *
parent 500 http 192.168.1.2 0
parent 500 http 192.168.1.1 0
proxy -p3128
flush

开启上层代理,HTTP端口1234,轮换上层socks5代理

auth iponly
allow *
parent 500 socks5 192.168.1.1 7777
parent 500 socks5 192.168.1.1 7070
parent 500 connect 192.168.1.1 3128
proxy -p1234
flush

启动:
```bash
3proxy config.cfg

命令行工具:

socks -d -iIP 192.168.1.1 -pPORT 1080 -eIP 192.168.1.1

Windows下Bin目录新建配置文件3proxy.cfg,安装为系统服务并启动:

3proxy.exe --install
分类
最新文章
最近回复
  • 吴昊: 学习了,感谢博主分享
  • linhua: 只需配置 服务端 的接收端口随机化就行了, 发送端口 因为 连接追踪(conntrack)的缘...
  • Realm: 博主你好,按照你的教程设置了IP转发及SNAT:echo 1 > /proc/sys/net/...
  • Roki: 大神, 为什么我在make clean 就出错了呢 ?你能帮我看看吗 。。。474495758...
  • Duuge: 遇到相同的问题,但未能解决,请求帮助。1、遇到的问题:/target-i386_i486_uC...
  • carlo: 大哥,我觉得你的技术好牛逼!能加你QQ吗
  • lebron: Unknown package 'lrzsz'.Collected errors:* opkg...
  • Vicer: 在openwrt 15.05 下 luci 界面安装了 带操作界面的 openconnect ...
  • tutugreen: 搭建很顺利(唯一成功的www),链接很丝滑,谢博主。
  • 惊蛰: 您好,请问一下,我客户端和服务端都编译成功了,down到本地启动是这个样子,没有Forward...
页面执行耗时:0.0655秒。-->