In unserer digitalen Welt, in der jeder fast jeden Moment auf Social Media teilt, ist Mastodon eine coole Alternative zu Plattformen wie Twitter (jetzt X genannt). Aber was ist Mastodon? Nun, es ist so etwas wie ein Do-it-yourself-Twitter, bei dem es nicht nur darum geht, deine Daten zu sammeln – und das Beste daran: Weil es Open-Source ist, ist es völlig kostenlos. In diesem Artikel erfährst du, was Mastodon ist, wie es sich von Twitter unterscheidet und warum es großartig ist, eine eigene Mastodon-Instanz zu haben. Außerdem helfen wir dir, deine eigene Mastodon Instanz auf einem Linux-Server einzurichten.
Die dezentrale Idee hinter Mastodon
Im Kern ist Mastodon nicht nur eine weitere Social-Media-Plattform, sondern ein Beweis für die Kraft der Dezentralisierung und der gemeinschaftsgetriebenen Entwicklung. Stell Dir ein sich ausbreitendes Netzwerk von miteinander verbundenen Instanzen vor, von denen jede als unabhängiger Knotenpunkt agiert und gemeinsam das riesige Universum von Mastodon bildet. Anstelle einer einzigen monolithischen Plattform mit einem zentralen Verwaltungsorgan ist Mastodon ein Ökosystem von Mikro-Communities, in dem jede Instanz auf ihre eigene Nutzerbasis, Inhaltspolitik und Verwaltungsstruktur zugeschnitten werden kann. Dieses dezentralisierte Modell fördert die Eigenverantwortung der Nutzer, den Datenschutz und die individuelle Anpassung und fördert eine digitale Landschaft, die die Vielfalt der Stimmen und Interessen in der realen Welt widerspiegelt.
Mastodon vs. Twitter
In der Welt der sozialen Medien zeichnet sich Mastodon durch seinen dezentralen Ansatz und die Konzentration auf mehr Kontrolle für die Nutzer aus. Das ist ein großer Unterschied zur Plattform X, die früher Twitter hieß. X hat zwar viele Nutzer und ist bekannt, hat aber mit Problemen zu kämpfen wie der Geheimhaltung von Nutzerdaten, der Unklarheit über die Funktionsweise ihrer Algorithmen und der Kontrolle aller Aktivitäten auf der Plattform durch eine zentrale Instanz. Die Arbeitsweise von Mastodon ist dagegen eher gemeinschaftsorientiert und überlässt den Nutzern die Verantwortung. . Bei Mastodon werden die Beiträge einfach in der Reihenfolge angezeigt, in der sie erstellt wurden, was die Dinge offen hält und echte Gespräche fördert. Außerdem können Nutzer und Administratoren die Plattform individuell anpassen, lokale Gemeinschaften aufbauen und die Regeln für die Inhalte selbst festlegen.
Vorteile einer eigenen Mastodon Instanz
Wenn Du in das soziale Netzwerk Mastodon einsteigen willst, hast Du die Wahl: Du kannst auf eine bestehende Instanz aufspringen oder Deine eigene Instanz einrichten. Schauen wir uns das mal an. Der Beitritt zu einer bestehenden Instanz kann wie ein Umzug in eine fertige Nachbarschaft sein – Du bist sofort Teil einer bestehenden Community. Aber es gibt Grenzen, wie sehr du die Dinge anpassen kannst. Auf der anderen Seite bietet das Hosten einer eigenen Instanz eine ganze Reihe von Vorteilen. Du bist der Chef deiner Mastodon-Welt – du kannst sie so aussehen und funktionieren lassen, wie du willst. Du bist für die Regeln verantwortlich, was bedeutet, dass du sie zu einem freundlichen und gemütlichen Ort für dich und deine Freunde machen kannst, frei von jeglichem unerwünschten Lärm. Außerdem sind Deine Daten in Deiner Hand, Du musst Dir also keine Sorgen um Deine Privatsphäre machen.
Eigenen Mastodon Server erstellen
In diesem Artikel erfährst du, wie du diese Vision in die Realität umsetzen kannst, indem du deine eigene Mastodon-Instanz auf einem Linux-Server mit Debian 11 installierst. Diese Reise wird Dich mit den Werkzeugen und Einblicken ausstatten, die Du brauchst, um die technischen Aspekte der Einrichtung und Wartung einer selbst gehosteten Mastodon-Instanz zu navigieren, damit Du Dir Deinen digitalen Hafen in den riesigen Weiten des dezentralisierten sozialen Webs schaffen kannst.
Voraussetzungen
Bevor du mit der Einrichtung deiner eigenen Mastodon-Instanz beginnst, gibt es einige wichtige Voraussetzungen zu beachten. Erstens benötigst du einen Server mit Debian 11 oder Ubuntu 20.04, auf dem du deine Mastodon-Instanz hosten kannst. Auch eine geeignete Domain ist erforderlich. Glücklicherweise bieten wir bei Contabo beides an! Klicke hier, wenn du eine Domain brauchst (.de-Domains schon ab 0,99€!). Wenn Du einen passenden Server brauchst, haben wir auch das für Dich! Abhängig von der Anzahl der Nutzer und der allgemeinen Aktivität auf deiner Instanz benötigst du unterschiedliche Mengen an RAM, CPU-Kernen und Speicherplatz. Unser VPS M SSD bietet eine gute Ausgangsbasis für Deine Mastodon-Reise. Wir bieten hier auch VPS mit anderen Konfigurationen an.
Installation unter Debian 11
Los gehts mit der Installation von Mastodon auf einem Debian 11 Linux-Server. Folge diesen Schritten, um deine Instanz zum Leben zu erwecken:
System updaten
Beginne mit der Aktualisierung der Paketliste deines Systems und aktualisiere alle vorhandenen Pakete:
apt update
apt upgrade
System-Repositories installieren
Stelle sicher, dass curl, wget, gnupg, apt-transport-https, lsb-release und ca-certificates zuerst installiert werden, da diese Pakete zum Fortfahren erforderlich sind:
apt install -y curl wget gnupg apt-transport-https lsb-release ca-certificates
NodeJS installieren
Jetzt ist es an der Zeit, NodeJS zu installieren, um die JavaScript-Abhängigkeiten von Mastodon zu verwalten:
curl -sL https://deb.nodesource.com/setup_16.x | bash -
PostgreSQL installieren
Als Datenbanksoftware wird PostgreSQL benötigt. Installiere sie mit diesen beiden Befehlen:
wget -O /usr/share/keyrings/postgresql.asc https://www.postgresql.org/media/keys/ACCC4CF8.asc
echo "deb [signed-by=/usr/share/keyrings/postgresql.asc] http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/postgresql.list
Weitere Pakete installieren
apt install -y \
imagemagick ffmpeg libpq-dev libxml2-dev libxslt1-dev file git-core \
g++ libprotobuf-dev protobuf-compiler pkg-config nodejs gcc autoconf \
bison build-essential libssl-dev libyaml-dev libreadline6-dev \
zlib1g-dev libncurses5-dev libffi-dev libgdbm-dev \
nginx redis-server redis-tools postgresql postgresql-contrib \
certbot python3-certbot-nginx libidn11-dev libicu-dev libjemalloc-dev
Yarn aktivieren
Um Yarn zu aktivieren nutze den folgenden Befehl:
corepack enable
Stelle nun die Yarn Version ein:
yarn set version classic
Ruby installieren
Da .rbenv für einen einzelnen Linux-Benutzer installiert werden muss, erstellen wir einen Mastodon-Benutzer mit deaktiviertem Login, bevor wir mit der eigentlichen Installation von Ruby beginnen können:
adduser --disabled-login mastodon
Nun wechseln wir zum Mastodonuser:
su – mastodon
Beginnen wir nun mit der eigentlichen Installation von Ruby, indem du die folgenden Befehle nacheinander ausführst:
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
cd ~/.rbenv && src/configure && make -C src
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
exec bash
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
RUBY_CONFIGURE_OPTS=--with-jemalloc rbenv install 3.2.2
Wunder dich nicht: Dieser Schritt dauert extrem lange!
rbenv global 3.2.2
gem install bundler --no-document
Bevor wir nun mit der Einrichtung von PostgreSQL fortfahren, wechseln wir mit folgendem Befehl zurück zum Benutzer root:
exit
PostgreSQL einrichten
Es ist an der Zeit eine Datenbank samt Benutzer für unsere Mastodon Instanz anzulegen. Dies geht mit den folgenden Befehlen:
sudo -u postgres psql
CREATE USER mastodon CREATEDB;
Verlasse nun PostgreSQL mit diesem Befehl:
\q
Mastodon Einrichten
Wechsle erneut zum Mastodon Benutzer:
su - mastodon
Downloade und installiere nun die benötigten Dateien indem Du die folgenden Befehle nacheinander ausführst:
git clone https://github.com/mastodon/mastodon.git live && cd live
git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)
bundle config deployment 'true'
bundle config without 'development test'
bundle install -j$(getconf _NPROCESSORS_ONLN)
yarn install --pure-lockfile
Starte die finale Installation nun mit diesem Befehl:
RAILS_ENV=production bundle exec rake mastodon:setup
Hier erstellst du eine Konfigurationsdatei, führst die Vorkompilierung der Assets durch, erstellst das Datenbankschema, legst dein Administratorkonto an und stellst ein paar andere Optionen ein, z. B. ob du Registrierungen auf deiner Instanz aktivieren möchtest. Der Einrichtungsprozess ist sehr einfach.
Reverse-Proxy mit Nginx erstellen
cp /home/mastodon/live/dist/nginx.conf /etc/nginx/sites-available/mastodon
nano /etc/nginx/sites-available/mastodon
Füge die folgenden zwei Zeilen nach diesem Teil ein:
ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
Speicher die Datei mit [STRG] + [O] und verlasse den Editor mit [STRG] + [X].
Die Datei sollte jetzt so aussehen:
Aktiviere die Config nun mit dem folgenden Befehl:
ln -s /etc/nginx/sites-available/mastodon /etc/nginx/sites-enabled/mastodon
systemctl reload nginx
SSL-Zertifikat installieren
Um unsere Mastodon-Instanz sicherer zu machen, werden wir ein kostenloses SSL-Zertifikat mit certbot installieren. Dadurch werden Let’s Encrypt-Zertifikate für unsere Instanz installiert. Hast du dich schon einmal gefragt, was SSL-Zertifikate sind und wie sie – und der ganze Prozess – eigentlich genau funktioniert? Dann lies dir gerne unseren Leitfaden zu SSL durch.
certbot --nginx -d [your-domain]
Mastodon Service starten
cp /home/mastodon/live/dist/mastodon-*.service /etc/systemd/system/
$EDITOR /etc/systemd/system/mastodon-*.service
systemctl daemon-reload
systemctl enable --now mastodon-web mastodon-sidekiq mastodon-streaming
Jetzt musst du eine ca. Minute warten, bis alles eingerichtet ist, und dann deine Domain in den Browser eingeben.
Du wirst dann von diesem Homescreen begrüßt:
Herzlichen Glückwunsch! Du hast erfolgreich deine eigene Mastodon-Instanz auf deinem Server installiert. Viel Spaß beim Einladen von Freunden und beim Anpassen deiner Social-Media-Erfahrung. Erfahre mehr darüber, wie du Mastodon anpassen kannst, in der offiziellen Dokumentation.