Install Nextcloud with SSL
Install yast_http module, Apache2 sample page and configure apache2 basics include vhost (install script)
zypper in apache2 apache2-example-pages mariadb apache2-mod_php7 php7-gd php7-json php7-fpm php7-mysql php7-curl php7-intl php7-zip php7-mbstring php7-zlib php7-openssl php7-fileinfo php7-pcntl php7-posix
Start and enable mysql database
systemctl start mysql.service systemctl enable mysql.service
Change mysql root password and create nextcloud database and assign access rights to nextcloud admin
mysqladmin -u root password 'password' mysql -u root -p CREATE DATABASE db_nextcloud; GRANT ALL ON db_nextcloud.* TO ncadmin@localhost IDENTIFIED BY 'password'
Change /etc/php7/apache2/php.ini
post_max_size = 50G upload_max_filesize = 25G max_file_uploads = 200 max_input_time = 3600 max_execution_time = 3600 session.gc_maxlifetime = 3600 memory_limit = 512M
Enable needed apache modules for nextcloud
a2enmod php7 a2enmod rewrite a2enmod headers a2enmod env a2enmod dir a2enmod mime a2enmod ssl a2enmod rewrite
Start and enable apache webserver
systemctl start apache2.service systemctl enable apache2.service
Prepare nextcloud data directory
mkdir /srv/www/htdocs/nextcloud_data chmod -R 0770 /srv/www/htdocs/nextcloud_data chown wwwrun /srv/www/htdocs/nextcloud_data
Install nextcloud and set access rights
zypper in nextcloud chown -R wwwrun /srv/www/htdocs/nextcloud/
Open Firewall ports 80, 443
Add Lets encrypt repository and install certbot
zypper addrepo http://download.opensuse.org/repositories/devel:/languages:/python/openSUSE_Leap_15.0/devel:languages:python.repo zypper install certbot python-certbot python-certbot-apache
Create apache ip-based_vhosts.conf files for port 80
<VirtualHost *:80> DocumentRoot /srv/www/htdocs ServerName cloud.domain.at ServerAdmin webadmin@domain.at <Directory /srv/www/htdocs> AllowOverride None Require all granted </Directory> </VirtualHost> <VirtualHost *:80> DocumentRoot /srv/www/htdocs ServerName collab.domain.at ServerAdmin webadmin@domain.at <Directory /srv/www/htdocs> AllowOverride None Require all granted </Directory> </VirtualHost>
Run certbot for apache
certbot --apache