Installation Nextcloud unter Ubuntu 22.04 LTS: Unterschied zwischen den Versionen

Aus Privates Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 15: Zeile 15:
apt update && apt upgrade -y
apt update && apt upgrade -y


# Installing apache
#Installing apache
apt install apache2
apt install apache2



Version vom 10. Mai 2023, 05:38 Uhr

Diese Anleistung basiert auf folgender Anleitung:

[1]


Die beiden zusätzlichen Änderungen am Schuss ergeben sich nach dem überprüfen der Einstellungen in Nextcloud.



Nextcloud 25 Installation auf Basis Ubuntu 22.04 LTS


  1. Betriebsystem auf aktuellen Stand bringen

apt update && apt upgrade -y

  1. Installing apache

apt install apache2

  1. Install PHP 8.1

apt install software-properties-common add-apt-repository ppa:ondrej/php apt update

  1. Install PHP 8.1 & Moduls

apt install php8.1 libapache2-mod-php8.1 php8.1-zip php-dompdf php8.1-xml php8.1-mbstring php8.1-gd php8.1-curl php8.1-imagick libmagickcore-6.q16-6-extra php8.1-intl php8.1-bcmath php8.1-gmp php8.1-cli php8.1-mysql php8.1-zip php8.1-gd php8.1-mbstring php8.1-curl php8.1-xml php-pear unzip nano php8.1-apcu redis-server ufw php8.1-redis

  1. adjust PHP.ini file

nano /etc/php/8.1/apache2/php.ini

memory_limit = 1024M upload_max_filesize = 16G post_max_size = 16G date.timezone = Europe/Berlin output_buffering = Off

  1. Install Databse Server

apt install mariadb-server

  1. Maria DB Server Konfiguration

mysql_secure_installation

  1. open SQL dialoge

mysql

  1. create database calles nextcloud

CREATE DATABASE nextcloud;

  1. create database user with password

CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'password_here';

  1. grant accesss to databse

GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextclouduser'@'localhost';

  1. save changes and exit

FLUSH PRIVILEGES; EXIT;

  1. Download lastest nextcloud version

cd /tmp && wget https://download.nextcloud.com/server/releases/latest.zip unzip latest.zip mv nextcloud /var/www/

  1. create new conf

nano /etc/apache2/sites-available/nextcloud.conf <VirtualHost *:80> ServerAdmin master@domain.com DocumentRoot /var/www/nextcloud/ ServerName demo.domain.com ServerAlias www.demo.domain.com

Alias /nextcloud "/var/www/nextcloud/" <Directory /var/www/nextcloud/> Options +FollowSymlinks AllowOverride All Require all granted <IfModule mod_dav.c> Dav off </IfModule> SetEnv HOME /var/www/nextcloud SetEnv HTTP_HOME /var/www/nextcloud </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>

  1. Enable the NextCloud and Rewrite Module

a2ensite nextcloud.conf a2enmod rewrite a2enmod headers a2enmod env a2enmod dir a2enmod mime

  1. restart apache

service apache2 restart

  1. prepare data folder

mkdir /home/data/ chown -R www-data:www-data /home/data/

chown -R www-data:www-data /var/www/nextcloud/ chmod -R 755 /var/www/nextcloud/

    1. create Let's Encrypt SSL-Certificate
  1. install certbot

apt install certbot python3-certbot-apache

certbot --apache -m master@domain.com -d cloud.domain.com

  1. --> only lasts 90 days
  1. gegebenenfall das Paket cron installieren
  2. install crontab

crontab -e 40 3 * * 0 letsencrypt renew >> /var/log/letsencrypt-renew.log && service apache2 reload > /dev/null 2>&1

--> Domain ansurfen und Einrichtung abschließen



Abschliessende Änderungen:

1. Erweitern der Datei : /etc/apache2/sites-available/nextcloud-le-ssl.conf um folgenden Eintrag

  1. Strict-Transport-Security:
 <VirtualHost *:443>
 ServerName cloud.nextcloud.com

<IfModule mod_headers.c> Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains" </IfModule>

</VirtualHost>


2. Erweitern der Einstellungen in der Datein /var/www/nextcloud/config/config.php um folgenden Eintrag 'default_phone_region' => 'DE',

(bei einer Snap Installation unter Ubuntu 20.04 liegt die Datei unter /var/snap/nextcloud/current/config/config.php)