Geyser
liongrass / May 2024 (382 Words, 3 Minutes)
Geyser
Geyser is a crowdfunding website. It lets you run your own campaigns and gives you the option to connect your own node to your crowdfund.
Prerequisites
To connect Geyser to your own node, your node needs to be reachable through IPv4. You will also need to open the gRPC port as explained in the guide below. You will also need a Geyser account.
Information to collect
In the course of this guide, we’ll need:
- Our node’s public key
- Our node’s gRPC port
- Our node’s domain name or IP address
- The invoice macaroon for our node
- Our node’s TLS certificate
1) Public Key
We can get our node’s public key with the command lncli getinfo
.
It should be labelled “identify pubkey”
2) IP Address
Depending on your configuration, you might find your IP address already in your configuration file or in the output of lncli getinfo
. You may also be able to obtain it from your hosting provider or by running curl icanhazip.com
, assuming curl is installed on your machine.
3) Shut down LND
Now we will shut down LND. If you set up your node using the Nodeacademy guides, you can do that with sudo systemctl stop litd.service
. Otherwise lncli stop
should work well, too.
4) Amend the configuration file
We are going to use port 10009
in this tutorial, as it is the standard port. You may use any other port, for example to further obfuscate how your server is reachable and what is running on it.
We’ll have to add a few lines to our lit.conf
configuration file found in ~/.lit
. If you set up your node using the Nodeacademy guides and are running Litd in integrated mode, you may use the following:
lnd.rpclisten=0.0.0.0:10009
lnd.tlsextraip=<your IPv4 address>
Optionally you may also add your IPv6 address or domain name, if one is pointed to your node:
lnd.tlsextraip=<your IPv6 address>
lnd.tlsextradomain=<your domain>
If you are not running litd, but rather LND-only, you may omit lnd.
from the configuration settings above, e.g.:
rpclisten=0.0.0.0:10009
tlsextraip=<your IPv4 address>
5) Delete the old TLS key and certificate
Before we can generate a new TLS key and certificate, we will have to delete the old ones.
rm ~/.lnd/tls.key
rm ~/.lnd/tls.cert
6) Start LND
We can now start LND again. If you are set up using the Nodeacademy guides, you can run:
sudo systemctl start litd.service
Otherwise, start LND as you are used to.
7) Get the new TLS certificate and invoice macaroon
We will need the new TLS certificate and our node’s invoice macaroon, encoded with Base64.
base64 ~/.lnd/tls.cert
base64 ~/.lnd/data/chain/bitcoin/mainnet/invoice.macaroon
Beware of line breaks when copying these values!
8) Firewall
If you have a firewall configured, don’t forget to open the gRPC port. For example for nodes configured with ufw
through the Nodeacademy guides:
sudo ufw allow 10009
9) Configure your Geyser account
Once you’re logged into your Geyser account, you can go to your project, click Edit, Connect Wallet and finally Connect Node. Enter the information as obtained above and test it!