So installierst du die Friendica Social Network Plattform auf Ubuntu 22.04

Friendica, früher bekannt als Friendika, ist eine quelloffene und dezentralisierte Kommunikationsplattform, mit der du dein eigenes soziales Netzwerk im Internet aufbauen kannst. Sie zielt darauf ab, Freunde, Bekannte oder einfach Menschen mit den gleichen Interessen in Mitgliedergruppen zu verbinden. Es ist eine alternative Lösung für andere soziale Netzwerkplattformen wie Mastodon, Twitter und Diaspora. Du kannst deine Websites und Blogs über RSS/Atom-Feeds in deinen Social Stream importieren.

In dieser Anleitung wird erklärt, wie du das soziale Netzwerk Friendica mit Apache auf Ubuntu 22.04 installierst.

Voraussetzungen

  • Ein Server, auf dem Ubuntu 22.04 läuft.
  • Ein gültiger Domainname ist auf die IP deines Servers gerichtet.
  • Ein Root-Passwort ist auf dem Server eingerichtet.

Erste Schritte

Aktualisiere zunächst alle Systempakete mit dem folgenden Befehl auf die neueste Version:

apt update -y
apt upgrade

Sobald alle Pakete aktualisiert sind, kannst du mit dem nächsten Schritt fortfahren.

Installiere Apache, MariaDB und PHP

Friendica ist in PHP geschrieben und verwendet MySQL als Datenbank-Backend. Deshalb musst du den LAMP-Server auf deinem System installieren. Du kannst ihn mit dem folgenden Befehl installieren:

apt install apache2 mariadb-server php libapache2-mod-php php-common php-gmp php-curl php-intl php-mbstring php-xmlrpc php-mysql php-gd php-imagick php-xml php-cli php-zip php-sqlite3 curl git -y

Nachdem du alle Pakete installiert hast, bearbeite die Datei php.ini und ändere die Standardeinstellungen:

nano /etc/php/8.1/apache2/php.ini

Ändere die folgenden Zeilen:

memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 300
max_input_vars = 1500
date.timezone = UTC

Speichere und schließe die Datei, wenn du fertig bist.

MariaDB-Datenbank konfigurieren

Als nächstes musst du eine Datenbank und einen Benutzer für Friendica einrichten. Verbinde dich zunächst mit folgendem Befehl mit MySQL:

mysql

Wenn du fertig bist, erstelle eine Datenbank und einen Benutzer mit dem folgenden Befehl:

MariaDB [(none)]> CREATE DATABASE friendica;
MariaDB [(none)]> CREATE USER 'friendica'@'localhost' IDENTIFIED BY 'password';

Als Nächstes erteilst du der Friendica-Datenbank mit folgendem Befehl alle Berechtigungen:

MariaDB [(none)]> GRANT ALL ON friendica.* TO 'friendica'@'localhost' WITH GRANT OPTION;

Als Nächstes löschst du die Berechtigungen und beendest MySQL mit dem folgenden Befehl:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Wenn du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.

Friendica auf Ubuntu 22.04 installieren

Lade zunächst die neueste Version von Friendica aus dem Git-Repository in das Apache-Web-Root-Verzeichnis herunter:

cd /var/www/html
git clone https://github.com/friendica/friendica-addons.git -b stable

Sobald der Download abgeschlossen ist, änderst du das Verzeichnis in Friendica und installierst die erforderlichen PHP-Abhängigkeiten mit dem folgenden Befehl:

cd friendica
./bin/composer.phar install --no-dev

Als Nächstes lädst du die Friendica-Addons mit dem folgenden Befehl herunter:

git clone https://github.com/friendica/friendica-addons.git

Benenne dann das Addon-Verzeichnis und die .htaccess-Datei um.

mv friendica-addons addon
mv .htaccess-dist .htaccess

Als Nächstes legst du die korrekten Eigentums- und Zugriffsrechte für das Friendica-Verzeichnis fest:

chown -R www-data:www-data /var/www/html/friendica/
chmod -R 755 /var/www/html/friendica/

Wenn du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.

Einen virtuellen Apache-Host erstellen

Als Nächstes musst du eine Konfigurationsdatei für einen virtuellen Apache-Host erstellen, um Friendica zu hosten. Du kannst sie mit dem folgenden Befehl erstellen:

nano /etc/apache2/sites-available/friendica.conf

Füge die folgenden Zeilen ein:

<VirtualHost *:80>
     ServerAdmin admin@linuxbuz.com
     DocumentRoot /var/www/html/friendica
     ServerName friendica.linuxbuz.com


     <Directory /var/www/html/friendica/>
        Options +FollowSymlinks
        AllowOverride All
        Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Speichere und schließe die Datei und aktiviere den virtuellen Apache-Host und das Rewrite-Modul mit dem folgenden Befehl:

a2ensite friendica.conf
a2enmod rewrite

Als Nächstes lädst du den Apache-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart apache2

Du kannst den Status des Apache-Dienstes mit folgendem Befehl überprüfen:

systemctl status apache2

Du solltest die folgende Ausgabe erhalten:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2022-12-21 10:33:18 UTC; 6s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 57027 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 57031 (apache2)
      Tasks: 6 (limit: 2238)
     Memory: 15.8M
        CPU: 43ms
     CGroup: /system.slice/apache2.service
             ??57031 /usr/sbin/apache2 -k start
             ??57032 /usr/sbin/apache2 -k start
             ??57033 /usr/sbin/apache2 -k start
             ??57034 /usr/sbin/apache2 -k start
             ??57035 /usr/sbin/apache2 -k start
             ??57036 /usr/sbin/apache2 -k start

Dec 21 10:33:18 ubuntu2204 systemd[1]: apache2.service: Deactivated successfully.
Dec 21 10:33:18 ubuntu2204 systemd[1]: Stopped The Apache HTTP Server.
Dec 21 10:33:18 ubuntu2204 systemd[1]: Starting The Apache HTTP Server...

Jetzt ist der Apache-Webserver installiert und konfiguriert. Du kannst jetzt mit dem nächsten Schritt fortfahren.

Let’s Encrypt SSL installieren

Es ist immer eine gute Idee, deine Website mit Let’s Encrypt SSL zu sichern. Um SSL zu installieren und zu verwalten, musst du den Certbot-Client installieren.

Installiere zunächst den Snap-Paketmanager mit dem folgenden Befehl:

apt install snapd

Als Nächstes aktualisierst du das Snap-Paket auf die neueste Version:

snap install core
snap refresh core

Als Nächstes installierst du das Certbot-Paket mit dem folgenden Befehl:

snap install --classic certbot

Als Nächstes erstellst du einen symbolischen Link für die Certbot-Binärdatei auf dem Systempfad:

ln -s /snap/bin/certbot /usr/bin/certbot

Als Nächstes führst du den folgenden Befehl aus, um Let’s Encrypt SSL-Zertifikate herunterzuladen und zu installieren:

certbot --apache

Du wirst aufgefordert, die Nutzungsbedingungen zu akzeptieren und deine gültige E-Mail-Adresse anzugeben.

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Enter email address (used for urgent renewal and security notices)
 (Enter 'c' to cancel): hitjethva@gmail.com

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.3-September-21-2022.pdf. You must
agree in order to register with the ACME server. Do you agree?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing, once your first certificate is successfully issued, to
share your email address with the Electronic Frontier Foundation, a founding
partner of the Let's Encrypt project and the non-profit organization that
develops Certbot? We'd like to send you email about our work encrypting the web,
EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Account registered.

Als Nächstes wirst du aufgefordert, die Domain auszuwählen, auf der du Let’s Encrypt SSL installieren möchtest:

Which names would you like to activate HTTPS for?
We recommend selecting either all domains, or all domains in a VirtualHost/server block.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: friendica.linuxbuz.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter 'c' to cancel): 1

Gib 1 ein, um die Standarddomain auszuwählen und drücke die Eingabetaste, um SSL auf deiner Website zu installieren.

Requesting a certificate for friendica.linuxbuz.com

Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/friendica.linuxbuz.com/fullchain.pem
Key is saved at:         /etc/letsencrypt/live/friendica.linuxbuz.com/privkey.pem
This certificate expires on 2023-03-21.
These files will be updated when the certificate renews.
Certbot has set up a scheduled task to automatically renew this certificate in the background.

Deploying certificate
Successfully deployed certificate for friendica.linuxbuz.com to /etc/apache2/sites-available/friendica-le-ssl.conf
Congratulations! You have successfully enabled HTTPS on https://friendica.linuxbuz.com
We were unable to subscribe you the EFF mailing list because your e-mail address appears to be invalid. You can try again later by visiting https://act.eff.org.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
If you like Certbot, please consider supporting our work by:
 * Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
 * Donating to EFF:                    https://eff.org/donate-le
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Zugriff auf Friendica Web UI

Öffne nun deinen Webbrowser und rufe die Friendica-Weboberfläche über die URL https://friendica.linuxbuz.com auf. Du wirst auf die Seite zur Systemprüfung weitergeleitet:

Vergewissere dich, dass alle PHP-Abhängigkeiten installiert sind und klicke dann auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Gib deinen Domainnamen und den Installationspfad an und klicke auf die Schaltfläche Senden. Du solltest die folgende Seite sehen:

Gib den Namen der Datenbank, den Benutzernamen und das Passwort ein und klicke auf die Schaltfläche Absenden . Du solltest die Seite mit den Website-Einstellungen sehen:

Gib die E-Mail-Adresse des Administrators, die Sprache und die Zeitzone ein und klicke auf die Schaltfläche Absenden. Sobald die Installation abgeschlossen ist, solltest du die folgende Seite sehen:

Klicke jetzt auf die Schaltfläche Registrierungsseite. Du solltest die folgende Seite sehen.

Gib alle erforderlichen Informationen ein und klicke auf die Schaltfläche Jetzt anmelden. Du solltest die folgende Seite mit deinem Benutzernamen und Passwort sehen.

Öffne nun deinen Webbrowser und rufe die Anmeldeseite von Friendica über die URL https://friendica.linuxbuz.com auf. Du solltest die Friendica-Anmeldeseite sehen.

Gib deinen Login-Benutzernamen und dein Passwort ein und klicke auf die Schaltfläche Login. Auf der folgenden Seite solltest du das Friendica-Dashboard sehen.

Fazit

Herzlichen Glückwunsch! Du hast die soziale Netzwerkplattform Friendica erfolgreich auf einem Ubuntu 22.04 Server installiert und konfiguriert. Jetzt kannst du deine Social Network Community von einem zentralen Ort aus verwalten. Wenn du noch Fragen hast, kannst du dich gerne an mich wenden.

Das könnte dich auch interessieren …