- Aktualisiere die Paketlisten & installiere die Updates.
apt update && apt upgrade -y
- Installiere für die weitere Installation benötigte Pakete.
apt install ca-certificates nano lsb-release gnupg apt-transport-https curl unzip -y
Wähle dein Betriebssystem aus. Solltest du nicht wissen, welches Betriebssystem du verwendest, kannst du dies mit dem Befehl
cat /etc/issue
nachschauen.
{% tabs %} {% tab title="Debian" %}
- Füge die Paket-Quelle für die PHP8.0 Version hinzu.
curl -fsSL https://packages.sury.org/php/apt.gpg -o /usr/share/keyrings/php-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/php-archive-keyring.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
{% endtab %}
{% tab title="Ubuntu" %}
- Füge die Paket-Quelle für die PHP8.0 Version hinzu.
apt install software-properties-common -y
add-apt-repository ppa:ondrej/php
{% endtab %} {% endtabs %}
- Aktualisiere noch einmal die Paketlisten
apt update
- Installiere den Apache2 Webserver
apt install apache2 -y
- Installiere PHP8 sowie die PHP-Module
apt install php8.0 php8.0-cli php8.0-common php8.0-curl php8.0-gd php8.0-intl php8.0-mbstring php8.0-mysql php8.0-opcache php8.0-readline php8.0-xml php8.0-xsl php8.0-zip php8.0-bz2 libapache2-mod-php8.0 -y
- Installiere MySQL
apt install mariadb-server mariadb-client -y
Schließe die MySQL Installation ab {% tabs %} {% tab title="Debian 10 & Ubuntu" %} Gebe den Befehl
mysql_secure_installation
ein. Bei der ersten Abfrage des aktuellen Passworts drücke einfach "Enter". Bestätige die nächste Frage bzgl. der Änderung des Root-Passworts mit "Enter". Nun musst du ein Passwort für den Root-Benutzer des MariaDB-Servers vergeben. Während der Eingabe erscheinen keine Zeichen, das ist jedoch normal. Bestätige alle darauffolgenden Fragen (Löschung des anonymen Benutzers, Verbieten des externen Root-Logins aus Sicherheitsgründen, Entfernen der Testdatenbank und Aktualisieren der Rechte) ebenfalls mit "Enter".
{% endtab %}
{% tab title="Debian 11" %} Gebe den Befehl
mysql_secure_installation
ein. Bei der ersten Abfrage des aktuellen Passworts drücke einfach "Enter". Gebe bei der anschließenden Frage bzgl. des Wechsels zur Unix-Socket-Authentifizierung "n" ein und drücke die "Enter"-Taste. Bestätige die nächste Frage bzgl. der Änderung des Root-Passworts mit "Enter". Nun musst du ein Passwort für den Root-Benutzer des MariaDB-Servers vergeben. Während der Eingabe erscheinen keine Zeichen, das ist jedoch normal. Bestätige alle darauffolgenden Fragen (Löschung des anonymen Benutzers, Verbieten des externen Root-Logins aus Sicherheitsgründen, Entfernen der Testdatenbank und Aktualisieren der Rechte) ebenfalls mit "Enter".
{% endtab %} {% endtabs %}
- Wechsel mit dem Befehl
cd /usr/share
in das Verzeichnis, wo PhpMyAdmin installiert wird.
- Lade PhpMyAdmin herunter
wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.zip -O phpmyadmin.zip
- Entpacke das Archiv
unzip phpmyadmin.zip
- Entferne das heruntergeladene Archiv
rm phpmyadmin.zip
Nenne das PhpMyAdmin Verzeichnis um
mv phpMyAdmin-*-all-languages phpmyadmin
Vergebe die benötigten Rechte
chmod -R 0755 phpmyadmin
- Erstelle die Apache Konfigurationsdatei
echo "Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin>
Options SymLinksIfOwnerMatch
DirectoryIndex index.php
</Directory>
# Disallow web access to directories that don't need it
<Directory /usr/share/phpmyadmin/templates>
Require all denied
</Directory>
<Directory /usr/share/phpmyadmin/libraries>
Require all denied
</Directory>
<Directory /usr/share/phpmyadmin/setup/lib>
Require all denied
</Directory>" >> /etc/apache2/conf-available/phpmyadmin.conf
- Aktiviere die Apache Konfigurationsdatei
a2enconf phpmyadmin
- Reloade den Apache Service
systemctl reload apache2
- Erstelle das Temporäre Verzeichnis für PhpMyAdmin
mkdir /usr/share/phpmyadmin/tmp/
- Gebe dem Webnutzer die Berechtigung, auf das temporäre Verzeichnis zuzugreifen.
chown -R www-data:www-data /usr/share/phpmyadmin/tmp/
{% tabs %} {% tab title="Debian 10 & Ubuntu" %}
- Melde dich bei dem MySQL Server an
mysql -u root
- Stelle das Authentifizierungsplugin des Root-Benutzers von UNIX auf die Standardauthentifizierung um.
UPDATE mysql.user SET plugin = 'mysql_native_password' WHERE user = 'root' AND plugin = 'unix_socket';
FLUSH PRIVILEGES;
{% endtab %}
{% tab title="Debian 11" %}
- Melde dich bei dem MySQL Server an
mysql -u root
- Erstelle einen neuen Benutzer. Trage bei "username" einen Benutzernamen und bei "password" ein Passwort ein.
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
- Dieser Befehl weißt deinem Nutzernamen alle Rechte, die man als Inhaber braucht
GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' WITH GRANT OPTION;
exit
{% endtab %} {% endtabs %}
- Navigiere zum path vom Web-Server
cd /var/www/html
- Lade Nextcloud herunter
wget https://download.nextcloud.com/server/releases/latest.tar.bz2
- Entpacke Nextcloud
tar xfvj latest.tar.bz2
- Lösche das Nextcloud Archiv
rm latest.tar.bz2
- Aktiviere Apache2 mod_rewrite
a2enmod rewrite
- Starte Apache2 neu
systemctl restart apache2
- Gebe dem Webserver das Besitzerrecht.
chown -R www-data:www-data /var/www/html/nextcloud/