Ldfa Posté(e) le 30 décembre 2019 Partager Posté(e) le 30 décembre 2019 Cet article est une mise à jour du précédent sur l’installation d’un serveur Owncloud, avec comme différence l’utilisation d’un certificat Let’s Encrypt. Je vais donc aller à l’essentiel et utiliser que les paquets stables présent dans les dépôts de Debian Jessie, car dans ce cas présent, je souhaite privilégier la stabilité et la sécurité au dépend de la performance. apt install nginx php5-fpm php5-mysqlnd mariadb-server Ajout de la clé : wget -nv https://download.owncloud.org/download/repositories/stable/Debian_8.0/Release.key -O Release.key apt-key add - < Release.key Ajout du dépôt :sh -c "echo 'deb http://download.owncloud.org/download/repositories/stable/Debian_8.0/ /' >> /etc/apt/sources.list.d/owncloud.list"Installation de Owncloud :apt update && apt install owncloud Création du certificat Let’s Encrypt avec une clé Diffie-Hellman: Pour rappel sur l’installation de Let’s Encrypt, voir cet article : https://memo-linux.com/configurer-le-serveur-web-nginx-en-https-avec-letsencrypt-sous-debian-jessie/ Création du certificat : cd /opt/letsencrypt ./letsencrypt-auto certonly -d owncloud.memo-linux.com --rsa-key-size 4096 Création de la clé de chiffrement Diffie-Hellman :openssl dhparam -out /etc/ssl/private/dhparams.pem 4096 Le server block pour owncloud upstream php-handler { server 127.0.0.1:9000; #server unix:/var/run/php5-fpm.sock; } server { listen 80; server_name owncloud.memo-linux.com; # enforce https return 301 https://$server_name$request_uri; } server { listen 443 ssl; server_name owncloud.memo-linux.com; ssl_certificate /etc/letsencrypt/live/owncloud.memo-linux.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/owncloud.memo-linux.com/privkey.pem; ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH"; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_dhparam /etc/ssl/private/dhparams.pem; ssl_buffer_size 16k; ssl_session_tickets off; ssl_stapling on; ssl_stapling_verify on; ssl_trusted_certificate /etc/letsencrypt/live/owncloud.memo-linux.com/fullchain.pem; resolver 127.0.0.1 8.8.8.8;##j'ai mon propre serveur dns en local # Path to the root of your installation root /var/www/owncloud/; # set max upload size client_max_body_size 10G; fastcgi_buffers 64 4K; # Disable gzip to avoid the removal of the ETag header gzip off; # Uncomment if your server is build with the ngx_pagespeed module # This module is currently not supported. #pagespeed off; rewrite ^/caldav(.*)$ /remote.php/caldav$1 redirect; rewrite ^/carddav(.*)$ /remote.php/carddav$1 redirect; rewrite ^/webdav(.*)$ /remote.php/webdav$1 redirect; index index.php; error_page 403 /core/templates/403.php; error_page 404 /core/templates/404.php; location = /robots.txt { allow all; log_not_found off; access_log off; } location ~ ^/(?:\.htaccess|data|config|db_structure\.xml|README){ deny all; } location / { # The following 2 rules are only needed with webfinger rewrite ^/.well-known/host-meta /public.php?service=host-meta last; rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last; rewrite ^/.well-known/carddav /remote.php/carddav/ redirect; rewrite ^/.well-known/caldav /remote.php/caldav/ redirect; rewrite ^(/core/doc/[^\/]+/)$ $1/index.html; try_files $uri $uri/ =404; } location ~ \.php(?:$|/) { fastcgi_split_path_info ^(.+\.php)(/.+)$; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param HTTPS on; fastcgi_pass php-handler; fastcgi_intercept_errors on; } # Adding the cache control header for js and css files # Make sure it is BELOW the location ~ \.php(?:$|/) { block location ~* \.(?:css|js)$ { add_header Cache-Control "public, max-age=7200"; # Add headers to serve security related headers add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload;"; add_header X-Content-Type-Options nosniff; add_header X-Frame-Options "SAMEORIGIN"; add_header X-XSS-Protection "1; mode=block"; add_header X-Robots-Tag none; # Optional: Don't log access to assets access_log off; } # Optional: Don't log access to other assets location ~* \.(?:jpg|jpeg|gif|bmp|ico|png|swf)$ { access_log off; } } Test de la configuration : nginx -t Relance de Nginx : systemctl restart nginx Se connecter à MariaDB :mysql -u user -pCréation de la base de donnée : CREATE DATABASE exemplebase; CREATE USER 'userbase'@'localhost' IDENTIFIED BY 'supermdpdelamort'; GRANT ALL PRIVILEGES ON exemplebase.* TO 'userbase'@'localhost'; FLUSH PRIVILEGES; exemplebase : c’est le nom de la base de données pour owncloud. userbase : c’est le nom de l’utilisateur associé à la base. supermdpdelamort : c’est le mot de passe pour l’utilisateur associé à la base. Test d’accès dans un navigateur internet : https://owncloud.domaine.tld Créer un utilisateur et cliquer sur « Terminer l’installation » : Installation de Owncloud terminée : Afficher l’article complet Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.