Ce tutoriel vous montrera comment intégrer OnlyOffice avec ownCloud . Comme vous le savez peut-être, OnlyOffice est une suite bureautique en ligne open source. L'équipe OnlyOffice a récemment publié une application d'intégration ownCloud OnlyOffice qui permet aux utilisateurs d'ownCloud de modifier et de collaborer sur des documents à l'aide des éditeurs en ligne OnlyOffice.
Les fonctionnalités de l'application d'intégration :
- Éditeur de texte complet disponible en ligne avec toutes les fonctionnalités des éditeurs de bureau.
- 100 % de fidélité d'affichage, de conversion, d'impression et de pagination.
- Ajoutez des liens, des tableaux et des graphiques, insérez des images, des formes automatiques, des formules et des objets texte et manipulez-les, créez des listes à puces ou numérotées et plus encore.
- Édition collaborative en temps réel avec vos coéquipiers :affichez les modifications instantanément ou uniquement après les avoir enregistrées. Utilisez les commentaires et le chat intégré, l'examen et le suivi des modifications.
- Prise en charge des formats les plus courants :modifiez les fichiers DOCX, XLSX, PPTX, TXT et enregistrez-les au format ODT, ODS, ODP, DOC, XLS, PPT, PPS, EPUB, RTF, HTML, HTM.
Pour intégrer ces deux logiciels, vous devrez procéder comme suit :
- installation du serveur de documents OnlyOffice fonctionnant en HTTPS
- installer l'application d'intégration ownCloud OnlyOffice sur votre serveur ownCloud.
Le serveur de documents OnlyOffice et le serveur ownCloud peuvent être installés sur deux machines différentes. Commençons.
Étape 1 :Installer le serveur de documents ONLYOFFICE
Veuillez noter que le serveur de documents OnlyOffice nécessite au moins 2 Go de RAM. Un espace de swap supplémentaire de 2 Go est recommandé. Le serveur de documents OnlyOffice dépend de PostgreSQL, Node.js, Redis Server, du serveur RabbitMQ et de Nginx. Les étapes suivantes sont testées sur un serveur Ubuntu 16.04 mais devraient également s'appliquer à d'autres distributions Linux basées sur Debian.
Installer PostgreSQL à partir du référentiel Ubuntu
sudo apt install postgresql
Créez ensuite le onlyoffice
base de données.
sudo -u postgres psql -c "CREATE DATABASE onlyoffice;"
Créez le onlyoffice
utilisateur.
sudo -u postgres psql -c "CREATE USER onlyoffice WITH password 'onlyoffice';"
Accorder l'autorisation.
sudo -u postgres psql -c "GRANT ALL privileges ON DATABASE onlyoffice TO onlyoffice;"
Installer NodeJS à partir du dépôt officiel
Le serveur de documents OnlyOffice nécessite nodejs 6.9.1+, mais la version du référentiel Ubuntu est obsolète, nous devrons donc installer la dernière version LTS (6.9.5) de Node.js à partir du référentiel en amont.
Ajoutez le référentiel Node.js.
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
Installez Node.js.
sudo apt install nodejs
Vérifiez la version de Node.js.
node -v
Exemple de sortie :
v6.9.5
Installer le serveur Redis et Rabbitmq
sudo apt install redis-server rabbitmq-server
Vérifiez leur statut.
systemctl status redis-server systemctl status rabbitmq-server
Vous devriez voir qu'ils sont actifs (en cours d'exécution) . Si rabbitmq-server
n'a pas pu démarrer, c'est principalement à cause d'une mémoire insuffisante sur la machine.
Installer le serveur de documents OnlyOffice
Ajoutez le référentiel OnlyOffice avec la commande suivante.
echo "deb http://download.onlyoffice.com/repo/debian squeeze main" | sudo tee /etc/apt/sources.list.d/onlyoffice.list
Importer la clé publique OnlyOffice.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5
Mettez à jour l'index de package local et installez le serveur de documents OnlyOffice. Notez que Nginx sera installé en tant que serveur Web, vous devrez donc peut-être arrêter Apache s'il est en cours d'exécution.
sudo apt update sudo apt install onlyoffice-documentserver
Au cours du processus d'installation, il vous sera demandé d'entrer le mot de passe PostgreSQL pour onlyoffice. Entrez "onlyoffice" (sans les guillemets doubles).
Une fois l'installation terminée, entrez l'adresse IP publique de votre serveur dans le navigateur Web, vous devriez voir "Document Server is running"
Activer HTTPS
Pour connecter ownCloud au serveur de documents OnlyOffice, ce dernier doit fonctionner en mode HTTPS. Les étapes suivantes montrent comment obtenir et installer le certificat Let's Encrypt TLS.
Modifier /etc/nginx/conf.d/onlyoffice-documentserver.conf
fichier.
sudo nano /etc/nginx/conf.d/onlyoffice-documentserver.conf
Modifiez la configuration comme ci-dessous. N'oubliez pas de définir un enregistrement A pour onlyoffice.your-domain.com
.
include /etc/nginx/includes/onlyoffice-http.conf; server { listen 0.0.0.0:80; listen [::]:80 default_server; server_name onlyoffice.your-domain.com; server_tokens off; include /etc/nginx/includes/onlyoffice-documentserver-*.conf; location ~ /.well-known/acme-challenge { root /var/www/onlyoffice/; allow all; } }
Enregistrez et fermez le fichier. Recharger Nginx
sudo systemctl reload nginx
Ensuite, installez le client certbot (Let's Encrypt).
sudo apt install letsencrypt
Ensuite, exécutez la commande suivante pour obtenir un certificat TLS gratuit à l'aide du plugin webroot.
sudo letsencrypt certonly --webroot --agree-tos --email your-email-address -d onlyoffice.your-domain.com -w /var/www/onlyoffice/
Dans quelques secondes, vous verrez un message comme ci-dessous, ce qui signifie que le certificat TLS a été obtenu avec succès.
Modifier onlyoffice-documentserver.conf
fichier.
sudo nano /etc/nginx/conf.d/onlyoffice-documentserver.conf
Supprimez tout ce qui se trouve dans ce fichier et collez le texte suivant dans le fichier.
include /etc/nginx/includes/onlyoffice-http.conf; ## Normal HTTP host server { listen 0.0.0.0:80; listen [::]:80 default_server; server_name onlyoffice.your-domain.com; server_tokens off; ## Redirects all traffic to the HTTPS host root /nowhere; ## root doesn't have to be a valid path since we are redirecting rewrite ^ https://$host$request_uri? permanent; } #HTTP host for internal services server { listen 127.0.0.1:80; listen [::1]:80; server_name localhost; server_tokens off; include /etc/nginx/includes/onlyoffice-documentserver-common.conf; include /etc/nginx/includes/onlyoffice-documentserver-docservice.conf; } ## HTTPS host server { listen 0.0.0.0:443 ssl; listen [::]:443 ssl default_server; server_name onlyoffice.your-domain.com; server_tokens off; root /usr/share/nginx/html; ssl on; ssl_certificate /etc/letsencrypt/live/onlyoffice.your-domain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/onlyoffice.your-domain.com/privkey.pem; ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA128:DHE-RSA-AES128-GCM-SHA384:DHE-RSA-AES128-GCM-SHA128:ECDHE-RSA-AES128-SHA384:ECDHE-RSA-AES128-SHA128:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-SHA128:DHE-RSA-AES128-SHA128:DHE-RSA-AES128-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA384:AES128-GCM-SHA128:AES128-SHA128:AES128-SHA128:AES128-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4"; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_session_cache builtin:1000 shared:SSL:10m; ssl_prefer_server_ciphers on; add_header Strict-Transport-Security max-age=31536000; # add_header X-Frame-Options SAMEORIGIN; add_header X-Content-Type-Options nosniff; ## [Optional] If your certficate has OCSP, enable OCSP stapling to reduce the overhead and latency of running SSL. ## Replace with your ssl_trusted_certificate. For more info see: ## - https://medium.com/devops-programming/4445f4862461 ## - https://www.ruby-forum.com/topic/4419319 ## - https://www.digitalocean.com/community/tutorials/how-to-configure-ocsp-stapling-on-apache-and-nginx # ssl_stapling on; # ssl_stapling_verify on; # ssl_trusted_certificate /etc/nginx/ssl/stapling.trusted.crt; # resolver 208.67.222.222 208.67.222.220 valid=300s; # Can change to your DNS resolver if desired # resolver_timeout 10s; ## [Optional] Generate a stronger DHE parameter: ## cd /etc/ssl/certs ## sudo openssl dhparam -out dhparam.pem 4096 ## #ssl_dhparam {{SSL_DHPARAM_PATH}}; location ~ /.well-known/acme-challenge { root /var/www/onlyoffice/; allow all; } include /etc/nginx/includes/onlyoffice-documentserver-*.conf; }
Enregistrez et fermez le fichier. Testez ensuite la configuration de Nginx et rechargez.
sudo nginx -t sudo systemctl reload nginx
Visitez https://onlyoffice.your-domain.com
dans le navigateur Web pour vérifier que le serveur de documents OnlyOffice fonctionne correctement en mode HTTPS.
Étape 2 :Installez l'application d'intégration ownCloud OnlyOffice
SSH dans votre serveur ownCloud, puis changez de répertoire pour le répertoire des applications ownCloud.
cd /var/www/owncloud/apps/
Ensuite, téléchargez l'application d'intégration ownCloud ONLYOFFICE à l'aide de la commande suivante.
sudo git clone https://github.com/ONLYOFFICE/onlyoffice-owncloud.git onlyoffice
Ensuite, allez sur la page ownCloud Apps, cliquez sur Not Enabled
et activez l'application OnlyOffice.
Après cela, accédez à la page d'administration d'ownCloud, sélectionnez l'onglet ONLYOFFICE dans le volet de gauche et entrez votre nom de domaine dans le champ Adresse du service d'édition de documents.
Après avoir enregistré le paramètre ci-dessus, vous devriez pouvoir créer des documents, des feuilles de calcul et des fichiers de présentation dans ownCloud.
Un onglet séparé sera ouvert pour modification.
C'est tout !
J'espère que ce tutoriel vous a aidé à intégrer OnlyOffice à ownCloud. Comme toujours, si vous avez trouvé cet article utile, abonnez-vous à notre newsletter gratuite. Vous pouvez également nous suivre sur Google+, Twitter ou aimer notre page Facebook.