Tor & I2P

Le service Tor

Son utilité

Active les services suivants :
  • votre-longue-adresse-onion-v3.onion:18084 - service P2P Onion (pour les autres nœuds Onion)
  • votre-longue-adresse-onion-v3.onion:18089 - service RPC Onion (pour les portefeuilles se connectant via Tor)
Le service Onion pour le réseau P2P est pratique pour les autres utilisateurs de nœuds complets, car il leur permet de diffuser des transactions via Tor.

Se connecter temporairement en root

TXT
sudo su -

Installer apt-transport-https

TXT
apt install apt-transport-https

Créer un nouveau fichier

TXT
nano /etc/apt/sources.list.d/tor.sources

Avec ce contenu

TXT
Types: deb deb-src
URIs: https://deb.torproject.org/torproject.org/
Suites: trixie
Components: main
Signed-By: /usr/share/keyrings/deb.torproject.org-keyring.gpg

Ajouter la clé GPG suivante

TXT
wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --dearmor | sudo tee /usr/share/keyrings/deb.torproject.org-keyring.gpg >/dev/null

Installer Tor

TXT
apt update && apt install tor deb.torproject.org-keyring

Modifier le fichier suivant

TXT
nano /etc/tor/torrc

Avec ces lignes

TXT
HiddenServiceDir /var/lib/tor/monerod
HiddenServicePort 18089 127.0.0.1:18089    # interface for wallet ("RPC")
HiddenServicePort 18084 127.0.0.1:18084    # interface for P2P network

Activer et redémarrer Tor

TXT
systemctl enable tor
TXT
systemctl restart tor

Afficher l'adresse .onion du serveur

TXT
cat /var/lib/tor/monerod/hostname

Modifier le fichier de configuration de Monero

TXT
nano /monero/monerod.conf

Activer les lignes suivantes, et remplacer votre-longue-adresse-onion-v3 par l'adresse .onion affichée précédemment

TXT
tx-proxy=tor,127.0.0.1:9050,disable_noise
TXT
anonymous-inbound=votre-longue-adresse-onion-v3.onion:18084,127.0.0.1:18084

Se déconnecter de root

TXT
exit

Vérifier le bon fonctionnement

TXT
curl -x socks5h://127.0.0.1:9050 http://votre-longue-adresse-onion-v3.onion:18089/get_info

Une des lignes doit afficher "status": "OK"

Le service I2P

Son utilité

De la même manière que pour Tor, i2p active les services suivants :
  • votre-longue-adresse.b32.i2p:18085 - service P2P i2p (pour les autres nœuds i2p)
  • votre-longue-adresse.b32.i2p:18089 - service RPC i2p (pour les portefeuilles se connectant via i2p)

Se connecter temporairement en root

TXT
sudo su -

Installer i2p

TXT
wget -q -O - https://repo.i2pd.xyz/.help/add_repo | bash -s -
apt update
apt install i2pd

Créer un tunnel serveur pour les ports P2P et RPC

TXT
cat << EOF > /etc/i2pd/tunnels.conf.d/monero-mainnet.conf
[monero-node]
type = server
host = 127.0.0.1
# Anonymous inbound port
port = 18085
inport = 0
keys = monero-mainnet.dat

[monero-rpc]
type = server
host = 127.0.0.1
# Restricted RPC port
port = 18089
keys = monero-mainnet.dat
EOF

Redémarrer i2pd

TXT
systemctl restart i2pd

Connaître la nouvelle adresse i2p du noeud

TXT
curl -s http://127.0.0.1:7070/?page=i2p_tunnels | grep -Eo "[a-zA-Z0-9./?=_%:-]*" | grep "18089"

Modifier le fichier de configuration de Monero

TXT
nano /monero/monerod.conf

Activer les lignes suivantes, et remplacer votre-longue-adresse.b32 par l'adresse .i2p affichée précédemment

TXT
tx-proxy=i2p,127.0.0.1:4447,disable_noise
TXT
anonymous-inbound=votre-longue-adresse.b32.i2p,127.0.0.1:18085

Se déconnecter de root

TXT
exit

Vérifier le bon fonctionnement

TXT
curl -x socks5h://127.0.0.1:4447 http://votre-longue-adresse.b32.i2p:18089/get_info

Une des lignes doit afficher "status": "OK"