La mascotte orso polare di NordBastion in una sala nordica in pietra al centro di un cerchio di rune luminoso sul pavimento, sei sfere di nodi server federati ciano-e-viola tenue disposte intorno a lui a mezz'aria con linee di connessione ciano che le collegano in una rete di federazione
Come fare · Self-host·11 min di lettura · 90 min di pratica

Ospiti Mastodon in autonomia su un VPS.
Il suo angolo del fediverso, su metallo nordico di proprietà.

Sei passaggi, ~90 minuti, pronto per la federazione. Deployment con Docker Compose su Mastodon 4.3+ — il percorso raccomandato dai maintainer.

I sei passaggi
  1. 01

    Provisioning

    Ravelin / Bulwark

  2. 02

    Dominio

    Record A + AAAA

  3. 03

    Installare

    docker compose

  4. 04

    SMTP

    Relay o autonomo

  5. 05

    TLS + nginx

    certbot

  6. 06

    Admin + federare

    Primo post

Passo 01-02 · Configurazione

VPS + dominio, due decisioni preliminari.

Tier VPS. Ravelin ($23.90/mese, 8 vCPU / 16 GB / 480 GB NVMe) è la soglia pratica per un'istanza Mastodon con federazione attiva. La coda Sidekiq cresce con il numero di attori remoti seguiti; 16 GB di RAM la mantengono gestibile fino a qualche centinaio di account seguiti. Bulwark ($46.90/mese, 32 GB) per istanze con 50+ utenti o 1.000+ peer federati.

Bastione. La federazione di Mastodon è globale, quindi la latenza verso un qualsiasi bastione non è dominante. Scegliere la giurisdizione sotto cui si vuole che risiedano i dati — tipicamente Stockholm o Reykjavík per la visibilità sulla riga «dove è ospitato» del fediverso nella pagina about.

Dominio. Mastodon incorpora il dominio in ogni nome utente. Sceglierlo con leggerezza e cambiarlo in seguito significa che ogni utente deve migrare. Due percorsi di registrazione anonima: Njalla (si registrano a nome loro, l'utente controlla l'account; pagato in crypto, no-KYC), o qualsiasi registrar standard tramite uno swap crypto-a-carta non-KYC. In ogni caso, impostare un record A per IPv4 + AAAA per IPv6 che punta al VPS, e un record TXT vuoto per ora (DKIM se si fa self-host di SMTP in seguito).

Passo 03 · Installazione

Docker Compose, il percorso raccomandato dai maintainer.

# Install Docker + Compose
apt install -y docker.io docker-compose-plugin

# Clone Mastodon
adduser --disabled-login mastodon
sudo -u mastodon -i
git clone https://github.com/mastodon/mastodon
cd mastodon
git checkout v4.3.0

# Configure
cp .env.production.sample .env.production
# Edit .env.production: LOCAL_DOMAIN, SECRET_KEY_BASE, OTP_SECRET (generate), 
# SMTP_*, DB_*, REDIS_*

# Initialise DB + start
docker compose run --rm web bundle exec rake db:setup
docker compose up -d

SECRET_KEY_BASE e OTP_SECRET devono essere stringhe casuali lunghe — generi con openssl rand -hex 64. NON le rigeneri dopo il lancio — perderle esclude tutti gli utenti esistenti.

Passo 04-05 · E-mail + TLS

Relay SMTP + certbot, i due elementi noiosi ma necessari.

SMTP. Mastodon invia email di conferma, reset password e notifica. Il percorso affidabile più economico è un relay SMTP — Sendinblue / Brevo (tier gratuito 300/giorno), Mailgun (gratuito 5K/mese), Postmark. I puristi della privacy fanno self-host di un relay postfix in uscita sullo stesso VPS, ma aspettarsi una settimana di mal di testa sulla deliverability mentre la posta a IP nuovo viene greylisted da Gmail/Outlook. Per una piccola istanza il relay SMTP è il giusto compromesso.

TLS. Installare certbot (apt install certbot python3-certbot-nginx) poi eseguire certbot --nginx -d your-domain.com. Let's Encrypt emette il certificato in pochi secondi; il rinnovo automatico è configurato di default. Il campione di configurazione nginx per Mastodon è in dist/nginx.conf — copiare in /etc/nginx/sites-available/mastodon, collegare a sites-enabled, ricaricare.

Visiti https://your-domain.com — si carica la schermata di configurazione di Mastodon. Se vede «impossibile raggiungere il sito», il firewall sta bloccando la porta 443; se vede un errore TLS, certbot non ha puntato nginx al nuovo certificato.

Passo 06 · Admin + federazione

Primo admin, primo post, prima federazione. In pochi minuti.

docker compose run --rm web bin/tootctl accounts create \
  admin --email you@example --confirmed --role Owner

Il comando restituisce una password monouso. Acceda su https://your-domain.com, cambi la password, configuri il 2FA, modifichi la pagina about e le regole dell'istanza.

Seguire alcuni account ben connessi nel fediverso (la scheda «Esplora» di Mastodon li mostra). La federazione si propaga in pochi minuti — i post degli account che si seguono iniziano ad arrivare nella propria timeline; i propri post appaiono nelle loro istanze quando attori remoti ricambiano il follow.

Appuntare un post sulle regole della casa, scrivere un annuncio «cosa è questa istanza», e l'istanza è live. Registrazione chiusa di default; aprirla in seguito quando la capacità di moderazione lo consente.

FAQ · Mastodon

Domande, con risposta.

Otto domande che un admin Mastodon alla prima esperienza pone prima di aprire l'istanza.

Perché ospitare Mastodon in autonomia invece di unirsi a mastodon.social?

Tre motivi. (1) I suoi dati sono sul suo server. Le grandi istanze pubbliche sono gestite da volontari e operatori in buona fede, ma i dati vivono dove decidono loro. (2) Le sue regole. Scrive le regole della casa e le fa rispettare. Le grandi istanze ereditano decisioni di moderazione con cui potrebbe non essere d'accordo. (3) La sua identità di dominio. @lei@suodominio si legge come «lei, sul suo server» anziché «lei, cliente del servizio pubblico X.» Per la maggior parte degli utenti unirsi a un'istanza pubblica va bene; per chi vuole sovranità d'identità a lungo termine, il self-hosting è la strada.

Un livello Sentinel può davvero eseguire Mastodon?

Tecnicamente sì per un'istanza a singolo utente con federazione limitata. Realisticamente no per qualsiasi cosa oltre 1-5 account federati. La coda Sidekiq di Mastodon cresce in modo non lineare con il numero di attori remoti seguiti; a 50-100 account seguiti il ritardo della coda su una macchina da 4 GB diventa percettibile. Ravelin ($23.90/mese, 16 GB RAM) è la soglia pratica. Bulwark per un'istanza con 50+ utenti o 1.000+ peer federati.

Dove registro un dominio in modo anonimo?

Due percorsi pratici. (1) Njalla registra il dominio a suo nome e la elenca come cliente — lo scudo del registrar è reale. Accettano crypto e non hanno KYC. (2) Qualsiasi registrar convenzionale tramite uno swap crypto-to-fiat no-KYC — acquisti una carta prepagata da $15 per XMR su un servizio no-KYC, si registri presso qualsiasi registrar che accetta carte, usi un'e-mail rispettosa della privacy. Il percorso Njalla è più pulito ma leggermente più costoso; il percorso convenzionale è più economico ma ha più componenti.

La banda in Mastodon è un problema serio?

Non è trascurabile ma raramente è un vincolo su un VPS reale. La federazione invia ogni post pubblico a ogni istanza remota che segue, moltiplicato per i media (immagini, video). Una piccola istanza mono-utente usa ~5-10 GB/mese in uscita; un'istanza a 50 utenti mediamente attiva usa 100-300 GB; un'istanza popolare a 1.000 utenti va da 1-5 TB. I piani VPS NordBastion hanno banda illimitata a ogni livello, quindi non è un vettore di costo.

Devo chiudere le registrazioni o lasciarle aperte?

Partire con registrazione chiusa (solo su invito). La registrazione aperta crea immediatamente un onere di moderazione — account spam, abusi e il lavoro di moderazione che ne consegue. La registrazione chiusa è la raccomandazione predefinita degli admin Mastodon e corrisponde al modo in cui operano la maggior parte delle istanze più piccole di successo. Si può cambiare in seguito man mano che la capacità di moderazione cresce.

Come si fa il backup della propria istanza Mastodon?

Tre cose da sottoporre a backup: (1) il database Postgres (mastodon_production), (2) il file .env.production (impostazioni env), (3) i file media in public/system/ (upload degli utenti — possono essere enormi, decine di GB). Gli snapshot VPS NordBastion coprono l'intero disco in un'unica operazione e sono il backup più semplice «istanza completa»; per backup granulari solo del DB, pg_dump su pianificazione. Esegua un backup prima di ogni aggiornamento di versione di Mastodon.

Posso migrare utenti dentro o fuori dalla mia istanza?

Sì — Mastodon supporta la migrazione dell'account in entrambe le direzioni. Un utente può importare le proprie liste di follower/following da un'istanza precedente, e annunciare un trasferimento a una nuova istanza che propaga automaticamente i redirect ai propri follower. I post non migrano (rimangono sull'istanza di origine), ma il grafo sociale sì. Questo rende il self-hosting a rischio ridotto: se in seguito decide di smettere di gestire l'istanza, i suoi utenti possono trasferirsi senza perdere le proprie reti.

Devo eseguire la mia istanza Mastodon tramite Tor?

La soluzione più pulita è l'accesso duale — clearnet primario più un mirror Tor hidden service. Configurare il hidden service seguendo /guides/tor-hidden-service-on-a-vps/, puntare sia il dominio che il .onion allo stesso nginx, e Mastodon serve entrambi. Nota: la federazione ActivityPub tra due istanze solo-Tor è insolita e potrebbe non interoperare con ogni software del fediverso; il clearnet primario mantiene la federazione, .onion aggiunge un percorso di accesso privacy per gli utenti.

Ultima revisione · 2026-05-20 · Testato · Mastodon 4.3 · Docker Compose · Debian 12