GB Wallet Tunnel Server

 Many Operators choose to utilize the services of Exchanges and other online wallet providers. You may also elect to operate your own node, thus eliminating any dependency upon other providers. Nodes only require a server & your participation.

These instructions are written exclusively to describe installation & usage on a VPS.

 

The GB Wallet Tunnel creates a secure, encrypted communications channel between your server and nodes.

  • It's a more convenient alternative to building SSH tunnels.

  • Simpler to use than a SSH tunnel, based on the same code.

1) Setup your secure Node.

Instructions for many nodes listed above.

2) On your server/node, install the GB Wallet Tunnel:

Install Java 8 (used for compilation of client and running).

sudo apt update && sudo apt install openjdk-8-jdk-headless

Clone this repository to download source code:

cd ~ git clone https://github.com/GENERALBYTESCOM/batm_public.git

Compile application from sources:

cd batm_public ./gradlew --info build

Install the service making sure it runs after start of the server:

If all is successful, you'll receive an auto-generated tunnel password:

3) Create a new BTC (or other supported coin) Crypto Setting:

4) Configure the Crypto Setting as you would for RPC access.

  • The protocol will always be "http".

  • The user & password are your RPC credentials as setup in your Node.

  • Host: the IP of your Node host.

  • Port: the RPC port as required by your node (i.e. BTC default = 8332).

5) Enable the "Wallet Tunnel Enabled" setting:

6) Enter the Wallet Tunnel password:

from:

7) Save the new Crypto Setting.

8) Finally, revisit the Crypto Setting, and test it:

If the Hot Wallet test come back "green", then you've successfully implemented the Node Tunnel.


To DISABLE the GB Wallet Tunnel:

To uninstall the GB Wallet Tunnel:


Troubleshooting

Compilation Error

If you encounter an error while compiling, reboot the server and try again from the beginning.

CAS fails to connect

Check your password

When using the tunnel, it is the first part of the process. A Hot Wallet test will always fail if the tunnel is not properly setup. There aren’t many points of failure, and it it should be the first item on your troubleshooting checklist.

You’ll see something similar to this in the master log if the tunnel is connecting correctly:

DEBUG com.generalbytes.batm.server.e.b - opening new tunnel on port 22222, remoteWalletAddress: xxx.xxx.xxx.xxx:3080
DEBUG com.generalbytes.batm.server.e.b - tunnel connected: ClientSessionImpl[batmsshtunnel@yyy.yyy.yyy.yyy/yyy.yyy.yyy.yyy:22222] 42087->3080

  • this indicates a secure connection is active between CAS (yyy.yyy.yyy.yyy) and your Hot Wallet node (xxx.xxx.xxx.xxx). If you don’t see “connected”, then the issue most probably lies here.

  • Check that you’ve entered your tunnel password in the proper area.

Ensure port 22222 is exposed by any node firewall.

If you are certain that the password is correct, then make sure your node exposes port 22222.

Is the tunnel disabled?

The tunnel will fail if disabled. This should report “enabled”:

Uninstall and reinstall.

This last resort may help, but it is an incredibly rare solution.


Related articles

Copyright © 2020-2024 General Bytes USA LLC