So installieren Sie die Friendica Social Network Platform auf Ubuntu 20.04

Friendica ist eine freie, quelloffene und dezentralisierte Social-Networking-Plattform, die Ihnen hilft, Ihre eigenen Social-Networking-Projekte zu erstellen und zu pflegen. Es hat eingebaute Unterstützung für ActivityPub einschließlich, Mastodon, Hubzilla, OStatus, Pleroma und mehr. Es ermöglicht Ihnen, Ihre Websites und Blogs über RSS/Atom-Feeds in Ihren Social Stream zu importieren. Es bietet ein leistungsstarkes Benutzer- und Admin-Dashboard, das Ihnen hilft, Ihr soziales Netzwerk von jedem Gerät aus zu verwalten. Alternativ kann man auch Mastodon verwenden. Mastodon Installation auf Ubuntu 22.04 und 18.04.

In diesem Tutorial zeigen wir Ihnen, wie Sie Friendica mit Apache und Let’s Encrypt SSL auf Ubuntu 20.04 installieren.

Voraussetzungen

  • Ein Server, auf dem Ubuntu 20.04 läuft.
  • Ein gültiger Domainname, der auf die IP des Servers zeigt.
  • Ein Root-Passwort ist auf dem Server konfiguriert.

Erste Schritte

Bevor Sie beginnen, müssen Sie Ihre Systempakete auf die neueste Version aktualisieren. Sie können sie mit dem folgenden Befehl aktualisieren:

apt-get update -y

Sobald Ihr Server aktualisiert ist, können Sie mit dem nächsten Schritt fortfahren.

LAMP-Server installieren

Friendica läuft auf einem Webserver, der in PHP geschrieben ist und MySQL als Datenbank-Backend verwendet. Daher muss der LAMP-Stack in Ihrem System installiert sein. Wenn er nicht installiert ist, können Sie ihn mit dem folgenden Befehl installieren:

apt-get 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

Sobald alle Pakete installiert sind, bearbeiten Sie die Datei php.ini und nehmen Sie einige Änderungen vor:

nano /etc/php/7.4/apache2/php.ini

Ändern Sie die folgenden Zeilen:

memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 300
max_input_vars = 1500
date.timezone = Asia/Kolkata

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Erstellen Sie eine Friendica-Datenbank

Als nächstes müssen Sie eine Datenbank und einen Benutzer für Friendica erstellen. Verbinden Sie sich zunächst mit folgendem Befehl mit MySQL:

mysql

Sobald Sie verbunden sind, erstellen Sie eine Datenbank und einen Benutzer mit dem folgenden Befehl:

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

Als nächstes erteilen Sie der Friendica-Datenbank alle Rechte mit dem folgenden Befehl:

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

Als nächstes löschen Sie die Berechtigungen und beenden Sie MySQL mit dem folgenden Befehl:

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

Wenn Sie damit fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Friendica herunterladen

Bevor Sie Friendica herunterladen können, müssen Sie Composer auf Ihrem System installieren. Sie können ihn mit dem folgenden Befehl installieren:

apt-get install composer -y

Nach der Installation wechseln Sie das Verzeichnis in das Apache-Web-Root und laden die neueste Version von Friendica aus dem Git-Repository herunter:

cd /var/www/html
git clone https://github.com/friendica/friendica.git

Sobald der Download abgeschlossen ist, wechseln Sie in das Verzeichnis friendica und installieren Sie die erforderlichen PHP-Abhängigkeiten mit dem folgenden Befehl:

cd friendica
composer install --no-dev

Als nächstes laden Sie die Friendica-Addons mit dem folgenden Befehl herunter:

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

Legen Sie als nächstes die richtigen 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 Sie damit fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Konfigurieren Sie den Apache für Friendica

Als nächstes müssen Sie eine Konfigurationsdatei für den virtuellen Apache-Host erstellen, um Friendica zu hosten. Sie können sie mit dem folgenden Befehl erstellen:

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

Fügen Sie die folgenden Zeilen ein:

<VirtualHost *:80>
     ServerAdmin admin@example.com
     DocumentRoot /var/www/html/friendica
     ServerName friendica.example.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>

Speichern und schließen Sie die Datei und aktivieren Sie dann den virtuellen Apache-Host und das Rewrite-Modul mit dem folgenden Befehl:

a2ensite friendica.conf
a2enmod rewrite

Laden Sie anschließend den Apache-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart apache2

Sie können den Status des Apache-Dienstes mit dem folgenden Befehl überprüfen:

systemctl status apache2

Sie sollten 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 Sun 2021-02-07 09:20:58 UTC; 6s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 33243 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 33259 (apache2)
      Tasks: 6 (limit: 2353)
     Memory: 15.1M
     CGroup: /system.slice/apache2.service
             ??33259 /usr/sbin/apache2 -k start
             ??33260 /usr/sbin/apache2 -k start
             ??33261 /usr/sbin/apache2 -k start
             ??33262 /usr/sbin/apache2 -k start
             ??33263 /usr/sbin/apache2 -k start
             ??33264 /usr/sbin/apache2 -k start

Feb 07 09:20:58 ubuntu2004 systemd[1]: Starting The Apache HTTP Server...

Zugriff auf Friendica Dashboard

Öffnen Sie nun Ihren Webbrowser und rufen Sie die Friendica-Weboberfläche über die URL http://friendica.example.com auf. Sie werden auf die Systemprüfungsseite weitergeleitet:

Friendica-Systemprüfung

Vergewissern Sie sich, dass alle PHP-Abhängigkeiten installiert sind und klicken Sie dann auf die Schaltfläche Weiter. Sie sollten die folgende Seite sehen:

Server-Einrichtung

Geben Sie Ihren Domänennamen und den Installationspfad an und klicken Sie auf die Schaltfläche Senden. Sie sollten die folgende Seite sehen:

Datenbankverbindung

Geben Sie den Namen der Datenbank, den Datenbank-Benutzernamen und das Passwort ein und klicken Sie auf die Schaltfläche “ Submit„. Sie sollten die Seite mit den Site-Einstellungen sehen:

Standort-Einstellungen

Geben Sie die E-Mail-Adresse des Administrators, die Sprache und die Zeitzone an, und klicken Sie auf die Schaltfläche „Submit“ (Senden ). Sobald die Installation abgeschlossen ist, sollten Sie die folgende Seite sehen:

Installation Beendet

Klicken Sie nun auf die Schaltfläche der Registrierungsseite und schließen Sie den Registrierungsprozess ab, um auf Friendica zuzugreifen.

Sichern Sie Friendica mit Let’s Encrypt SSL

Es ist immer eine gute Idee, Ihre Website mit Let’s Encrypt SSL zu sichern. Sie müssen den Certbot-Client installieren, um das SSL zu installieren und zu verwalten. Sie können ihn mit dem folgenden Befehl installieren:

apt-get install python3-certbot-apache -y

Sobald Certbot installiert ist, führen Sie den folgenden Befehl aus, um Ihre Website mit Let’s Encrypt SSL zu sichern:

certbot --apache -d friendica.example.com

Sie werden aufgefordert, Ihre E-Mail-Adresse anzugeben und die Nutzungsbedingungen zu akzeptieren, wie unten gezeigt:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator standalone, Installer None
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): hitjethva1981@gmail.com

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing 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
Plugins selected: Authenticator apache, Installer apache
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for friendica.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/friendica-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/friendica-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/friendica-le-ssl.conf

Wählen Sie als Nächstes aus, ob der HTTP-Datenverkehr auf HTTPS umgeleitet werden soll oder nicht (siehe unten):

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Geben Sie 2 ein und drücken Sie die Eingabetaste, um das Let’s Encrypt SSL für Ihre Website zu installieren:

Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/friendica.conf to ssl vhost in /etc/apache2/sites-available/friendica-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://friendica.example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=friendica.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/friendica.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/friendica.example.com/privkey.pem
   Your cert will expire on 2020-10-23. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - 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

Jetzt können Sie über die URL https://friendica.example.com sicher auf Ihre Website zugreifen.

Fazit

Herzlichen Glückwunsch! Sie haben die Friendica Social Network Plattform erfolgreich auf dem Ubuntu 20.04 Server installiert und konfiguriert. Sie können nun Ihre Social-Network-Community von einem zentralen Ort aus verwalten.

Das könnte dich auch interessieren …