So installieren Sie Ihr eigenes föderiertes Twitter mit Pleroma

Microblogging ist eine wunderbare Möglichkeit, Ihre Gedanken auszudrücken. Es ist kurz, prägnant und süß. In dieser Hinsicht war Twitter eine der beliebtesten Microblogging-Plattformen der Welt. Allerdings ist es nicht für jeden die beste Lösung, sich auf dieses spezielle Unternehmen für seine Microblogging-Bedürfnisse zu verlassen.
Glücklicherweise gibt es Alternativen wie Pleroma, das ein selbstgehostetes Twitter ist. Dies ist eine leichtgewichtige föderierte Microblogging-Plattform. Die Verwendung von Föderation ermöglicht es der Plattform, mit anderen föderierten Instanzen zu kommunizieren, was bedeutet, dass Sie nicht viele Menschen versammeln müssen, um Ihr eigenes privates Twitter zu starten, um Informationen zu teilen. Dieser Artikel soll Ihnen helfen, mit Pleroma zu beginnen.
Inhaltsverzeichnis
- Das Problem mit Twitter
- Was ist Föderation und wie funktioniert sie
- So installieren Sie Pleroma
- Richten Sie Ihre A- und AAAA-DNS-Einträge ein
- Beschaffen Sie die Pleroma-Abhängigkeiten
- Erstellen Sie den Pleroma-Benutzer
- Laden Sie Pleroma herunter
- Bereiten Sie Pleroma vor und installieren Sie es
- Konfigurieren Sie die Pleroma-Installation
- Medien-spezifische Konfigurationen
- Finalisieren Sie Ihre Pleroma-Konfiguration
- Starten Sie die Pleroma-Datenbank
- Starten Sie Ihren Pleroma-Server
- Letzte Konfigurationen
- Häufig gestellte Fragen
Lesen Sie auch: Die 7 besten Debian-basierten Distributionen, die Sie ausprobieren sollten, wenn Sie eine Ubuntu-Alternative suchen
Das Problem mit Twitter
Twitter ist dafür bekannt, Konten aufgrund vager Richtlinienverstöße willkürlich zu sperren. Wenn Sie jemand sind, der über Jahre hinweg Beiträge auf Twitter angesammelt hat, kann der Verlust dieser Geschichte verheerend sein. Darüber hinaus ist bekannt, dass Twitter Benutzerdaten sowohl an Werbetreibende als auch an Regierungsbehörden weitergibt.
Dies macht Twitter zu einer unsicheren Plattform für Menschen, die entweder die vollständige Kontrolle über ihre Daten haben möchten, oder für Journalisten, die über umstrittene Themen berichten.
Was ist Föderation und wie funktioniert sie
Eine Lösung für dieses Problem besteht darin, ein soziales Netzwerk durch Serverföderation aufzubauen. Dies ist ein System, bei dem Sie mehreren Servern, die ähnliche Software ausführen, erlauben, transparent miteinander zu kommunizieren.
Dadurch kann jeder föderierte Server als Knoten für das gesamte Netzwerk fungieren, auf das Sie zugreifen und mit anderen Servern interagieren können.

Dies schafft ein widerstandsfähiges Ökosystem, das sich leicht an jede Situation anpassen kann. Wenn beispielsweise ein Pleroma-Server ausfällt, würde dies das Pleroma-föderierte Netzwerk nicht beenden. Es könnte die Anzahl der Beiträge im Netzwerk verringern, aber andere Server können weiterhin miteinander kommunizieren.
Lesen Sie auch: So installieren Sie Debian über das Internet
So installieren Sie Pleroma
Pleroma benötigt eine Reihe von Dingen, bevor Sie mit der Einrichtung beginnen können:
- Zuerst müssen Sie einen öffentlich auffindbaren Rechner haben. Dies könnte entweder ein Rechner in Ihrem Zuhause sein, den Sie portforwarden können, oder ein VPS, den Sie von einem Anbieter gekauft haben.
- Wenn Sie einen VPS verwenden, um Pleroma zu installieren, benötigen Sie Root-Zugriff auf diesen VPS. Dies liegt daran, dass Sie Pakete installieren werden, die Pleroma benötigt, um ordnungsgemäß zu funktionieren.
- Schließlich benötigen Sie einen Domainnamen. Dies liegt daran, dass certbot, das SSL-Zertifikat-Utility, einen Domainnamen benötigt, um ein Zertifikat für Ihre Pleroma-Instanz zu generieren.
Mit diesem Wissen wird sich dieser Leitfaden auf die Installation von Pleroma auf einem Debian-basierten VPS von Digitalocean konzentrieren.
1. Richten Sie Ihre A- und AAAA-DNS-Einträge ein
Bevor Sie beginnen, ist es ratsam, zuerst Ihren Domainnamen mit der IP-Adresse Ihres VPS zu verknüpfen.

Dies stellt sicher, dass jeder Befehl, der im Folgenden auf Ihren Domainnamen verweist, ordnungsgemäß aufgelöst wird. Dies wird besonders nützlich, sobald Sie später Ihre SSL-Zertifikate einrichten.
- Um Ihren Domainnamen mit der IP-Adresse Ihres VPS zu verknüpfen, müssen Sie den DNS-Eintrag Ihres Domainnamens bearbeiten. Während Sie möglicherweise einen anderen Domain-Registrar-Service verwenden als ich, ist der Prozess, Ihren Domainnamen mit der Adresse Ihres VPS zu verknüpfen, weitgehend derselbe.
- In meinem Fall habe ich meinen Domainnamen: yetanotherpleromaserver.xyz mit meinem Digitalocean VPS über Namesilo verknüpft. Dazu habe ich zuerst das Domain-Manager-Fenster von Namesilo aufgerufen.

- Von hier aus müssen Sie auf den Domainnamen klicken. Dies öffnet die Einstellungen für diese spezifische Domain.
- Klicken Sie dann auf den Link “DNS-Einträge”. Dies zeigt alle verfügbaren DNS-Einträge für Ihren Domainnamen an.

- Sobald Sie fertig sind, habe ich einen “A”-Eintrag zu meinem DNS-Eintrag hinzugefügt, indem ich auf den “A”-Link im Feld “Ressourceneintrag hinzufügen/bearbeiten” auf der Aufzeichnungsseite von Namesilo geklickt habe.

- Von dort aus musste ich nur die IPv4-Adresse meines Digitalocean VPS hinzufügen.

- Der Prozess zum Hinzufügen eines “AAAA”-Eintrags ist ebenfalls derselbe. Statt auf den “A”-Link zu klicken, klicke ich auf den “AAAA”-Link. Außerdem werde ich anstelle der IPv4-Adresse die IPv6-Adresse hinzufügen.

Lesen Sie auch: 5 Beste Linux-Libre-Distributionen für bessere Sicherheit
2. Beschaffen Sie die Pleroma-Abhängigkeiten
Das nächste, was Sie tun müssen, ist, alle Pakete herunterzuladen, die Pleroma benötigt. Wie oben besprochen, werde ich nur den Installationsprozess für Debian- und Ubuntu-basierte Linux-Distributionen hervorheben. Daher werde ich apt verwenden, um alle erforderlichen Pakete zu installieren.
Mit diesem Wissen hängt Pleroma von drei Hauptprogrammen ab: postgresql, elixir und erlang. Daher müssen Sie diese Programme sowie ein paar weitere installieren, die diese drei bei ihrer Arbeit ergänzen.
Um dies zu tun, können Sie den folgenden Befehl ausführen:
sudo apt install git build-essential postgresql postgresql-contrib cmake libmagic-dev elixir erlang-dev erlang-nox nginx certbot

3. Erstellen Sie den Pleroma-Benutzer
Damit sind wir fertig, das nächste, was Sie tun müssen, ist, das Benutzerkonto “pleroma” zu erstellen. Dies ist das Konto, das Sie verwenden werden, um das Pleroma-Paket herunterzuladen und zu installieren. Auf diese Weise wird sichergestellt, dass das Pleroma-Programm keinen Superuser-Zugriff auf Ihr System hat.
Um dies zu tun, können Sie den folgenden Befehl ausführen:
sudo useradd -r -s /bin/false -m -d /var/lib/pleroma -U pleroma
- Die Option
-rsetzt den Benutzer “pleroma” als Systemkonto anstelle eines Benutzerkontos. - Außerdem setzt die Option
-sdie Login-Shell für diesen Benutzer auf “false”. Dies stellt sicher, dass der Pleroma-Benutzer selbst keine Befehle aus einer Shell ausführen kann. - Auf der anderen Seite setzen die Flags
-mund-ddas Home-Verzeichnis für den Benutzer “pleroma”. Das Flag-msetzt das Konto ausdrücklich auf ein Home-Verzeichnis und das Flag-dsetzt dieses Verzeichnis auf “ /var/lib/pleroma”. - Schließlich erstellt das Flag
-Ueine Benutzergruppe mit demselben Namen und fügt den neu erstellten Pleroma-Benutzer dieser Gruppe hinzu.

4. Laden Sie Pleroma herunter
Von dort aus können Sie jetzt das Pleroma-Paket aus ihren Repositories herunterladen. Dazu müssen Sie zuerst das Verzeichnis erstellen, in das die Dateien heruntergeladen werden:
sudo mkdir -p /opt/pleroma sudo chown -R pleroma:pleroma /opt/pleroma
- Der erste Befehl erstellt das Verzeichnis “pleroma”, in das Sie alle Dateien für das Programm herunterladen werden.
- Der zweite Befehl hingegen überträgt den Besitz dieses Ordners von root auf pleroma. Dies ermöglicht es Pleroma, ohne Probleme aus diesem Ordner zu lesen und zu schreiben.

Sobald dies erledigt ist, besteht der nächste Schritt darin, den Quellcode von Pleroma selbst herunterzuladen. Dazu müssen Sie git verwenden:
sudo -Hu pleroma git clone -b stable https://git.pleroma.social/pleroma/pleroma /opt/pleroma

5. Bereiten Sie Pleroma vor und installieren Sie es
Sie können jetzt in das Verzeichnis /opt/pleroma wechseln, um den Installationsprozess des Programms zu starten:
cd /opt/pleroma
Von dort aus müssen Sie das Mix-Programm ausführen, um alle zusätzlichen Abhängigkeiten für Pleroma zu ziehen. Dazu können Sie den folgenden Befehl ausführen:
sudo -Hu pleroma mix deps.get

Sobald dies erledigt ist, können Sie mit dem Kompilieren und Installieren von Pleroma fortfahren. Dazu müssen Sie nur einen Befehl ausführen:
sudo -Hu pleroma MIX_ENV=prod mix pleroma.instance gen
Dieser Befehl wird drei Dinge tun:
- Zuerst wird die Option
MIX_ENV=proddie Umgebungsvariable des Programms auf eine Produktionsumgebung setzen. Das bedeutet, dass das Programm keine Entwicklungstools und -dateien enthalten wird. - Die Option
generstellt eine Konfigurationsdatei, die auf die von Ihnen bereitgestellte Umgebungsvariable abzielt. - Schließlich wird dieser Befehl auch Pleroma aus seinem Quellcode kompilieren und installieren. Daher wird dieser Prozess je nach Hardware, auf der Sie es ausführen, einige Zeit in Anspruch nehmen.

Lesen Sie auch: So beheben Sie die Ubuntu-Anmelde-Schleife
6. Konfigurieren Sie die Pleroma-Installation
Sobald Pleroma mit dem Kompilieren fertig ist, wird es Sie nach einigen Informationen über Ihren Server fragen.
- Zuerst benötigt es den Domainnamen, den Sie für das Programm verwenden möchten. In meinem Fall habe ich meinen Domainnamen: “yetanotherpleromaserver.xyz” verwendet.

- Von dort aus wird das Konfigurationsskript nach dem Namen fragen, den Sie für Ihren Pleroma-Server verwenden möchten. In meinem Fall habe ich denselben Namen verwendet: “Yet Another Pleroma Server” für meinen Server.

- Als nächstes geben Sie Ihre Admin-E-Mail-Adresse ein. Dies sollte eine ordnungsgemäße E-Mail sein, die E-Mails empfangen und senden kann.

- Wählen Sie nun, ob Sie möchten, dass Ihre Pleroma-Instanz von Suchmaschinen durchsuchbar ist. Dies ist nützlich, wenn Sie eine öffentliche Pleroma-Instanz erstellen möchten, der andere beitreten und sich anmelden können. In meinem Fall wollte ich, dass dieser Server privat ist, also wählte ich “n”.

- Danach wird das Skript fragen, ob Sie Ihre Konfiguration in einer Datenbankdatei speichern möchten. In den meisten Fällen möchten Sie hier “ja” auswählen und die Standardoptionen auswählen, die es Ihnen anbieten wird.

- Schließlich wird das Skript Sie auffordern, einige Details darüber hinzuzufügen, auf welchem Port und an welcher Adresse zugehört werden soll. Wenn Sie Pleroma auf demselben Rechner installieren, auf dem Sie es konfigurieren, ist es sicher, die Standardwerte hier zu belassen.
7. Medien-spezifische Konfigurationen
Jetzt wird das Konfigurationsskript Sie auffordern, auszuwählen, wo Sie die Mediendateien speichern möchten, die auf den Server hochgeladen werden. Ähnlich wie bei den oben genannten Einstellungen ist es sicher, diese auf den Standardwerten zu belassen.
Entscheiden Sie als nächstes, ob Sie Geolokalisierungsdaten aus den EXIF-Daten der Fotos entfernen möchten, die Sie erhalten. Dies ist nützlich, wenn Sie die Privatsphäre des Uploaders wahren möchten. Da ich dies nur als private Instanz verwenden werde, habe ich hier “nein” ausgewählt.
Darüber hinaus müssen Sie entscheiden, ob Sie die Dateinamen der Uploads anonymisieren möchten. Dies ist besonders nützlich, wenn Sie jegliche Verbindung zwischen dem Uploader und dem, was er hochgeladen hat, entfernen möchten. In meinem Fall habe ich auch hier “nein” ausgewählt.
Schließlich wird das Konfigurationsskript Ihnen die Möglichkeit geben, mehrere Kopien der Dateien zu erstellen, die auf Ihren Server hochgeladen werden. In meinem Fall habe ich “nein” ausgewählt.
8. Finalisieren Sie Ihre Pleroma-Konfiguration
- Sie können jetzt Ihre Konfigurationsdatei anzeigen. Diese befindet sich in “ /opt/pleroma/config/generated_config.exs”. Sie können
lessverwenden, um sie anzuzeigen:
less /opt/pleroma/config/generated_config.exs
- Um diese Konfiguration abzuschließen, müssen Sie diese Datei in “prod.secret.exs” umbenennen. Dazu können Sie den folgenden Befehl ausführen:
sudo -Hu pleroma mv config/{generated_config.exs,prod.secret.exs}

Lesen Sie auch: Was ist das Yggdrasil-Netzwerk und wie installiert man es
9. Starten Sie die Pleroma-Datenbank
- Das nächste, was Sie tun müssen, ist, das Datenbankprogramm zu starten. Dazu können Sie die Datenbank verwenden, die Pleroma bereitgestellt hat. Sie können diese Datenbank laden, indem Sie den folgenden Befehl ausführen:
sudo -Hu postgres psql -f /opt/pleroma/config/setup_db.psql

- Von dort aus können Sie jetzt Postgres und Pleroma verknüpfen, indem Sie die Postgres-Datenbank zu Pleroma migrieren. Dazu können Sie den folgenden Befehl ausführen:
sudo -Hu pleroma MIX_ENV=prod mix ecto.migrate

10. Starten Sie Ihren Pleroma-Server
Jetzt ist es an der Zeit, Ihren Pleroma-Server auszuführen. Sie können dies tun, indem Sie den folgenden Befehl ausführen:
sudo -Hu pleroma MIX_ENV=prod mix phx.server

Dieser Server ist jedoch noch nicht über den regulären Browser zugänglich. Um dies zu ermöglichen, müssen Sie zuerst certbot und nginx konfigurieren.
Lesen Sie auch: 9 der besten E-Mail-Clients für Linux
Konfigurieren von Certbot für Pleroma
- Die Konfiguration von certbot ist relativ einfach. Zuerst müssen Sie den Ordner erstellen, in dem die Zertifikate gespeichert werden. Dazu können Sie den folgenden Befehl ausführen:
sudo mkdir -p /var/lib/letsencrypt/
- Damit können Sie jetzt ein Zertifikat für Ihren Pleroma-Server generieren. Dazu können Sie diesen Befehl ausführen:
sudo certbot certonly --email [email protected] -d yourpleromaserver.com --standalone

Konfigurieren von Nginx für Pleroma
- Von dort aus müssen Sie als nächstes Ihren nginx-Webserver für Pleroma konfigurieren. Die Pleroma-Installation bietet bereits eine Vorlage, die Sie in das Konfigurationsverzeichnis von nginx kopieren können. Dazu können Sie den folgenden Befehl ausführen:
sudo cp /opt/pleroma/installation/pleroma.nginx /etc/nginx/sites-available/pleroma.nginx
- Als nächstes müssen Sie diese Konfigurationsdatei bearbeiten, um sie an Ihren Pleroma-Server anzupassen. In den meisten Fällen müssen Sie nur vier Variablen ändern: server_name, ssl_trusted_certificate, ssl_certificate und ssl_certificate_key.
- Für die erste Variable müssen Sie den Wert “example.tld” in den Domainnamen Ihres Servers ändern. In meinem Fall habe ich dies in “yetanotherpleromaserver.xyz” geändert.

- Von dort aus zeigen die nächsten drei Variablen auf den Speicherort des SSL-Zertifikats Ihrer Domain. Wenn Sie Ihr Zertifikat gemäß diesem Leitfaden erstellt haben, wird dieser Pfad “ /etc/letsencrypt/live/yourdomain.name/“ sein.
- Dies wird bereits von der nginx-Vorlage bereitgestellt, und das einzige, was noch zu tun ist, ist, den Wert “example.tld” in Ihren Domainnamen zu ändern.

- Damit können Sie jetzt Ihre nginx-Konfiguration aktivieren, indem Sie einen symbolischen Link zum aktiven nginx-Verzeichnis erstellen. Dazu können Sie den folgenden Befehl ausführen:
sudo ln -s /etc/nginx/sites-available/pleroma.nginx /etc/nginx/sites-enabled/pleroma.nginx
- Danach können Sie nginx starten, indem Sie seinen systemctl-Dienst aktivieren:
sudo systemctl enable nginx.service
11. Letzte Konfigurationen
- Von hier aus können Sie jetzt den Systemdienst für Pleroma konfigurieren und Ihren ersten Benutzer erstellen. Standardmäßig enthält Pleroma eine systemctl-Vorlage, um seinen Dienst über systemd zu aktivieren. Um diese Vorlage zu verwenden, können Sie den folgenden Befehl ausführen:
sudo cp /opt/pleroma/installation/pleroma.service /etc/systemd/system/pleroma.service

- Jetzt können Sie Pleroma über systemctl aktivieren, indem Sie diesen Befehl ausführen:
sudo systemctl enable pleroma.service

- Schließlich können Sie jetzt Ihren ersten Benutzer für Ihre Pleroma-Instanz erstellen, indem Sie den Befehl
pleroma.userausführen:
sudo -Hu pleroma MIX_ENV=prod mix pleroma.user new yourusername [email protected] --admin

Lesen Sie auch: So beheben Sie das Problem “Kann nicht im Terminal tippen” in Linux
Häufig gestellte Fragen
1. Die Bilder, die ich hochlade, haben immer noch Geolokalisierungsdaten. Was habe ich falsch gemacht?
Das kann auf verschiedene Dinge zurückzuführen sein. Der häufigste Grund, warum dies passiert ist, dass Sie das Paket exiftool nicht installiert haben. Für den obigen Leitfaden war exiftool kein Paket, das standardmäßig installiert wurde.
Um die Geolokalisierung für die Bilder, die Sie hochladen, zu entfernen, müssen Sie dieses Paket manuell hinzufügen. Dazu können Sie den folgenden Befehl ausführen:
sudo apt install exiftool
2. Ich kann kein Letsencrypt-Zertifikat generieren. Was habe ich falsch gemacht?
Das kann ebenfalls auf verschiedene Dinge zurückzuführen sein. Der häufigste Grund dafür ist jedoch, dass nginx noch läuft.
Damit der certbot-Befehl funktioniert, müssen die gängigen Webports offen sein und dürfen von keinem Programm belegt sein. Um nginx zu deaktivieren, können Sie den folgenden Befehl ausführen:
sudo systemctl stop nginx
Bildnachweis: Pleroma