Ich habe mir Friendica auf meinem Debian 10 Server installiert. Friendica ist Mein soziales Netzwerk. Als Power-User hoste ich mir wichtige Dinge selbst und so auch mein soziales Netzwerk.
Den Apachen installieren
Ich werwende den Apache als Webserver im Internet.
sudo apt install apache2
Ein Let’s Encrypt-Zertifikat einrichten
Das Let’s Encrypt-Paket für den Apache installieren
sudo apt install python-certbot-apache
Danach wird der Client gestartet.
sudo certbot --apache
Hierbei arbeitet man die Installationsroutine durch. Die möglichen Eingaben sind 1,2,Y oder N. Die entsprechende Domain ist anzugeben und man tippt eine valide Mail-Adresse ein und bestätigt die zukünftige Weiterleitung der Anfragen auf SSL. Das so erstellte Zertifikat liegt im Verzeichnis /etc/letsencrypt/live/domain.tld/.
Virtual Hosts konfigurieren
Ich erstelle mir in /etc/apache2/sites-available die Datei friendica-ssl.conf mit folgendem Inhalt.
# PORT 443 SSL CONFIG # *******************# PORT 80 REDIRECT CONFIG # *********************** DocumentRoot /var/www/html/friendica/ ServerName example.com ErrorLog /var/log/apache2/error.log LogLevel warn CustomLog /var/log/apache2/access.log combined <Directory "/var/www/html/friendica/"> Options +Includes Options +FollowSymLinks -Indexes AllowOverride All Include /etc/letsencrypt/options-ssl-apache.conf SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem ServerName example.com ServerAdmin webmaster@localhost DocumentRoot /var/www/html/friendica/ Options Indexes FollowSymLinks MultiViews AllowOverride All Require all granted ErrorLog /var/log/apache2/error.log LogLevel warn CustomLog /var/log/apache2/access.log combined ServerSignature On RewriteEngine on #RewriteCond %{SERVER_NAME} =example.com #RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent] RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [R=301;L,NE]
Die Zeile AllowOverride All sorgt dafür das der Apache die .htaccess Datei auswertet.
Nun wird der neuer Virtual Host aktiviert.
sudo a2ensite friendica-ssl.conf
Datenbank anlegen
Ich verwende MariaDB
sudo apt install mariadb-server
Während der Installation wird das Passwort für den User root angezeigt. Dieses sollte man sich notieren und speichern.
root@server# mysql -u root mysql> CREATE DATABASE friendica; mysql> CREATE USER 'friend' IDENTIFIED BY 'tollespasswort'; mysql> FLUSH PRIVILEGES; mysql> quit
Hat man Probleme die Datenbank zu nutzen, sollte man den Artikel root-Login-Problem mit MariaDB im Kofler Blog durchlesen.
Mailserver Exim
Mailserver exim4 installieren.
sudo apt install exim4-daemon-light
exim4 konfigurieren
sudo dpkg-reconfigure exim4-config
siehe für Details auf gambaru.de Nur versenden: Mailserver mit Debian und Exim.
Installation der nötigen Pakete für Friendica
Es werden PHP-Pakete und ein git Paket installiert. Mit git wird später Friendica von der Projektseite in das Verzeichniss des Webservers geklont.
sudo apt install php7.3 php7.3-curl php7.3-gd php7.3-mysql php7.3-xml php-mbstring php7.3-imagick git-core
Installieren von Friendica und den Addons
root@server# cd /var/www/html
git clone -b stable https://github.com/friendica/friendica.git
cd friendica
cp .htacces-dist .htaccess
root@server /var/www/html/friendica
git clone https://github.com/friendica/friendica-addons.git addon
Setzen der Rechte
root@server# chown user:www-data /var/www/html/friendica/view/smarty3
root@server# chmod g+w /var/www/html/friendica/view/smarty3
Cronjob einrichten
Damit nun Friendica immer bei den Nachrichten auf dem neuesten Stand ist, sollte noch ein Cronjob, alle 5 Minuten, eingerichtet werden.
root@server:~# sudo -u www-data crontab -e
*/5 * * * * cd /var/www/html/friendica/; /usr/bin/php bin/worker.php
Fazit
So in etwa verlief meine Installation von Friendica. Der Artikel soll einen ungefähren Eindruck vermitteln, welche Schritte zur Installation von Friendica notwendig sind. Es ist jedoch keine copy and paste Anleitung.
Bei der Installation sollte auch der eigene Kopf benutzt werden.
Viel Spaß mit Friendica.