Wie man das dezentrale Social Media Netzwerk Diaspora auf Debian 10 installiert

Diaspora ist ein quelloffenes, datenschutzbewusstes und verteiltes soziales Netzwerk. Es besteht aus einer Gruppe unabhängig voneinander eingesetzter und im Besitz befindlicher Knoten, die bei der Erstellung des Netzwerks zusammenarbeiten. Diaspora ist ein soziales Netzwerk, das sich auf drei Philosophien konzentriert: Dezentralisierung, Freiheit und Privatsphäre.

In diesem Tutorial werden wir Ihnen zeigen, wie Sie das verteilte soziale Netzwerk Diaspora auf dem Debian Buster 10 installieren. Wir werden Diaspora mit dem Nginx-Webserver und dem PostgreSQL-Datenbankserver installieren. Außerdem werden wir die Diaspora-Installation mit SSL Letsencrypt sichern.

Voraussetzungen

  • Debian Buster 10
  • Mindestens 2 GB RAM
  • Root-Privilegien

Was werden wir tun?

  • Abhängigkeiten von Paketen installieren
  • Neuen PostgreSQL-Benutzer für die Diaspora erstellen
  • Neuen Benutzer anlegen
  • Installieren Sie Ruby mit RVM (Ruby Version Manager)
  • Installieren und Konfigurieren des dezentralen sozialen Netzwerks der Diaspora
  • Diaspora als Systemdienst einrichten
  • Einrichten von Nginx als Reverse-Proxy für die Diaspora
  • Prüfung

Schritt 1 – Installieren der Paketabhängigkeiten

Zuerst werden wir einige Paketabhängigkeiten für unsere Diaspora-Installation installieren, einschließlich des PostgreSQL-, Redis- und Nginx-Webservers.

Installieren Sie die Paketabhängigkeiten mit dem untenstehenden apt-Befehl.

sudo apt-get install build-essential cmake gnupg2 libssl-dev libcurl4-openssl-dev libxml2-dev libxslt-dev imagemagick ghostscript curl libmagickwand-dev git libpq-dev redis-server nodejs postgresql

Wenn die gesamte Installation abgeschlossen ist, starten Sie die Dienste PostgreSQL, Nginx und Redis und fügen Sie dann alles dem Systemstart hinzu.

systemctl start redis-server
systemctl enable redis-server

systemctl start postgresql
systemctl enable postgresql

Infolgedessen wurden einige Paketabhängigkeiten für die Diaspora-Installation auf dem Debian Buster 10 installiert.

Redis- und PostgreSQL-Dienste starten

Schritt 2 – Erstellen Sie einen neuen PostgreSQL-Benutzer für die Diaspora

In diesem Schritt werden wir das Passwort für den Standardbenutzer ‚postgres‘ ändern und einen neuen PostgreSQL-Benutzer für die Diaspora anlegen.

Melden Sie sich in der PostgreSQL-Shell mit dem ‚psql‘-Befehl unten an.

sudo -i -u postgres psql

Ändern Sie das Passwort für den Standardbenutzer ‚postgres‘ mit der folgenden Abfrage.

\password postgres

Geben Sie nun Ihr neues Passwort ein und wiederholen Sie es, und das Passwort für den Standardbenutzer ‚postgres‚ wurde konfiguriert.

Als nächstes erstellen Sie einen neuen Benutzer ‚Diaspora‘ mit dem Privileg ‚CREATEDB‚ für die Erstellung einer Datenbank unter Verwendung der untenstehenden PostgreSQL-Abfrage.

CREATE USER diaspora WITH CREATEDB PASSWORD 'yourpassword';

Geben Sie ‚EXIT‚ ein, um sich von der PostgreSQL-Shell abzumelden.

Neue Datenbank für die Diaspora erstellen

Als Ergebnis wurde der neue PostgreSQL-Benutzer für Diaspora erstellt.

Schritt 3 – Erstellen eines neuen Benutzers

Nachdem wir den PostgreSQL-Datenbankbenutzer erstellt haben, werden wir einen neuen Systembenutzer mit dem Namen „Diaspora“ anlegen und ihn zur sudo-Gruppe hinzufügen.

Erstellen Sie einen neuen Benutzer mit dem Namen „Diaspora“ und richten Sie das Passwort dafür mit dem folgenden Befehl ein.

adduser --disabled-login Diaspora
passwd diaspora

Fügen Sie nun den Benutzer ‚Diaspora‘ zur Gruppe ’sudo‘ hinzu.

usermod -a -G sudo diaspora

Als Ergebnis wird der „Diaspora“-Benutzer in der Lage sein, den Befehl „sudo“ auszuführen, um die Root-Privilegien zu erhalten.

Create System User Diaspora

Schritt 4 – RVM und Ruby installieren

Bevor Sie weitermachen, melden Sie sich mit dem untenstehenden Befehl beim Benutzer ‚Diaspora‘ an.

su - diaspora

Als nächstes werden wir RVM (Ruby Version Manager) installieren und Ruby 2.6 für den Benutzer ‚Diaspora‘ installieren.

Fügen Sie den GPGP-Schlüssel für RVM-Pakete mit dem folgenden Befehl hinzu.

gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

GPG-Schlüssel für RVM-Pakete importieren

Installieren Sie nun den RVM (Ruby Version Manager) mit folgendem Befehl.

curl -sSL https://get.rvm.io | bash -s stable

Geben Sie Ihr Passwort für den ‚Diaspora‘-Benutzer ein und drücken Sie die Eingabetaste.

Wenn die Installation abgeschlossen ist, laden Sie das rvm-Skript auf Ihren Server.

source /home/diaspora/.rvm/scripts/rvm

Infolgedessen sind Sie in der Lage, den rvm-Befehl zur Installation von Ruby auszuführen.

RVM Ruby Version Manager installieren

Installieren Sie Ruby 2.6 mit dem folgenden rvm-Befehl.

rvm install 2.6

Wenn die gesamte Installation abgeschlossen ist, überprüfen Sie Ihre Ruby-Version.

ruby -v

Unten ist das Ergebnis, das Sie erhalten werden.

Installieren Sie Ruby 2.6 mit dem RVM Ruby Version Manager

Als Ergebnis ist die RVM- und Ruby-Installation unter dem Benutzer ‚diaspora‘ abgeschlossen.

Schritt 5 – Herunterladen und Konfigurieren von „Diaspora

Bevor Sie fortfahren, vergewissern Sie sich, dass Sie mit dem Benutzer „Diaspora“ eingeloggt sind.

Laden Sie den Diaspora-Quellcode mit dem git-Befehl herunter und gehen Sie hinein.

git clone -b master https://github.com/diaspora/diaspora.git
cd diaspora

Kopieren Sie nun das Beispiel der Datenbankkonfiguration ‚database.yml‘ und die Diaspora-Konfiguration ‚diaspora.yml‘.

cp config/database.yml.example config/database.yml
cp config/diaspora.yml.example config/diaspora.yml

Als nächstes editieren Sie die Datenbankkonfiguration ‚database.yml‘ mit vim editor.

vim config/database.yml

Im Datenbankabschnitt ‚PostgreSQL‘ ändern Sie den detaillierten Benutzernamen und das Passwort mit Ihren Daten.

postgresql: &postgresql
  adapter: postgresql
  host: "localhost"
  port: 5432
  username: "diaspora"
  password: "yourpassword"
  encoding: unicode

Speichern und schließen.

Als nächstes bearbeiten Sie die Diaspora-Konfiguration ‚diaspora.yml‘.

vim config/diaspora.yml

Ändern Sie die Konfiguration wie unten beschrieben, und stellen Sie sicher, dass der Domänenname mit Ihrem eigenen übereinstimmt.

configuration: ## Section
...
  environment: ## Section
...
    url: "https://pod.hakase-labs.to/"
    certificate_authorities: '/etc/ssl/certs/ca-certificates.crt'
    require_ssl: true
...
  server: ## Section
    rails_environment: 'production'
...

Speichern und schließen.

Als nächstes installieren Sie die für die Diaspora benötigten Edelstein- und Rubinbibliotheken mit den folgenden Befehlen.

gem install bundler
script/configure_bundler
bin/bundle install --full-index

Diaspora-Bibliotheken installieren

Führen Sie danach die Datenbankmigration für die Diaspora durch.

RAILS_ENV=production bundle exec rake db:create db:migrate

Wenn alles fertig ist, kompilieren Sie alle Schienen-Asset-Pipeline mit dem folgenden Befehl.

RAILS_ENV=production bin/rake assets:precompile

Und die Einrichtung der Diaspora ist abgeschlossen.

Schritt 6 – Einrichtung der Diaspora als Dienstleistung

Nach der Installation der Diaspora werden wir die Diaspora als einen Systemdienst konfigurieren.

Gehen Sie nun in das Verzeichnis ‚/etc/systemd/system‘ und erstellen Sie eine neue Gruppierungseinheiten-Dienst-Datei ‚diaspora.target‘ mit dem vim-Editor.

cd /etc/systemd/system/
vim diaspora.target

Fügen Sie die folgende Konfiguration darin ein.

[Unit]
Description=Diaspora social network
Wants=postgresql.service
Wants=redis-server.service
After=redis-server.service
After=postgresql.service

[Install]
WantedBy=multi-user.target

Speichern und schließen.

Als nächstes erstellen Sie eine neue Servicedatei für die Diaspora namens ‚diaspora-web.service‘ mit dem Editor vim.

vim diaspora-web.service
Fügen Sie die folgende Konfiguration darin ein.
[Unit]
Description=Diaspora social network (unicorn)
PartOf=diaspora.target
StopWhenUnneeded=true
[Service]
User=diaspora
Environment=RAILS_ENV=production
WorkingDirectory=/home/diaspora/diaspora
ExecStart=/bin/bash -lc "bin/bundle exec unicorn -c config/unicorn.rb -E production"
Restart=always

[Install]
WantedBy=diaspora.target

Speichern und schließen.

Als nächstes erstellen Sie eine neue Servicedatei ‚diaspora-sidekiq.service‘ für den Überwachungsdienst unter Verwendung des nachstehenden Befehls vim.

vim diaspora-sidekiq.service

Fügen Sie die folgende Konfiguration ein.

[Unit]
Description=Diaspora social network (sidekiq)
PartOf=diaspora.target
StopWhenUnneeded=true
[Service]
User=diaspora
Environment=RAILS_ENV=production
WorkingDirectory=/home/diaspora/diaspora
ExecStart=/bin/bash -lc "bin/bundle exec sidekiq"
Restart=always

[Install]
WantedBy=diaspora.target

Speichern und schließen.

Laden Sie nun den Systemmanager neu und fügen Sie alle Diasporadienste zum Systemstart hinzu.

sudo systemctl daemon-reload
sudo systemctl enable diaspora.target diaspora-sidekiq.service diaspora-web.service

Diaspora als Systemdienst einrichten

Dann starten Sie den Diasporadienst mit dem folgenden Befehl.

systemctl start diaspora.target

Das ‚diaspora.target‘ startet automatisch weitere Dienste, den ‚diaspora-web.service‘ und ‚diaspora-sidekiq.service‘.

Überprüfen Sie die Diasporadienste mit dem folgenden Befehl.

systemctl status diaspora-web
systemctl status diaspora-sidekiq

Unten finden Sie das Ergebnis, das Sie erhalten werden.

Diaspora-Dienst starten

Infolgedessen ist die Diaspora nun als Systemdienst eingerichtet und in Betrieb. Und schließlich ist die Konfiguration der Diaspora abgeschlossen.

Schritt 7 – SSL Letsencrypt generieren

Für dieses Tutorial werden wir unsere Diaspora-Installation mit SSL Letsencrypt sichern. In diesem Schritt werden wir das certbot-Tool installieren und SSL Letsencrypt für unsere Diaspora-Domain-Installation generieren.

Installieren Sie Certbot mit dem unten stehenden apt-Befehl.

sudo apt install certbot

Wenn die gesamte Installation abgeschlossen ist, erzeugen Sie SSL Letsencrypt für Ihren Diaspora-Domainnamen mit dem untenstehenden certbot-Befehl.

certbot certonly --rsa-key-size 2048 --standalone --agree-tos --no-eff-email --email [email protected] -d pod.hakase-labs.to

Nun wird Ihr Zertifikat im Verzeichnis ‚/etc/letsencrypt/live/yourdomain.com/‘ verfügbar sein.

Schritt 8 – Neuen Benutzer anlegen und Diaspora herunterladen

In diesem Schritt werden wir den Nginx-Webserver als Reverse-Proxy für die Diaspora installieren und konfigurieren.

Installieren Sie Nginx mit dem folgenden apt-Befehl.

sudo apt install nginx

Sobald die gesamte Installation abgeschlossen ist, gehen Sie in das Verzeichnis ‚/etc/nginx/sites-available‘ und erstellen eine neue Konfiguration des virtuellen Hosts ‚Diaspora‘ mit Hilfe des vim-Editors.

cd /etc/nginx/sites-available/
vim diaspora

Ändern Sie den Domainnamen und den Pfad von SSL Letsencrypt mit Ihrem eigenen und fügen Sie ihn dann dort ein.

upstream diaspora_server {
 server unix:/home/diaspora/diaspora/tmp/diaspora.sock;
}
server {
listen 80;
listen [::]:80;
server_name pod.hakase-labs.to;
return 301 https://pod.hakase-labs.to$request_uri;

access_log /dev/null;
error_log /dev/null;
}

server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name pod.hakase-labs.to;

access_log /var/log/nginx/dspr-access.log;
error_log /var/log/nginx/dspr-error.log;

ssl_certificate /etc/letsencrypt/live/pod.hakase-labs.to/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/pod.hakase-labs.to/privkey.pem;

ssl_protocols TLSv1.2;
ssl_ciphers EECDH+CHACHA20:EECDH+AESGCM:EECDH+AES;
ssl_ecdh_curve X25519:P-521:P-384:P-256;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;

root /home/diaspora/diaspora/public;

client_max_body_size 5M;
client_body_buffer_size 256K;

try_files $uri @diaspora;

location /assets/ {
expires max;
add_header Cache-Control public;
}

location @diaspora {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://diaspora_server;
}
}

Speichern und schließen.

Aktivieren Sie nun die Diaspora-Konfiguration und testen Sie die Nginx-Konfiguration.

ln -s /etc/nginx/sites-available/diaspora /etc/nginx/sites-enabled/
nginx -t

Stellen Sie sicher, dass kein Fehler vorliegt, starten Sie dann den Nginx-Dienst neu und fügen Sie ihn zum Systemstart hinzu.

systemctl restart nginx
systemctl enable nginx

Damit ist die Konfiguration des Nginx-Webservers als Reverse-Proxy für die Diaspora abgeschlossen.

Nginx als Reverse Proxy für die Diaspora einrichten

Schritt 9 – Testen

Öffnen Sie Ihren Webbrowser und geben Sie Ihren Diaspora-Domänennamen in die Adressleiste ein.

http://pod.hakase-labs.to/

Und Sie erhalten die Standard-Homepage der Diaspora wie unten dargestellt.

Diaspora-Startseite

Klicken Sie auf den Link im Abschnitt „Ein Konto erstellen„.

Geben Sie nun Ihre E-Mail-Adresse, Ihren Benutzernamen und Ihr Passwort für das erste Diaspora-Konto ein und klicken Sie dann auf „Create acount„.

Konto Diaspora erstellen

Laden Sie Ihr Profilbild usw. hoch und klicken Sie dann auf „Fantastisch! Bringen Sie mich in die Diaspora„-Button.

Diaspora-Profil-Einstellungen

Und Sie erhalten das Diaspora-Dashboard wie unten dargestellt.

Dashboard Diaspora

Wie man sehen kann, wurde die Installation von Diaspora mit Nginx Reverse Proxy auf Debian Buster 10 erfolgreich abgeschlossen.

Das könnte dich auch interessieren …