Skip to content

RTradeLtd/libanonvpn

Repository files navigation

libanonvpn (home)

Library for providing and connecting to VPN's over the I2P network. Daemon, web client, and terminal client. This is an automatically configuring, automatically deploying, automatically multihopping pseudonymous VPN.

Installation

For now, the recommended way to install is with go get

 go get -u -d -tags cli github.com/RTradeLtd/libanonvpn/cmd/anonvpn 

Example Usage

Server-Side

Start by creating a server configuration file like the one found in /etc/anonvpn/anonvpn.ini. Then run the server using that file:

 ./anonvpn -file server.ini 

Client-Side

When the server is started, it will create a minimum viable configuration file for clients. You can run with a similar command:

 ./anonvpn -file client.ini 
Usage of ./cmd/anonvpn/anonvpn: -accesslist string	Type of access list to use, can be "whitelist" "blacklist" or "none". (default "none") -addr string	(client) IP address of virtual network interface (default "10.79.0.2") -canal	Run the canal subcommand to configure firewall rules(Experimental). -chromeuser string	user to run Chrome as, usually your desktop user (default "idk") -client	Client mode(true or false). (default true) -clientconf string	(Server Only) Output a client config file to the specified path (default "client.ini") -closeidle	Close tunnel after idle for a specified time(true or false). -closeidletime int	Close tunnel group after X (milliseconds). (default 600000) -compression	Uze gzip(true or false). -css string	custom CSS for web interface (default "css/styles.css") -destination string	Destination to connect client's to by default. -directory string	Directory to save tunnel configuration file in. -encryptleaseset	Use an encrypted leaseset(true or false). (default true) -file string	Use an ini file for configuration(config file options override passed arguments for now). (default "none") -hashhash string	32-word mnemonic representing a .b32.i2p address(will output .b32.i2p address and quit) -host string	(server) IP address of virtual network interface (default "10.79.0.1") -inbackups int	Set inbound tunnel backup quantity(0 to 5). (default 3) -inlength int	Set inbound tunnel length(0 to 7). (default 1) -inquantity int	Set inbound tunnel quantity(0 to 15). (default 5) -invariance int	Set inbound tunnel length variance(-7 to 7). -javascript string	custom JS for web interface (default "js/scripts.js") -k string	key for encrypted leaseset (default "none") -littleboss string	instruct the littleboss:	start:	start and manage this process using service name "name"	stop:	signal the littleboss to shutdown the process	status:	print statistics about the running littleboss	reload:	restart the managed process using the executed binary	bypass:	disable littleboss, run the program directly (default "bypass") -name string	Tunnel name, this must be unique but can be anything. (default "anonvpn") -outbackups int	Set outbound tunnel backup quantity(0 to 5). (default 3) -outlength int	Set outbound tunnel length(0 to 7). (default 1) -outquantity int	Set outbound tunnel quantity(0 to 15). (default 5) -outvariance int	Set outbound tunnel length variance(-7 to 7). -password string	password for web admin panel -persistident	Use saved file and persist tunnel(If false, tunnel will not persist after program is stopped. -pk string	private key for encrypted leaseset (default "none") -psk string	private signing key for encrypted leaseset (default "none") -reduceidle	Reduce tunnel quantity when idle for a specified time(true or false). -reduceidlequantity int	Reduce idle tunnel quantity to X (0 to 5). (default 3) -reduceidletime int	Reduce tunnel quantity after X (milliseconds). (default 600000) -samhost string	SAM host (default "127.0.0.1") -samport string	SAM port (default "7656") -signaturetype string	Signature type -skipi2cp	Skip I2CP Port check for standalone router -start	Start a tunnel with the passed parameters(Otherwise, they will be treated as default values). (default true) -string string	Gateway to forward requests recieved by the server with canal(Experimental) (default "192.168.0.1") -username string	username for web admin panel (default "go-anonvpn") -webface	Start web administration interface (default true) -webport string	Web interface port (default "7959") -zeroin	Allow zero-hop, non-anonymous tunnels in(true or false). -zeroout	Allow zero-hop, non-anonymous tunnels out(true or false). 

About

Library for TUN and TAP devices over I2P in Go Applications

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors