mysteriumnetwork / node

Mysterium Network Node - official implementation of distributed VPN network (dVPN) protocol
https://mysterium.network
GNU General Public License v3.0
1.12k stars 312 forks source link
blockchain distributed distributed-systems golang networking vpn vpn-client vpn-server vpnfree

Mysterium Node - decentralized VPN built on blockchain

Go Report Card pipeline status codecov GoDoc

Cross-platform software to run a node in Mysterium Network. It contains Mysterium server (node), client API (tequila API) and client-cli (console client) for Mysterium Network.

Currently node supports WireGuard as its underlying VPN transport.

Getting Started

Installation options

Debian / Ubuntu / Raspbian

Install latest stable release:

sudo -E bash -c "$(curl -s https://raw.githubusercontent.com/mysteriumnetwork/node/master/install.sh)"

Or install latest snapshot (development build):

SNAPSHOT=true sudo -E bash -c "$(curl -s https://raw.githubusercontent.com/mysteriumnetwork/node/master/install.sh)"

Service logs:

sudo journalctl -u mysterium-node.service

Service status:

sudo systemctl status mysterium-node.service

Installation script tested on these OSes so far: Raspbian 10, Debian 9, Debian 10, Ubuntu 18.04 and Ubuntu 20.04.

Docker

Our docker images can be found in Docker hub.

To run a node in a docker container you will need docker. On Linux, to manage docker as a non-root user (execute commands without sudo), follow postinstall guide. You should be able to run a node on any OS that supports docker. We have tested it on these OSes so far:

Run node:

docker run \
  --cap-add NET_ADMIN \
  --net host \
  --name myst -d \
  mysteriumnetwork/myst service --agreed-terms-and-conditions

Access service logs:

docker logs -f myst

Further information

More installation options are described in the installation guides. For possible issues while running a node refer to our Troubleshooting guides.

Built With

Contributing

For a detailed guide, please visit our developer docs.

Core contributors

See also full list of contributors who participated in this project.

License

This project is licensed under the terms of the GNU General Public License v3.0 (see details).