serveur_hebergement:nextcloud_et_collabora_online

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
serveur_hebergement:nextcloud_et_collabora_online [2022/10/04 17:10] fateserveur_hebergement:nextcloud_et_collabora_online [2024/01/14 11:54] (Version actuelle) – [Prérequis] fate
Ligne 1: Ligne 1:
 ====== Nextcloud et Collabora Online ====== ====== Nextcloud et Collabora Online ======
  
-Nextcloud est un logiciel libre qui permet d'héberger des fichiers soit personnels soit en mode collaboratif. Vous pouvez donc y stockez vos fichiers mais aussi, grâce à une multitude d'application, vos mails, votre musique, vos recette de cuisines, vos notes, accéder à Matrix, etc. +Nextcloud est un logiciel libre qui permet d'héberger des fichiers soit personnels soit en mode collaboratif. Vous pouvez donc y stocker vos fichiers mais aussi, grâce à une multitude d'applications, vos mails, votre musique, vos recettes de cuisines, vos notes, accéder à Matrix, etc. 
 Vous pouvez également créer et modifier des tableurs et fichiers docx/odt via Collabora Online. Vous pouvez également créer et modifier des tableurs et fichiers docx/odt via Collabora Online.
  
Ligne 16: Ligne 16:
  
 On va activer le module apcu qui va gérer le cache de Nextcloud. Ouvrez le fichier php.ini : On va activer le module apcu qui va gérer le cache de Nextcloud. Ouvrez le fichier php.ini :
-<code bash>sudo nano /etc/php/7.4/cli/php.ini</code>+<code bash>sudo nano /etc/php/8.2/cli/php.ini</code>
  
 Dans la partie Dynamic Extensions, ajoutez la ligne suivante : Dans la partie Dynamic Extensions, ajoutez la ligne suivante :
Ligne 27: Ligne 27:
 ==== Installation ==== ==== Installation ====
  
-On va récupérer le dépôt officiel en commençant pas récupérer les clés de signature :+On va récupérer le dépôt officiel en commençant par récupérer les clés de signature :
 <code bash> <code bash>
 cd /usr/share/keyrings cd /usr/share/keyrings
Ligne 67: Ligne 67:
 <ca_file_path desc="Path to the ca file" relative="false">/etc/letsencrypt/live/domaine.fr/chain.pem</ca_file_path> <ca_file_path desc="Path to the ca file" relative="false">/etc/letsencrypt/live/domaine.fr/chain.pem</ca_file_path>
 </code> </code>
- 
 Il faut que l'utilisateur cool est accès à ces fichiers. Il faut que l'utilisateur cool est accès à ces fichiers.
 +
 +On va diriger les logs dans un fichier distinct, /var/log/coolwsd.log, plutôt que de mettre dans syslog :
 +<code bash><file enable="false"></code>
 +par
 +<code bash><file enable="true"></code>
 +
 +On va également limiter les logs au niveau warning et supérieur. Remplacez la ligne :
 +<code bash><lokit_sal_log type="string" desc="Fine tune log messages from LOKit. Default is to suppress log messages from LOKit." default="-INFO-WARN">-INFO-WARN</lokit_sal_log></code>
 +par 
 +<code bash><lokit_sal_log type="string" desc="Fine tune log messages from LOKit. Default is to suppress log messages from LOKit." default="-INFO-WARN">-WARN</lokit_sal_log></code>
 +
 +
 +Après la ligne "</alias_groups>", ajoutez la ligne suivante pour autoriser Nextcloud, qui sera accessible à l'adresse nextcloud.domaine.fr, à se connecter (remplacez le domaine) :
 +<code bash><host allow="true" desc="Regex pattern of hostname to allow or deny.">nextcloud\.domaine\.fr</host></code>
 +
 +Créez le fichier de log : 
 +<code bash>sudo touch /var/log/coolwsd.log</code>
 +
 +Changez le propriétaire du fichier :
 +<code bash>sudo chown cool:cool /var/log/coolwsd.log</code>
  
 Redémarrez Collabora Online : Redémarrez Collabora Online :
Ligne 99: Ligne 118:
         CustomLog ${APACHE_LOG_DIR}/office.access.log combined                                                                 CustomLog ${APACHE_LOG_DIR}/office.access.log combined                                                        
         ErrorLog ${APACHE_LOG_DIR}/office.error.log         ErrorLog ${APACHE_LOG_DIR}/office.error.log
-                                                                                                                       +         
-        <IfModule mod_ssl.c>                                                                                                                                                                                                                                SSLEngine on                                                                                           +        SSLEngine on 
-                SSLCertificateFile /etc/letsencrypt/live/domaine.fr/fullchain.pem                                     +        SSLCertificateFile /etc/letsencrypt/live/domaine.fr/fullchain.pem                                     
-                SSLCertificateKeyFile /etc/letsencrypt/live/domaine.fr/privkey.pem                                    +        SSLCertificateKeyFile /etc/letsencrypt/live/domaine.fr/privkey.pem                                   
-                                                            +
-                # HSTS (mod_headers is required) (15768000 seconds = 6 months)  +
-                Header always set Strict-Transport-Security "max-age=15768000" +
-                                                            +
-        </IfModule>                                      +
                                                                                                                        
         # Encoded slashes need to be allowed                # Encoded slashes need to be allowed       
Ligne 145: Ligne 159:
 </VirtualHost>                                           </VirtualHost>                                          
                                                                                                                                                                                                                                              
-# modern configuration, tweak to your needs         
-SSLProtocol             all -SSLv3 -TLSv1 -TLSv1.1                                                                                                                                                                                           
-SSLCipherSuite          ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCMSHA256:ECDHEECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256 
-SSLHonorCipherOrder     on 
-SSLCompression          off        
-SSLSessionTickets       off                                 
-                                                                                                                       
-# OCSP Stapling, only in httpsd 2.3.3 and later            
-SSLUseStapling          on                                                                                             
-SSLStaplingResponderTimeout 5                                                                                          
-SSLStaplingReturnResponderErrors off                        
-SSLStaplingCache        shmcb:/var/run/ocsp(128000) 
 </code> </code>
  
Ligne 165: Ligne 167:
 <code bash>sudo systemctl restart apache2.service</code> <code bash>sudo systemctl restart apache2.service</code>
  
 +Passons à Nextcloud.
  
 +===== Nextcloud =====
  
-  +==== Téléchargement ====
- +
  
 Téléchargez la dernière version de Nextcloud : Téléchargez la dernière version de Nextcloud :
Ligne 182: Ligne 184:
 <code bash>sudo chown -R www-data:www-data nextcloud</code> <code bash>sudo chown -R www-data:www-data nextcloud</code>
  
-===== Création de la base de données =====+==== Création de la base de données ====
  
 Lancez MySQL : Lancez MySQL :
Ligne 202: Ligne 204:
 <code sql>exit</code> <code sql>exit</code>
  
-===== Configuration de Apache2 =====+==== Configuration d’Apache2 ====
  
 Créez le fichier de configuration Apache2 (remplacez le nom de domaine) : Créez le fichier de configuration Apache2 (remplacez le nom de domaine) :
Ligne 212: Ligne 214:
  
         DocumentRoot /var/www/nextcloud/         DocumentRoot /var/www/nextcloud/
- 
         ServerName nextcloud.domaine.fr         ServerName nextcloud.domaine.fr
-        ServerAdmin fate@domaine.fr 
  
         Redirect / https://nextcloud.domaine.fr/         Redirect / https://nextcloud.domaine.fr/
Ligne 224: Ligne 224:
  
         DocumentRoot /var/www/nextcloud/         DocumentRoot /var/www/nextcloud/
- 
         ServerName nextcloud.domaine.fr         ServerName nextcloud.domaine.fr
-        ServerAdmin fate@domaine.fr 
  
         LogLevel warn         LogLevel warn
Ligne 232: Ligne 230:
         ErrorLog ${APACHE_LOG_DIR}/nextcloud.error.log         ErrorLog ${APACHE_LOG_DIR}/nextcloud.error.log
  
-        <IfModule mod_ssl.c> +        SSLEngine on 
-                SSLEngine on +        SSLCertificateFile /etc/letsencrypt/live/domaine.fr/fullchain.pem 
-                SSLCertificateFile /etc/letsencrypt/live/domaine.fr/fullchain.pem +        SSLCertificateKeyFile /etc/letsencrypt/live/domaine.fr/privkey.pem 
-                SSLCertificateKeyFile /etc/letsencrypt/live/domaine.fr/privkey.pem +        #Header set Content-Security-Policy "script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; connect-src 'self'; media-src 'self'; child-src 'self'; object-src 'self'; form-action 'self'; img-src 'self' * data:"
-                #Header set Content-Security-Policy "script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; connect-src 'self'; media-src 'self'; child-src 'self'; object-src 'self'; form-action 'self'; img-src 'self' * data:" +
-        </IfModule> +
  
         <Directory /var/www/nextcloud/>         <Directory /var/www/nextcloud/>
Ligne 253: Ligne 248:
  
 </VirtualHost> </VirtualHost>
- 
-# modern configuration, tweak to your needs 
-SSLProtocol             all -SSLv3 -TLSv1 -TLSv1.1 
-SSLCipherSuite          ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256 
-SSLHonorCipherOrder     on 
-SSLCompression          off 
-SSLSessionTickets       off 
- 
-# OCSP Stapling, only in httpd 2.3.3 and later 
-SSLUseStapling          on 
-SSLStaplingResponderTimeout 5 
-SSLStaplingReturnResponderErrors off 
-SSLStaplingCache        shmcb:/var/run/ocsp(128000) 
  
 </code> </code>
Ligne 275: Ligne 257:
 <code bash>sudo systemctl restart apache2.service</code> <code bash>sudo systemctl restart apache2.service</code>
  
-===== Installation de Nextcloud =====+==== Installation de Nextcloud ====
  
 Allez à l'adresse https://nextcloud.domaine.fr : Allez à l'adresse https://nextcloud.domaine.fr :
Ligne 291: Ligne 273:
 {{:serveur_hebergement:pasted:20221004-182417.png?400}} {{:serveur_hebergement:pasted:20221004-182417.png?400}}
  
-Nextcloud est maintenant installé. Passons à l'installation de Collabora Online.+Nextcloud est maintenant installé. Passons à la configuration.
  
  
-===== Configuration de Nextcloud =====+==== Configuration de Nextcloud ====
  
-Ouvrez le fichier de config de Nextcloud : +Cliquez sur l'icône en haut à droite et choisissez "Applications"
-<code bash>sudo nano /var/www/nextcloud/config/config.php</code>+Allez dans la partie "Bureautique et texte" et installez l'application "Collabora Online" (le mot de passe administrateur vous sera demandé).
  
-Ajoutez la ligne suivante pour activer le cache via APCu : +Cliquez de nouveau sur l'icône en haut à droite et cliquez sur "Paramètres". 
-<code bash>'memcache.local=> '\OC\Memcache\APCu',</code>+Allez dans Administration Paramètres de base et choisissez l'option "Cron" dans "Tâches de fond"Sur cette même page, configurez l'envoi de mail.
  
 +Allez maintenant dans Administration > Nextcloud Office et cliquez sur "Utilisez votre propre serveur". Dans le champ, entrez https://office.domaine.fr puis cliquez sur Save. La pastille doit passer en vert.
  
 +{{:serveur_hebergement:pasted:20221004-193332.png?400}}
  
 +Sur le serveur, il va falloir créer une tâche cron avec l'utilisateur www-data pour lancer les tâches de fond :
 +<code bash>sudo -u www-data crontab -e</code>
 +Si on vous demande quel éditeur choisir, choisissez nano.
  
 +Ajoutez la ligne suivante pour exécuter le script cron.php toutes les 5 minutes :
 +<code bash>*/ *  *  *  * php -f /var/www/nextcloud/cron.php</code>
  
 +Il ne nous reste plus qu'à activer le cache. Ouvrez le fichier de configuration de Nextcloud :
 +<code bash>sudo nano /var/www/nextcloud/config/config.php</code>
  
 +Ajoutez la ligne suivante :
 +<code bash>'memcache.local' => '\OC\Memcache\APCu',</code>
  
- +VoilaNextcloud est installé et vous pouvez créer et éditer des fichiers type Word et Excel.
-===== Memory caching ===== +
- +
- +
-APCu +
- +
-APCu is a data cache, and it is available in most Linux distributionsOn Red Hat/CentOS/Fedora systems install php-pecl-apcuOn Debian/Ubuntu/Mint systems install php-apcu. +
- +
-After restarting your Web server, add this line to your config.php file: +
- +
-'memcache.local' => '\OC\Memcache\APCu',+
  
  
  • serveur_hebergement/nextcloud_et_collabora_online.1664903438.txt.gz
  • Dernière modification : 2023/08/08 14:01
  • (modification externe)