Skip to content
Mysterium Node - VPN server and client for decentralized Mysterium Network
Go Shell Other
Branch: master
Clone or download
Latest commit d40f0e5 Jan 28, 2020
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github
bin Bump go-wondershaper to fix bandwidth limiting. (#1578) Jan 28, 2020
ci Refactor port mapping to support standalone WireGuard Jan 28, 2020
cmd Refactor port mapping to support standalone WireGuard Jan 28, 2020
communication Possibility to clear active proposal subscriptions Jan 20, 2020
config Correctly apply stake for provider registration Jan 28, 2020
consumer Send consumer connection metrics (#1369) Oct 31, 2019
core
datasize Format all files with goimports Aug 24, 2018
debian Cleanup legacy (that failed to roll) logs during deb post install Dec 19, 2019
dns Run provider's DNS proxy and configure clients to use Dec 16, 2019
e2e Add compatibility e2e tests Jan 22, 2020
eventbus Registration flow for consumer + provider Nov 18, 2019
feedback
firewall Expose existing firewall/iptables API Dec 16, 2019
identity Remove the flakiness Jan 21, 2020
localnet Refactor port mapping to support standalone WireGuard Jan 28, 2020
logconfig Log openvpn bytecounts on a trace level (#1492) Jan 10, 2020
market Add type/rate definitions to payment method Jan 27, 2020
metadata re-point to new goerli contracts Dec 19, 2019
mmn Improve OS info collector for MMN Jan 14, 2020
mobile/mysterium Refactor port mapping to support standalone WireGuard Jan 28, 2020
money move money away from floats and towards uints Nov 5, 2019
nat Refactor port mapping to support standalone WireGuard Jan 28, 2020
requests Close idle http requests on connection state change (#1438) Dec 3, 2019
services Refactor port mapping to support standalone WireGuard Jan 28, 2020
session Fix balance inconsistency Jan 28, 2020
tequilapi Implement tequilapi call for proposals with price range Jan 27, 2020
testinstall Test install script (#1563) Jan 24, 2020
testkit/assertkit Address review remarks Jun 19, 2019
ui Close idle http requests on connection state change (#1438) Dec 3, 2019
utils Test DNSOption Dec 17, 2019
.dockerignore Refactor port mapping to support standalone WireGuard Jan 28, 2020
.gitignore Add localnet environment setup using docker-compose Jan 20, 2020
.gitlab-ci.yml Add compatibility e2e tests Jan 22, 2020
CONTRIBUTING.md Cleanup e2e infrastructure Jan 20, 2020
INSTALL.md Updated INSTALL.md for single binary usage Sep 28, 2018
LICENSE Revert "Update LICENSE copyright year to unify with headers" May 18, 2018
Makefile Migrate to go modules Oct 22, 2019
README.md Contributors updated Jan 27, 2020
TERMS.md removed mysterion mentions in terms Jan 14, 2019
docker-compose.e2e-basic.yml Add missing net ipv4 params for e2e tests Jan 28, 2020
docker-compose.e2e-compatibility.yml Correctly apply stake for provider registration Jan 28, 2020
docker-compose.e2e-traversal.yml Add missing net ipv4 params for e2e tests Jan 28, 2020
docker-compose.localnet.yml Add missing net ipv4 params for e2e tests Jan 28, 2020
go.mod Bump go-wondershaper to fix bandwidth limiting. (#1578) Jan 28, 2020
go.sum
install.sh Test install script (#1563) Jan 24, 2020
logo.png Logo added May 21, 2017
mage.go
magefile.go Add localnet environment setup using docker-compose Jan 20, 2020

README.md

Mysterium Node - decentralized VPN built on blockchain

Go Report Card pipeline status pullreminders 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 OpenVPN 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 16.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:

  • Debian 9
  • Debian 10
  • Ubuntu 16.04
  • Ubuntu 18.04
  • Centos 7

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 guide.
For possible issues while running a node refer to our FAQ section.

Built With

  • go - The Go Programming Language
  • travis - Travis continuous integration tool
  • docker - Containerize applications
  • openvpn - Solid VPN solution
  • wireguard - Extremely simple yet fast and modern VPN

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Contributors

  • Valdas Petrulis - Lead developer, go evangelist, node bootstrapper - Waldz
  • Tadas Valiukas - Senior developer, experienced bug maker - tadovas
  • Donatas Kučinskas - Senior developer, clean code savvy - donce
  • Antanas Masevičius - Network engineer / developer, net guru - zolia
  • Paulius Mozuras - Software developer, snakes lover - interro
  • Ignas Bernotas - Senior developer, open source enthusiast - ignasbernotas
  • Andrej Novikov - Senior developer, JS enthusiast, UX jazzman - shroomist
  • Dmitry Shihovtsev - Senior developer, devops ninja - soffokl
  • Viktoras Kuznecovas - Senior developer, supersonic typing specialist vkuznecovas
  • Tadas Krivickas - Senior developer, CI boss, refactoring fairy tadaskay
  • Jaro Šatkevič - Senior developer, micro-payments researcher, crypto maniac chompomonim
  • Andzej Maciusovič - Senior developer, disciplined world changer anjmao

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

You can’t perform that action at this time.