• Stars
    star
    4,087
  • Rank 10,621 (Top 0.3 %)
  • Language
    Go
  • License
    MIT License
  • Created over 7 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

⚡️一个轻巧的网络混淆代理🌏

GoDoc

Lightsocks

一个轻量级网络混淆代理,基于 SOCKS5 协议,可用来代替 Shadowsocks。

  • 只专注于混淆,用最简单高效的混淆算法达到目的;
  • 不会放大传输流量,传输流量更少更快,占用资源更少(内存占用1M左右,CPU 占用 0.1% 左右);
  • 纯 Golang 编写,跨平台,对Golang感兴趣?请看Golang 中文学习资料汇总

想了解 Lightsocks 的实现原理?请阅读文章:你也能写个 Shadowsocks

下载

releases 页下载最新的可执行文件,注意选择正确的操作系统和位数(Mac 系统内核为 darwin)。 解压后会看到2个可执行文件,分别是:

  • lightsocks-local:用于运行在本地电脑的客户端,用于桥接本地浏览器和远程代理服务,传输前会混淆数据;
  • lightsocks-server:用于运行在代理服务器的客户端,会还原混淆数据;

启动

启动 lightsocks-server

在代理服务器下载好 lightsocks-server 后,执行命令:

./lightsocks-server

就可启动服务端,启动成功后会输出如下日志:

服务监听地址 listen:
:12315
密码 password:
******

假如服务器的 IP 是 45.56.76.5,则以上日志的含义是指:

  • 服务监听在 45.56.76.5:12315,监听端口12315是随机生成的;
  • 使用的密码是 ******

除此之外你还可以通过 Docker 快速启动

启动 lightsocks-local

在本地电脑下载好 lightsocks-local 后,执行命令:

./lightsocks-local

就可启动本地代理客户端,会看到如下日志:

2017/10/11 10:03:16 保存配置到文件 /Users/username/.lightsocks.json 成功
2017/10/11 10:03:16 lightsocks-client:master 启动成功 监听在 [::]:7448

这表明生成了一份配置文件到 /Users/username/.lightsocks.json。 为了让客户端用指定的密码去连接服务器,需要给客户端传入参数,为此需要修改该配置文件为如下:

{
  "remote": "45.56.76.5:12315",
  "password": "******"
}

重新启动 lightsocks-local 后,再使用监听在 127.0.0.1:7448 的本地 SOCK5 服务就可以正常使用了。

都启动成功后,可参考 搭配 Chrome 使用 配置你的 Chrome。

自启动

macOS
$ sudo vim /Library/LaunchDaemons/lightsocks.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>KeepAlive</key>
    <true/>
    <key>RunAtLoad</key>
    <true/>
    <key>Label</key>
    <string>lightsocks</string>
        <key>ProgramArguments</key>
        <array>
            <string>/usr/local/bin/lightsocks-local</string>
            <string>/Users/macOS-username/.lightsocks.json</string>
    </array>
   <key>StandardOutPath</key>
    <string>/var/log/lightsocks.log</string>
    <key>StandardErrorPath</key>
    <string>/var/log/lightsocks.log</string>
</dict>
</plist>

启用开机自启动:

sudo launchctl load -w /Library/LaunchDaemons/lightsocks.plist

关闭开机自启动:

sudo launchctl stop /Library/LaunchDaemons/lightsocks.plist
sudo launchctl unload -w /Library/LaunchDaemons/lightsocks.plist

注意:

  • lightsocks-local 和 lightsocks-server 的 password 必须一致才能正常正常使用,password 不要泄露。
  • password 会自动生成,不要自己生成。两端的password要保持一致,一般采用拷贝 lightsocks-server 生成的密码到 lightsocks-local 使用的本地配置文件中。
  • 如果你想自定义保持配置文件的名称,可以通过 lightsocks-local your-name.json 启动,这时配置文件会保存到 ~/your-name.json 中。
  • 启动后会把配置保存在 ~/.lightsocks.json 文件中,启动前会去 ~/.lightsocks.json 文件中读取配置,你可以在启动前修改~/.lightsocks.json 文件来应用你需要的配置,格式如下:
{
  "remote": "45.56.76.5:7448",
  "password": "******",
  "listen": "127.0.0.1:7448"
}

其它语言实现

More Repositories

1

livego

live video streaming server in golang
Go
9,647
star
2

dive-into-webpack

全面的Webpack教程《深入浅出Webpack》电子书
HTML
4,415
star
3

blog

浩的技术博客
EJS
2,221
star
4

web-webpack-plugin

alternative for html-webpack-plugin
JavaScript
326
star
5

reflv

react component wrap flv.js
JavaScript
146
star
6

golang-book

Golang 中文学习资料汇总
Go
125
star
7

chrome-render

general server render base on headless chrome
JavaScript
95
star
8

ui-component-loader

Modular UI component loader for webpack, a good alternative for babel-plugin-import.
JavaScript
51
star
9

pure-svg-code

Generate qrcode & barcode to svg in pure javascript
JavaScript
49
star
10

chrome-pool

Headless chrome tabs manage pool
JavaScript
44
star
11

direct-alipay

alipay api for nodejs
JavaScript
36
star
12

koa-seo

koa SEO middleware
JavaScript
36
star
13

spring-data-rest-js

js lib for java spring data rest service,work for node.js and commonjs in browser,use fetch API
TypeScript
32
star
14

chrome-finder

chrome finder
JavaScript
23
star
15

chrome-runner

run chrome with nodejs in code
JavaScript
16
star
16

parcel-vs-webpack

JavaScript
15
star
17

koa-router-decorator

@route decorator for koa-router
TypeScript
13
star
18

ShuXun

便捷的大学生二手书交易平台
JavaScript
12
star
19

myccnu

华中师范大学微信服务平台-掌上华师
Java
11
star
20

koa-chrome-render

chrome-render middleware for koa
JavaScript
10
star
21

end-webpack-plugin

webpack end hook
JavaScript
8
star
22

comment-require-loader

webpack js loader for require in comment
JavaScript
8
star
23

lightsocks-android

Java
7
star
24

at-lock

防暴击装饰器
TypeScript
6
star
25

chrome-tester

web page automatic tester
JavaScript
5
star
26

get-component-async

react component load for webpack async code split
TypeScript
4
star
27

echo_graphql

a echo handle func for graphql-go
Go
3
star
28

AsyncAntdIconPlugin

JavaScript
2
star
29

esbuild-plugin-globalvar

Go
1
star
30

stickylist

react sticky header listview component
JavaScript
1
star
31

remd

react markdown component
JavaScript
1
star
32

ie-babel-class

polyfill for use babel translate es6 for IE<=9 which use class super constructor
JavaScript
1
star
33

babel-plugin-replace-require-suffix

replace file suffix in require(filepath.suffix)
JavaScript
1
star
34

lfucache

Go
1
star
35

swagger2dts

JavaScript
1
star
36

trans-object

TypeScript
1
star
37

strsim

Go
1
star