|
|
@@ -0,0 +1,56 @@
|
|
|
+Hosting anonymous nodes
|
|
|
+=======================
|
|
|
+
|
|
|
+Using Tor, we can host anonymous nodes as Tor hidden services. To do
|
|
|
+this, we need to set up our Tor daemon and create a hidden service.
|
|
|
+The following instructions should work on any Linux system.
|
|
|
+
|
|
|
+## 1. **Install Tor**
|
|
|
+
|
|
|
+Tor can usually be installed with your package manager. For example
|
|
|
+on an `apt` based system we can run:
|
|
|
+
|
|
|
+```
|
|
|
+# apt install tor
|
|
|
+```
|
|
|
+
|
|
|
+This will install it. Now in `/etc/tor/torrc` we can set up the hidden
|
|
|
+service. For hosting an anonymous `ircd` node, set up the following
|
|
|
+lines in the file:
|
|
|
+
|
|
|
+```
|
|
|
+HiddenServiceDir /var/lib/tor/darkfi_ircd
|
|
|
+HiddenServicePort 25551 127.0.0.1:25551
|
|
|
+```
|
|
|
+
|
|
|
+Then restart Tor:
|
|
|
+
|
|
|
+```
|
|
|
+# /etc/init.d/tor restart
|
|
|
+```
|
|
|
+
|
|
|
+You can grab the hostname of your hidden service from the directory:
|
|
|
+
|
|
|
+```
|
|
|
+# cat /var/lib/tor/darkfi_ircd/hostname
|
|
|
+```
|
|
|
+
|
|
|
+For example purposes, let's assume it's
|
|
|
+`jamie3vkiwibfiwucd6vxijskbhpjdyajmzeor4mc4i7yopvpo4p7cyd.onion`.
|
|
|
+
|
|
|
+## 2. **Setup `ircd`**
|
|
|
+
|
|
|
+After compiling `ircd`, run it once to spawn the config file. Then
|
|
|
+edit it to contain the following:
|
|
|
+
|
|
|
+```toml
|
|
|
+inbound = ["tcp://127.0.0.1:25551"]
|
|
|
+external_addr = ["tor://jamie3vkiwibfiwucd6vxijskbhpjdyajmzeor4mc4i7yopvpo4p7cyd.onion:25551"]
|
|
|
+```
|
|
|
+
|
|
|
+Now when you start `ircd`, the hidden service will be announced as
|
|
|
+a peer and people will be able to connect to it when they discover
|
|
|
+you as a peer.
|
|
|
+
|
|
|
+These instructions are also applicable to other nodes in the DarkFi
|
|
|
+ecosystem, e.g. `darkfid`.
|