Nextcloud installation

Nextcloud, Apache2 und MySQL Installation

  • 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.

  • 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
  • Aktualisiere noch einmal die Paketlisten

apt update

Installation von Apache2

  • Installiere den Apache2 Webserver

apt install apache2 -y

Installation von PHP

  • 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

Installation von PHPMyAdmin

  • Installiere MySQL

apt install mariadb-server mariadb-client -y

Schließe die MySQL Installation ab

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".

  • 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/
  • 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;

Installation von Nextcloud

  • 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/

Nextcloud Nutzer anlegen

Nun ist die Installation von Nextcloud erfolgreich abgeschlossen

Last updated