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
system "echo Hello world!"
log /home/work/vdisk/code/github/3proxy/logs/3proxy.log D
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
rotate 3
auth iponly
allow * 192.168.0.0/16
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!
For Freedom —— 代理篇的更多相关文章
- linux初学者-squid代理篇
linux初学者-squid代理篇 Squid代理服务器是一种缓存服务器,一般分为正向代理和反向代理. 1.正向代理 客户端因为网络或者其他的问题,不能访问到一台Apache服务器,如果要访问到,则 ...
- Java学习之动态代理篇
Java学习之动态代理篇 0x00 前言 在后面的漏洞研究的学习中,必须要会的几个知识点.反射机制和动态代理机制.至于反射的前面已经讲到过了,这里就不做更多的赘述了. 0x01 动态代理 这里先来讲一 ...
- Charles应用指南--安装与代理篇
Charles是开发测试过程中十分常用的一款代理软件,之前也写了一点基本使用.最近有新同事入职头一次用这个,就写了这么一份基本的安装和配置笔记. Charles 下载地址 mac:链接: https: ...
- nginx学习之反向代理篇(六)
在本节,你将学会: --如何根据不同的协议,将请求转发到后端服务器: --修改发送到后端服务器的请求头: --以及配置是否buffering从后端服务器返回来的响应. 1. 将请求转发给后端服务器 当 ...
- requests模块(代理)篇
- 用户验证 - 代理验证 #可能需要使用HTTP basic Auth, 可以这样 # 格式为 用户名:密码@代理地址:端口地址 proxy = { "http": " ...
- jdk动态代理和cglib动态代理底层实现原理详细解析(cglib动态代理篇)
代理模式是一种很常见的模式,本文主要分析cglib动态代理的过程 1. 举例 使用cglib代理需要引入两个包,maven的话包引入如下 <!-- https://mvnrepository.c ...
- jdk动态代理和cglib动态代理底层实现原理超详细解析(jdk动态代理篇)
代理模式是一种很常见的模式,本文主要分析jdk动态代理的过程 1.举例 public class ProxyFactory implements InvocationHandler { private ...
- 代理服务器基本知识普及代理IP使用方法!
本文并未从专业角度进行详细讲解,而是从应用的角度出发来普及一些代理服务器的基本知识.文章明显是搜集多方资料的拼凑,而且比较老了,但往往越老的东西越接近事物的本质,更容易窥探到原理,对于刚接触的人来说, ...
- TGL站长关于常见问题的回复
问题地址: http://www.thegrouplet.com/thread-112923-1-1.html 问题: 网站配有太多的模板是否影响网站加载速度 月光答复: wp不需要删除其他的模板,不 ...
随机推荐
- 每天一个 Linux 命令(21):find命令之xargs
在使用 find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行.但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几分钟之后,就会出 ...
- ELKStack-使用消息队列扩展(十)
ELKStack-使用消息队列扩展 官方文档:https://www.elastic.co/guide/en/logstash/5.x/deploying-and-scaling.html 流程图 流 ...
- Java学习笔记14---使用标志位控制循环
使用标志位控制循环 前面提到了控制循环的常用技术:计数器控制的循环.另一种控制循环的常用技术是在读取和处理一个集合的值时指派一个特殊值.这个特殊的输入值也成为标志值(sentinel value),用 ...
- 初识virtual memory
一.先谈几个重要的东西 virtual memory是一个抽象概念,书上的原文是"an abstraction of main memory known as virtual memory& ...
- display:none显示和隐藏
<html> <head> <title>显示和隐藏问题</title> <meta charset="utf-8"/> ...
- codevs1403 新三国争霸
题目描述 Description PP 特别喜欢玩即时战略类游戏,但他觉得那些游戏都有美中不足的地方.灾害总不降临道路,而只降临城市,而且道路不能被占领,没有保护粮草的真实性.于是他就研发了<新 ...
- MySql简易配置
选择standard configuration ,然后next Service Name :服务名字 Launch the MySQL Server automatically:是否开机启动mysq ...
- SQL Server数据库定时自动备份
SQL Server 数据库定时自动备份[转] 在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库.而备份数据库一般又是在凌晨时间基本没有数据库操作的时候进行,所以我们不可能要求 ...
- 搭建consul 集群
1. 准备工作 a) 启动三台虚拟机 s1:10.1.7.141 s2:10.1.7.139 s3:10.1.7.138 b) 每台机器上在 /home新建文件夹 mkdir ...
- EXTJS中grid的数据特殊显示,不同窗口的数据传递
//EXTJS中grid的数据特殊显示renderer : function(value, metaData, record, rowIndex, colIndex, store, view) { v ...