LAMP & CO auf dem Homeserver installieren

Apache und PHP für nextcloud vorbereiten

Zuerst installieren wir PHP und Apache2. Apache ist sehr Leistungsfähig und bietet mehr, als man für den Homeserver benötigt.

sudo apt install -y apache2 libapache2-mod-php7.4
sudo apt install -y php7.4-fpm php7.4-mysql php7.4-mbstring php7.4-dom php7.4-gd php7.4-json php7.4-curl php7.4-intl php-imagick php7.4-xml php7.4-zip php-pear

Anschließend erstellen wir die PHP Konfiguration für PHP-fpm in apache:

sudo vi /etc/apache2/conf-available/php-fpm.conf

In die Datei fügen wir die folgenden Inhalte ein:

<IfModule mod_fastcgi.c>
        AddHandler php7-fcgi .php
        Action php7-fcgi /php7-fcgi
        Alias /php7-fcgi /usr/lib/cgi-bin/php7-fcgi
        FastCgiExternalServer /usr/lib/cgi-bin/php7-fcgi -socket /run/php/php7.4-fpm.sock -pass-header Authorization -idle-timeout 60
        <Directory /usr/lib/cgi-bin>
                Require all granted
        </Directory>
</IfModule>

Nach dem Speichern erlauben wir die Konfiguration:

sudo a2enconf php-fpm

Zu guter Letzt bereiten wir den Homeserver noch für mehrere vhosts vor, so dass man einen besseren Überblick behält.

sudo mkdir -p /var/www/vhosts

Mariadb als Datenbank-Server

sudo apt install -y mariadb-server phpmyadmin

Anschließend mysql absichern:

sudo mysql_secure_installation

Enter current password for root (enter for none): Enter

Set root password? [Y/n]: N

Remove anonymous users? [Y/n]: Y

Disallow root login remotely? [Y/n]: Y

Remove test database and access to it? [Y/n]: Y

Reload privilege tables now? [Y/n]: Y

UFW ports freischalten

sudo ufw allow 'Apache Full'

Homeserver mit Ubuntu 20.04 aufsetzen - Schritte