Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/rtradeltd/libanonvpn

Library for TUN and TAP devices over I2P in Go Applications
https://github.com/rtradeltd/libanonvpn

anonymity i2p i2p-vpn multihop-vpn tap-device tun-device tuntap vpn

Last synced: 3 days ago
JSON representation

Library for TUN and TAP devices over I2P in Go Applications

Awesome Lists containing this project

README

        

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).
```