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:
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:
Geben Sie Ihren Domänennamen und den Installationspfad an und klicken Sie auf die Schaltfläche Senden. Sie sollten die folgende Seite sehen:
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:
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:
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.