Comment contribuer

Hashiverse n'a aucune entreprise derrière lui ni serveurs propres. Sa résilience, sa disponibilité et sa résistance à la censure dépendent entièrement du nombre de serveurs indépendants présents dans le réseau. Chaque nœud que vous ajoutez rend le réseau plus difficile à attaquer, plus difficile à faire taire, et plus utile pour tous ceux qui s'y connectent. Si vous croyez à ce que Hashiverse cherche à être, faire tourner un serveur est la manière la plus directe d'aider.

La bonne nouvelle : ça coûte à peu près le prix d'un café par mois. Et si vous voulez contribuer davantage, le bon réflexe est de faire tourner plus de serveurs, pas un plus gros — dix machines à 5 $ réparties chez différents fournisseurs et dans différentes régions ont bien plus de valeur pour le réseau qu'une seule machine à 50 $.

Ce dont vous avez besoin

N'importe quel VPS bon marché chez n'importe quel fournisseur fera l'affaire — Hetzner, DigitalOcean, Vultr, Linode et bien d'autres proposent des machines adaptées pour environ 5 $/mois. Les exigences minimales sont modestes :

Les exigences en CPU et RAM sont minimales — le serveur est écrit en Rust et conçu pour fonctionner efficacement sur les plus petites tailles d'instance disponibles.

Installer et faire tourner le serveur

Un point important à noter est que lorsque vous démarrez un serveur, il doit effectuer une proof-of-work conséquente avant d'être désigné comme un emplacement de confiance dans le réseau Hashiverse. Ne soyez donc pas surpris si pendant les premières heures votre CPU est à fond et que les logs n'arrêtent pas de parler de PoWs, d'iters et d'ETA.

Nous recommandons n'importe quel serveur Linux standard. Ubuntu fait l'affaire, en 2024 ou en 2026. Collez ce qui suit dans le champ script de démarrage / user-data / cloud-init lorsque vous créez votre serveur (le nom varie selon les fournisseurs). Le script installe Docker, ouvre le pare-feu, écrit le fichier compose et démarre la pile.

#!/usr/bin/env bash
set -euo pipefail

export DEBIAN_FRONTEND=noninteractive
apt-get update
apt-get install -y docker.io docker-compose-v2 ufw

ufw allow 22/tcp
ufw allow from 0.0.0.0/0 to any port 443 proto tcp
ufw --force enable

mkdir -p /opt/hashiverse && cd /opt/hashiverse

cat > docker-compose.yml <<"YAML"
services:
  hashiverse-server:
    image: ghcr.io/hashiverse/hashiverse-server:latest
    restart: unless-stopped
    ports:
      - "0.0.0.0:443:443"
    cap_add:
      - NET_ADMIN
    volumes:
      - ./data:/data
    logging:
      driver: local
      options:
        max-size: 10m
        max-file: "5"

  watchtower:
    image: nickfedor/watchtower
    restart: unless-stopped
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    command: --interval 3600
YAML

docker compose pull
docker compose up -d

Watchtower maintiendra automatiquement le serveur à jour à mesure que de nouvelles versions sortent. La capacité NET_ADMIN est requise pour la protection DDoS intégrée du serveur, qui utilise ipset et iptables pour rejeter au niveau du noyau le trafic provenant d'IPs abusives. Le volume ./data est l'endroit où le serveur persiste son identité et les publications chiffrées qu'il stocke — gardez-le à l'abri si la continuité vous importe, bien que Hashiverse soit conçu pour s'auto-réparer si vous détruisez un serveur et en démarrez un autre.