Come Installare il Tuo Twitter Federato con Pleroma

Pleroma Twitter Featured

Il microblogging è un modo meraviglioso per esprimere i tuoi pensieri. È breve, conciso e dolce. A questo proposito, Twitter è stata una delle piattaforme di microblogging più popolari al mondo. Tuttavia, fare affidamento su questa particolare azienda per le tue esigenze di microblogging potrebbe non essere la soluzione migliore per tutti.

Fortunatamente, ci sono alternative come Pleroma che è un Twitter auto-ospitato. Questa è una piattaforma di microblogging federata leggera. Utilizzare la federazione consente alla piattaforma di comunicare con altre istanze federate, il che significa che non è necessario radunare molte persone per il tuo Twitter privato per iniziare a condividere informazioni. Questo articolo ha lo scopo di aiutarti a iniziare con Pleroma.

Indice

  • Il Problema con Twitter
  • Cos’è la Federazione e Come Funziona
  • Come Installare Pleroma
    1. Configura i Tuoi Record DNS A e AAAA
    1. Ottieni le Dipendenze di Pleroma
    1. Crea l’Utente Pleroma
    1. Scarica Pleroma
    1. Prepara e Installa Pleroma
    1. Configura l’Installazione di Pleroma
    1. Configurazioni Specifiche per i Media
    1. Finalizza la Tua Configurazione di Pleroma
    1. Avvia il Database di Pleroma
    1. Avvia il Tuo Server Pleroma
    1. Configurazioni Finali
  • Domande Frequenti

Leggi anche: Le 7 Migliori Distribuzioni Basate su Debian da Provare Se Vuoi un’Alternativa a Ubuntu

Il Problema con Twitter

Twitter è noto per bannare casualmente account per vaghe infrazioni delle politiche. Se sei qualcuno che ha accumulato anni di post su Twitter, perdere quella storia può essere devastante. Non solo, Twitter è anche noto per consegnare i dati degli utenti sia agli inserzionisti che alle agenzie governative.

Questo rende Twitter una piattaforma non sicura per le persone che vogliono avere il controllo completo sui propri dati o per i giornalisti che riportano su argomenti controversi.

Cos’è la Federazione e Come Funziona

Una soluzione a questo problema è costruire una rete sociale attraverso la federazione dei server. Questo è un sistema in cui consenti a più server che eseguono software simile di comunicare tra loro in modo trasparente.

Per questo motivo, qualsiasi server federato può fungere da nodo per l’intera rete, dove puoi accedere e partecipare con altri server.

Pleroma Server 03 Federated Network

A sua volta, questo crea un ecosistema resiliente in grado di adattarsi facilmente a qualsiasi circostanza. Ad esempio, se un server Pleroma si guasta, non porrà fine alla rete federata di Pleroma. Potrebbe ridurre la quantità di post all’interno della rete, ma altri server saranno ancora in grado di comunicare tra loro.

Leggi anche: Come Installare Debian via Internet

Come Installare Pleroma

Pleroma richiede una serie di cose prima di poter iniziare a configurarlo:

  • Prima di tutto, devi avere una macchina pubblicamente scopribile. Questa potrebbe essere una macchina a casa tua che puoi portare avanti o un VPS che hai acquistato da un fornitore.
  • Inoltre, se stai utilizzando un VPS per installare Pleroma, devi avere accesso root a quel VPS. Questo perché installerai pacchetti di cui Pleroma ha bisogno per funzionare correttamente.
  • Infine, devi avere un nome di dominio. Questo perché certbot, l’utilità per i certificati SSL, richiederà un nome di dominio per generare un certificato per la tua istanza Pleroma.

Tenendo presente ciò, questa guida si concentrerà sull’installazione di Pleroma su un VPS basato su Debian di Digitalocean.

1. Configura i Tuoi Record DNS A e AAAA

Prima di iniziare, è saggio collegare prima il tuo nome di dominio all’indirizzo IP del tuo VPS.

Pleroma Server 05 Sample Dns Record

Questo assicura che qualsiasi comando che fa riferimento al tuo nome di dominio qui sotto si risolva correttamente. Pertanto, questo diventa particolarmente utile una volta che configuri i tuoi certificati SSL più avanti.

  1. Per collegare il tuo nome di dominio all’indirizzo IP del tuo VPS, devi modificare il record DNS del tuo nome di dominio. Anche se potresti utilizzare un servizio di registrazione di domini diverso dal mio, il processo di collegamento del tuo nome di dominio all’indirizzo del tuo VPS è sostanzialmente lo stesso.
  2. Nel mio caso, ho collegato il mio nome di dominio: yetanotherpleromaserver.xyz al mio VPS di Digitalocean tramite Namesilo. Per farlo, ho prima accesso alla finestra di gestione dei domini di Namesilo.

Pleroma Server 06 Domain Manager

  1. Da qui, devi cliccare sul nome di dominio. Questo apre le impostazioni per quel dominio specifico.
  2. Successivamente, fai clic sul link “Record DNS”. Questo mostrerà tutti i record DNS disponibili per il tuo nome di dominio.

Pleroma Server 38 Dns Records 2

  1. Una volta fatto, ho aggiunto una risorsa “A” al mio record DNS facendo clic sul link “A” nella casella “Aggiungi/Modifica un Record di Risorsa” nella pagina dei record di Namesilo.

Pleroma Server 08 Highlight A Record

  1. Da lì, l’unica cosa che dovevo fare era aggiungere l’indirizzo IPv4 del mio VPS di Digitalocean.

Pleroma Server 09 Added A Record

  1. Il processo di aggiunta di un record “AAAA” è anche lo stesso. Tuttavia, invece di fare clic sul link “A”, farò clic sul link “AAAA”. Inoltre, invece di aggiungere l’indirizzo IPv4, aggiungerò l’indirizzo IPv6.

Pleroma Server 10 Added Aaaa Record

Leggi anche: 5 Migliori Distribuzioni Linux-Libre per Maggiore Sicurezza

2. Ottieni le Dipendenze di Pleroma

La prossima cosa che devi fare è scaricare tutti i pacchetti di cui Pleroma ha bisogno. Come discusso sopra, evidenzierò solo il processo di installazione per distribuzioni Linux basate su Debian e Ubuntu. Pertanto, utilizzerò apt per installare tutti i pacchetti richiesti.

Tenendo presente ciò, Pleroma dipende da tre programmi principali: postgresql, elixir e erlang. Pertanto, devi installare questi programmi così come un paio di altri che completeranno quei tre nel fare il loro lavoro.

Per farlo, puoi eseguire il seguente comando:

sudo apt install git build-essential postgresql postgresql-contrib cmake libmagic-dev elixir erlang-dev erlang-nox nginx certbot

Pleroma Server 11 Installing Packages

3. Crea l’Utente Pleroma

Fatto ciò, la prossima cosa che devi fare è creare l’account utente “pleroma”. Questo è l’account che utilizzerai per scaricare e installare il pacchetto Pleroma. Farlo in questo modo assicura che il programma Pleroma non abbia accesso superutente al tuo sistema.

Per farlo, puoi eseguire il seguente comando:

sudo useradd -r -s /bin/false -m -d /var/lib/pleroma -U pleroma
  • L’opzione -r imposterà l’utente “pleroma” come account di sistema piuttosto che come account utente.
  • Inoltre, l’opzione -s imposterà la shell di accesso per questo utente su “false”. Questo assicura che l’utente pleroma, da solo, non possa eseguire alcun comando da una shell.
  • D’altra parte, i flag -m e -d impostano la home directory per l’utente “pleroma”. Il flag -m imposta esplicitamente l’account per avere una home directory e il flag -d imposta quella directory per puntare a “/var/lib/pleroma”.
  • Infine, il flag -U crea un gruppo utente con lo stesso nome e aggiunge il nuovo utente Pleroma a quel gruppo.

Pleroma Server 12 Add Pleroma User

4. Scarica Pleroma

Da lì, puoi ora scaricare il pacchetto Pleroma dai loro repository. Per farlo, devi prima creare la directory in cui i file verranno scaricati:

sudo mkdir -p /opt/pleroma  
sudo chown -R pleroma:pleroma /opt/pleroma
  • Il primo comando creerà la directory “pleroma” dove scaricherai tutti i file per il programma.
  • Il secondo comando, d’altra parte, trasferirà la proprietà di quella cartella da root a pleroma. Questo permetterà quindi a pleroma di leggere e scrivere da questa cartella senza problemi.

Pleroma Server 13 Create Directory

Una volta fatto, la prossima cosa da fare è scaricare il codice sorgente di Pleroma stesso. Per farlo, devi usare git:

sudo -Hu pleroma git clone -b stable https://git.pleroma.social/pleroma/pleroma /opt/pleroma

Pleroma Server 14 Git Clone

5. Prepara e Installa Pleroma

Ora puoi andare nella directory /opt/pleroma per iniziare il processo di installazione del programma:

cd /opt/pleroma

Da lì, devi eseguire il programma Mix per scaricare tutte le dipendenze aggiuntive per Pleroma. Per farlo, puoi eseguire il seguente comando:

sudo -Hu pleroma mix deps.get

Pleroma Server 15 Get Deps

Una volta fatto, puoi ora procedere con la compilazione e l’installazione di Pleroma. In questo caso, devi solo eseguire un comando:

sudo -Hu pleroma MIX_ENV=prod mix pleroma.instance gen

Questo comando farà tre cose:

  • Prima di tutto, l’opzione MIX_ENV=prod imposterà la variabile di ambiente del programma per mirare a una configurazione di produzione. Questo significa che il programma non conterrà strumenti e file di sviluppo.
  • L’opzione gen creerà un file di configurazione che mira alla variabile di ambiente che hai fornito.
  • Infine, questo comando compilerà e installerà Pleroma dal suo codice sorgente. Pertanto, questo processo richiederà del tempo a seconda dell’hardware su cui lo stai eseguendo.

Pleroma Server 16 Install And Compile Pleroma

Leggi anche: Come Risolvere il Loop di Accesso di Ubuntu

6. Configura l’Installazione di Pleroma

Una volta che Pleroma ha finito di compilare, ti chiederà alcune informazioni sul tuo server.

  1. Prima di tutto, avrà bisogno del nome di dominio che desideri utilizzare per il programma. Nel mio caso, ho usato il mio nome di dominio: “yetanotherpleromaserver.xyz”.

Pleroma Server 17 Domain Name Config

  1. Da lì, lo script di configurazione ti chiederà il nome che desideri per il tuo server Pleroma. Nel mio caso, ho usato lo stesso nome: “Yet Another Pleroma Server” per il mio server.

Pleroma Server 18 Server Name

  1. Successivamente, inserisci il tuo indirizzo email amministrativo. Questo dovrebbe essere un’email valida che può ricevere e inviare email.

Pleroma Server 19 Admin Email

  1. Ora seleziona se desideri che la tua istanza Pleroma sia ricercabile dai motori di ricerca. Questo è utile se desideri creare un’istanza Pleroma pubblica a cui altre persone possono unirsi e accedere. Nel mio caso, volevo che questo server fosse privato, quindi ho selezionato “n”.

Pleroma Server 21 Search Engine Indexing

  1. Dopo di che, lo script ti chiederà se desideri salvare la tua configurazione in un file di database. Per la maggior parte, vorrai selezionare “sì” qui e selezionare le opzioni predefinite che ti verranno chieste.

Pleroma Server 22 Local Database

  1. Infine, lo script richiederà di aggiungere alcuni dettagli su quale porta e indirizzo ascoltare. Se stai installando Pleroma sulla stessa macchina su cui lo stai configurando, è sicuro lasciare i valori predefiniti qui.

7. Configurazioni Specifiche per i Media

  1. Ora, lo script di configurazione richiederà di selezionare dove desideri salvare i file multimediali che verranno caricati sul server. Simile alle impostazioni sopra, è sicuro lasciare queste su predefiniti.

  2. Successivamente, decidi se desideri rimuovere qualsiasi geolocalizzazione dai dati EXIF delle foto che riceverai. Questo è utile se desideri preservare la privacy dell’upload. Poiché utilizzerò solo questo come istanza privata, ho selezionato “no” qui.

  3. Inoltre, dovrai decidere se desideri anonimizzare i nomi dei file degli upload. Questo è particolarmente utile se desideri rimuovere qualsiasi associazione con l’upload e ciò che hanno caricato. Nel mio caso, ho selezionato anche “no” qui.

  4. Infine, lo script di configurazione ti permetterà di scegliere se desideri creare più copie dei file che vengono caricati sul tuo server. Nel mio caso, ho selezionato “no”.

8. Finalizza la Tua Configurazione di Pleroma

  1. Ora puoi visualizzare il tuo file di configurazione. Questo si trova in “/opt/pleroma/config/generated_config.exs”. Puoi usare less per visualizzarlo:
less /opt/pleroma/config/generated_config.exs
  1. Per finalizzare questa configurazione, devi rinominare questo file in “prod.secret.exs”. Puoi farlo eseguendo il seguente comando:
sudo -Hu pleroma mv config/{generated_config.exs,prod.secret.exs}

Pleroma Server 28 Config Folder

Leggi anche: Cos’è la Rete Yggdrasil e Come Installarla

9. Avvia il Database di Pleroma

  1. La prossima cosa che devi fare è avviare il programma del database. Per farlo, puoi utilizzare il database fornito da Pleroma. Puoi caricare quel database eseguendo il seguente comando:
sudo -Hu postgres psql -f /opt/pleroma/config/setup_db.psql

Pleroma Server 29 Import Database

  1. Da lì, puoi ora collegare postgres e Pleroma migrando il database postgres a Pleroma. Per farlo, puoi eseguire il seguente comando:
sudo -Hu pleroma MIX_ENV=prod mix ecto.migrate

Pleroma Server 30 Migrate Database

10. Avvia il Tuo Server Pleroma

Ora è il momento di eseguire il tuo server Pleroma. Puoi farlo eseguendo il seguente comando:

sudo -Hu pleroma MIX_ENV=prod mix phx.server

Pleroma Server 31 First Run

Tuttavia, questo server è ancora inaccessibile dal browser normale. Per consentirlo, devi prima configurare certbot e nginx.

Leggi anche: 9 dei Migliori Client Email per Linux

Configurare Certbot per Pleroma

  1. Configurare certbot è relativamente semplice. Prima di tutto, devi creare la cartella in cui verranno salvati i certificati. Puoi farlo eseguendo il seguente comando:
sudo mkdir -p /var/lib/letsencrypt/
  1. Fatto ciò, puoi ora generare un certificato per il tuo server Pleroma. Per farlo, puoi eseguire questo comando:
sudo certbot certonly --email [email protected] -d yourpleromaserver.com --standalone

Pleroma Server 32 Certbot Finished

Configurare Nginx per Pleroma

  1. Da lì, la prossima cosa che devi fare è configurare il tuo server web nginx per Pleroma. L’installazione di Pleroma fornisce già un modello che puoi copiare nella directory di configurazione di nginx. Per farlo, puoi eseguire il seguente comando:
sudo cp /opt/pleroma/installation/pleroma.nginx /etc/nginx/sites-available/pleroma.nginx
  1. Successivamente, devi modificare questo file di configurazione per adattarlo al tuo server Pleroma. Nella maggior parte dei casi, questo comporterà solo la modifica di quattro variabili: server_name, ssl_trusted_certificate, ssl_certificate e ssl_certificate_key.
  2. Per la prima variabile, devi cambiare il valore “example.tld” con il nome di dominio del tuo server. Nel mio caso, ho cambiato questo in “yetanotherpleromaserver.xyz”.

Pleroma Server 33 Nginx Config Server Name

  1. Da lì, le prossime tre variabili puntano tutte alla posizione del certificato SSL del tuo dominio. Se hai creato il tuo certificato seguendo questa guida, quel percorso sarà “/etc/letsencrypt/live/yourdomain.name/“.
  2. Questo è già fornito dal modello nginx e l’unica cosa rimasta da fare è cambiare il valore “example.tld” con il tuo nome di dominio.

Pleroma Server 34 Ssl Cert Config

  1. Fatto ciò, puoi ora abilitare la tua configurazione nginx creando un collegamento simbolico alla directory nginx attiva. Per farlo, puoi eseguire il seguente comando:
sudo ln -s /etc/nginx/sites-available/pleroma.nginx /etc/nginx/sites-enabled/pleroma.nginx
  1. Dopo di che, puoi ora avviare nginx abilitando il suo servizio systemctl:
sudo systemctl enable nginx.service

11. Configurazioni Finali

  1. Da qui, puoi ora configurare il servizio di sistema per Pleroma e creare il tuo primo utente. Per impostazione predefinita, Pleroma include un modello systemctl per abilitare il suo servizio tramite systemd. Per utilizzare quel modello, puoi eseguire il seguente comando:
sudo cp /opt/pleroma/installation/pleroma.service /etc/systemd/system/pleroma.service

Pleroma Server 35 Copy Systemd Service

  1. Ora, puoi quindi abilitare Pleroma tramite systemctl eseguendo questo comando:
sudo systemctl enable pleroma.service

Pleroma Server 36 Enable Pleroma Service

  1. Infine, puoi ora creare il tuo primo utente per la tua istanza Pleroma eseguendo il comando pleroma.user:
sudo -Hu pleroma MIX_ENV=prod mix pleroma.user new yourusername [email protected] --admin

Pleroma Server 37 Done Installing

Leggi anche: Come Risolvere il Problema di Non Riuscire a Digitare nel Terminale in Linux

Domande Frequenti

1. Le immagini che carico hanno ancora dati di geolocalizzazione in esse. Cosa ho sbagliato?

Questo può essere dovuto a diversi motivi. Tuttavia, la ragione più comune per cui ciò è accaduto è che non hai il pacchetto exiftool. Per la guida sopra, exiftool non era un pacchetto installato di default.

Pertanto, per rimuovere la geolocalizzazione delle immagini che carichi, devi aggiungere quel pacchetto manualmente. Per farlo, puoi eseguire il seguente comando:

sudo apt install exiftool

2. Non riesco a generare un Certificato Letsencrypt. Cosa ho sbagliato?

Questo può anche essere dovuto a diversi motivi. Tuttavia, la causa più comune per questo è che nginx è ancora in esecuzione.

Per far funzionare il comando certbot, devi avere le porte web comuni aperte e non occupate da alcun programma. Per disabilitare nginx, puoi eseguire il seguente comando:

sudo systemctl stop nginx

Crediti immagine: Pleroma