-
Notifications
You must be signed in to change notification settings - Fork 45
Skywire VPN Server
This guide explains the setup procedure and includes operating instructions of the Skywire VPN Server. Please refer to the Skywire VPN Client guide out in case you want to use Skywire VPN as a client by using the Skywire VPN Client.
Please note that the configuration & starting/stopping of the Skywire VPN Server can also be performed using the Skywire HypervisorUI via the Apps page of the respective Visor.
In order to run a Skywire VPN server, you need to install
- Golang v1.13 or higher
-
ip
command git
The Skywire VPN server currently only runs on Linux machines.
Note: For ease of setting up a connection to your VPN server, it is recommended to deploy the VPN server on a machine with a public IP. This will allow clients to establish stcpr
transports which use a simple TCP connection instead of relayed connections over dmsg
.
Start by cloning the Skywire repo
git clone https://github.com/skycoin/skywire
Change directories into the repository
cd skywire
Build and install Skywire with
make build; make install
Finally generate a configuration file with
skywire-cli visor gen-config
The following outlines configurational & operational aspects of the Skywire VPN Server.
The Skywire VPN server can be configured to require a passcode for authentication of clients or be freely accessible but in order to be publicly advertised in Skycoin's service discovery, it is required for the VPN server to be freely accessible without passcode!
If you wish to set a passcode, you can pass the following argument to the skywire-config.json
{
"name": "vpn-server",
"auto_start": false,
"port": 44,
"args":["-passcode","123456", "-secure", "true"]
}
In order to automatically start the VPN server upon startup of the Skywire Visor, set auto_start
to true
. Otherwise, the VPN server needs to be started manually after the Visor was started. The "-secure" flag prevents VPN client users from SSH'ing into the VPN-server's machine. It defaults to true.
The following assumes that you either use multiple terminals or take care of detaching processes from the terminal yourself.
In order to run the Skywire VPN server, first run the Visor
sudo skywire-visor
Note: The VPN server requires root privileges to setup a TUN interface and configure the systems routing rules.
Afterwards, start the VPN server with
skywire-cli visor start-app vpn-server
In order to stop the VPN server you can either stop the Visor or run
skywire-cli visor stop-app vpn-server
please contact support via telegram @skywire
for rewards and technical support