给socks5套个壳

作者:
淡白
创建时间:
Sep 6, 2021, 8:05:18 PM
Go socks5 51

摘要:限制我学习由于公司限制了哔哩哔哩等学习网站我用的代理也是明文的socks5于是上级路由还是能够通过http给我拦截了。 注:我用socks5主要的原因是方便访问局域网于是我便给我的socks5套了一层壳通过修改socks5proxy开源库即可实现。解除限制前面的开源库本身就是一个socks5服务器和

限制我学习

由于公司限制了哔哩哔哩等学习网站我用的代理也是明文的socks5于是上级路由还是能够通过http给我拦截了。 注:我用socks5主要的原因是方便访问局域网

于是我便给我的socks5套了一层壳
通过修改socks5proxy开源库即可实现。

解除限制

前面的开源库本身就是一个socks5服务器和客户端,但为了连接我之前的socks(有代理)需要用到另一个socks5的开源实现socks5
修改 socks5proxy 代码

server.go文件

//添加依赖
"github.com/txthinking/socks5"

//修改41行附近

// 连接真正的远程服务
	newClient, err := socks5.NewClient("socksServer", "", "", 0, 60)
	if err!=nil{
		return
	}
	dstServer, err := newClient.Dial("tcp", request.RAWADDR.String())
	//dstServer, err := net.DialTCP("tcp", nil, request.RAWADDR)
	if err != nil {
		log.Print(client.RemoteAddr(), err)
		return
	}
	defer dstServer.Close()

然后编译服务端和客户端代码,在socks5原来的服务器端上运行这个新的套壳服务端。
在本地电脑上运行客户端。注意启动参数,启动客户端后把网络代理的socks5替换成本地客户端的代理端口,就能访问b站了。

追更 9.14

前面的实现有些问题,后面我重写了。
Github

服务提供商:提速啦