cedar

module
v0.0.0-...-4bf2d94 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 29, 2018 License: MIT

README

Cedar: an encrypted proxy

Build Status GoDoc Coverage

Features

Unlike many other encrypted tunnel proxies, Cedar does not create connections between server and client upon request. Instead, it maintains several persistent connections and encapsulates network traffic into them. This is helpful in situations like:

  • Your connection may be interrupted/reset by 3rd party (e.g. your ISP), but application layer provides no retry mechanism
  • Your ISP has traffic policy limiting transfer rate by each connection

Setup

Get Cedar:

# on server side
go get "github.com/OliverQin/cedar/cmd/cdrserver"

# local
go get "github.com/OliverQin/cedar/cmd/cdrlocal"

Run the commands with -h to read help info.

# Start server, using config file
go run cdrserver.go -c sample_config.json  

# Start local SOCKS5 server
# You can use command line paramters directly, 
go run cdrlocal.go -n 20 -b 100 -p change_me -s 127.0.0.1:1080 -r 12.3.45.67:33322 -n 20

A sample config file:

{
	"local": "127.0.0.1:1080",
	"remote": "12.3.45.67:33322",
	"password": "change_me",
	"buffersize": 100,
	"numofconns": 20
}

Note

This project is experimental and still working in progress. Use at your own risk.

Comments and PRs are welcome!

Directories

Path Synopsis
cmd
libcedar
socks
Package socks of libcedar provides a minimal implementation of SOCKS tunnel.
Package socks of libcedar provides a minimal implementation of SOCKS tunnel.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL