For Freedom —— 代理篇
人生在世,总是受到各种约束。心脏跳动都感到困难呢!!
公司内网,安全区,fq等等等~~我们需要一个稳定易用高性能高弹性的代理工具!3Proxy,Here it is, CLICK ME!!
简单介绍下:
- 战斗民族开发的高性能,代理server的瑞士军刀,代码写的很溜,不得不赞!
- 支持如下代理方式
- HTTP1.1 / HTTPS
- FTP over HTTP
- UDP and bind suport for socks
- socks : socks v4/4.5, socks v5
- POP3/FTP/DNS/SMTP/ICQ/AOL
- TCP/UDP port mapper
- 强大的代理链支持:支持父代理 和 代理链(第一次听说代理链,强大啊)
- 简单易用的ACL支持,支持的鉴权和授权方式如下
- 用户名
- 来源ip/port
- 目的ip/port
- 时间段
- 请求类型
- 贴心的安全tips,参考这里,建议最好做到
大概说下步骤:
- 不想自己编译的,这里下二进制,然后直接参考第4步
- github上找到项目地址,git clone下来;
- 进入工程目录,什么都不用修改。Linux用户请 make -f Makefile.Linux;Windows用户请nmake /f Makefile.mscv。其他操作系统用户相信你们能自己找到需要的Makefile
- 参照cfg目录下配置文件修改,or自己裸写。先给个demo
1 system "echo Hello world!" 2 log /home/work/vdisk/code/github/3proxy/logs/3proxy.log D 3 logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T" 4 rotate 3 5 auth iponly 6 allow * 192.168.0.0/16 7 socks -a -p8014
- 第一行:运行成功的时候打印到标准输出的信息,用来测试配置是否生效;
- 第二行:日志文件路径设置,文件夹需要自己建好,不然会报错!!!会报错!!!错!
- 第三行:日志格式,差不多这样就行了,这个好折腾,不多说;
- 第四行:日志文件保留的个数,当日志文件多余三个了就会自动删or存档;
- 第五行:鉴权方式,这里选择的是非用户名,非授权。要用户名的设置strong,也可以同时设置strong和iponly,此时先检查ACL再检查用户名等。
- 第六行:设置只允许某个ip段走这个代理。这个设置的格式是
allow <userlist> <sourcelist> <targetlist> <targetportlist> <commandlist> <weekdaylist> <timeperiodlist> deny <userlist> <sourcelist> <targetlist> <weekdaylist> <timeperiodlist> flush
-
如果只配置sourcelist,那allow * <sourcelist>即可。如果格式写错了,抱歉,经历过的猴子告诉你,会出什么乱子估计战斗民族也不知道~~不要怀疑我,请你们仔细理解下author写的demo
-
flush是用来刷新配置的,一般用不到,需要用的自己去看wiki。
-
需要注意的是!!!如果allow/deny都没有设置,那么就等于无ACL控制;如果只设置了allow,那么不在allow里的都会被deny;如果只设置了deny,那么所有的都会被deny,因为没有设置在deny里面的也会被deny!!!
-
- 第七行:代理协议为socks,代理端口为8014;如果要设置http代理,此处socks改为proxy。
- 如果要同时运行其他协议or其他端口or其他ACL。。。反正就是和此代理不冲突的,那么在配置文件里继续按如上格式写下去就行。
- Linux用户,命令行跑起来吧$ src/3proxy config/3proxy.cfg ;Windows用户改下斜线方向,一样的命令。
- done & enjoy it
- any question? leave your comment below!