otunnel is a simple safe tunnel for peer-to-peer
simple build (RECOMMENDED):
$ ./build-by-docker.sh
others:
$ go get -v github.com/ooclab/otunnel
$ export GOPATH=${GOPATH:-~/go}
$ cd $GOPATH/src/github.com/ooclab/otunnel
$ # use any of following commands to build otunnel
$ make # normal build
$ make static # build a static program
$ go build -v # the go build
$ gox # simple cross build, you should install gox first!
Start a server at a public server ( example.com ):
./otunnel listen -d
Start a client (reverse forward):
./otunnel connect example.com:10000 -d -t r:LOCAL_HOST:LOCAL_PORT::REMOTE_PORT
Now, anyone can access your LOCAL_HOST:LOCAL_PORT
by example.com:REMOTE_PORT
.
Run a server:
docker run --rm -it --net=host ooclab/otunnel-amd64 /otunnel listen :10000 -d -s abc123
Run a client:
docker run --rm -it --net=host ooclab/otunnel-amd64 /otunnel connect SERVER_IP:10000 -d -s abc123 -t 'f:127.0.0.1:10022:HOST_IP:HOST_PORT'
For example:
wget http://dl.ooclab.com/otunnel/1.2.3/otunnel_linux_amd64.xz
unxz otunnel_linux_amd64.xz
chmod a+x otunnel_linux_amd64
mv otunnel_linux_amd64 otunnel
Please send issues to github.com/ooclab/otunnel/issues .
- qtunnel
- ngrok
- frp
- pagekite