This option is on by default and enables only minimal privacy since a large portion of peer-to-peer connections will likely still be regular connections. No additional actions are required to enable this option.
This option enables basic privacy since all peer-to-peer connections are forced over TLS, however, certificates for peers are not validated.
To enable this option turn on the following flag in your hush.conf
file:
tlsforce=1
This option enables the highest privacy + security by forcing TLS connections and validating peer certificates.
To enable this option turn on the following two flags in your hush.conf
file:
tlsforce=1
tlsvalidate=1
This guide requires having your own domain. You can still use all of the above connection options without setting up your own secure node, however, peers using the tlsvalidate=1
flag will not connect to your node.
-
Create an A record pointing to the IP address of your node on the DNS control panel for your domain. You can set the
host
entry to anything you like such ashnode
. This A record should then be reachable ashost.mydomain.com
(we will refer to this as yourFQDN
from now on). -
Ensure your domain name as propagated and matches the public IP address of your node by pinging your
FQDN
ping FQDN
-
Install the acme script to create a certificate:
sudo apt install socat
cd ~/
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
./acme.sh --install
-
Create the certificate:
MY_FQDN=FQDN
- Where
FQDN
is the fullhost.mydomain.com
- Where
echo $MY_FQDN
~/.acme.sh/acme.sh --issue --standalone -d $MY_FQDN
- Make a note of where your certificates are:
- They should be in
~/.acme.sh/FQDN
- They should be in
-
Add a crontab to check the script expiration date and renew if necessary:
sudo crontab -e
6 0 * * * "/home/<USER>/.acme.sh"/acme.sh --cron --home "/home/<USER>/.acme.sh" > /dev/null
- Where
<USER>
is your username
- Where
-
Add the intermediate authority certificate to the certificate store and install it:
MY_FQDN=FQDN
sudo cp /home/$USER/.acme.sh/$MY_FQDN/ca.cer /usr/share/ca-certificates/ca.crt
sudo dpkg-reconfigure ca-certificates
- Use
space
to select, andtab \ enter
to navigate.
- Use
-
Stop the
hushd
(if running) and add the certificate flags tohush.conf
MY_FQDN=FQDN
cat <<EOF >> ~/.hush/hush.conf tlscertpath=/home/$USER/.acme.sh/$MY_FQDN/$MY_FQDN.cer tlskeypath=/home/$USER/.acme.sh/$MY_FQDN/$MY_FQDN.key EOF
-
Restart
hushd
and verify you have a valid certificate!hush-cli getnetworkinfo
- You should see a line reading
“tls_cert_verified”: true
- You should see a line reading
For license information see the file COPYING.