{"id":9464,"date":"2018-01-16T18:04:36","date_gmt":"2018-01-16T16:04:36","guid":{"rendered":"https:\/\/www.roumazeilles.net\/news\/fr\/wordpress\/?p=9464"},"modified":"2018-01-18T12:30:20","modified_gmt":"2018-01-18T10:30:20","slug":"nextcloud-sur-un-serveur-mutualise-ovh","status":"publish","type":"post","link":"https:\/\/www.roumazeilles.net\/news\/fr\/wordpress\/2018\/01\/16\/nextcloud-sur-un-serveur-mutualise-ovh\/","title":{"rendered":"NextCloud sur un serveur mutualis\u00e9 OVH"},"content":{"rendered":"<p>Je me suis lanc\u00e9 dans une entreprise assez int\u00e9ressante : avec un serveur mutualis\u00e9 \u00ab\u00a0basique\u00a0\u00bb de chez OVH, j&rsquo;ai essay\u00e9 d&rsquo;installer un cloud de type <a href=\"https:\/\/nextcloud.com\/\">NextCloud<\/a> (c&rsquo;est un <em>fork<\/em> plus actif de ownCloud).<\/p>\n<p>L\u00e0 o\u00f9 tout est document\u00e9 quand vous avez acc\u00e8s \u00e0 un serveur d\u00e9di\u00e9 (sur lequel vous pouvez tout faire), il reste beaucoup de limitations sur un serveur mutualis\u00e9. Cela allait-il fonctionner ? La r\u00e9ponse est oui, mais voici comment je m&rsquo;y suis pris (et certaines solutions adopt\u00e9es ici \u00ab\u00a0manquent d&rsquo;\u00e9l\u00e9gance\u00a0\u00bb).<\/p>\n<h1>Installation<\/h1>\n<p>L&rsquo;installation est compl\u00e8tement transparente (t\u00e9l\u00e9chargement du package sur le site <a href=\"https:\/\/nextcloud.com\/\">NextCloud.org<\/a>, installation par copie FTP dans un r\u00e9pertoire de mon serveur web (cela cohabite bien dans un sous-r\u00e9pertoire), lancement de la proc\u00e9dure de configuration automatique (avec la cr\u00e9ation du premier utilisateur admin).<\/p>\n<p>Apr\u00e8s cela, j&rsquo;ai d\u00fb r\u00e9soudre quelques probl\u00e8mes. Pas invraisemblables, certains sont m\u00eame parfaitement documents, d&rsquo;autres ont \u00e9t\u00e9 plus ennuyeux.<\/p>\n<h1>R\u00e9solution des probl\u00e8mes rencontr\u00e9s<\/h1>\n<p>A noter : un certain nombre de sujets ont \u00e9t\u00e9 corrig\u00e9s avec l&rsquo;aide du site <a href=\"https:\/\/open-freax.fr\/maj-nextcloud-12-sur-un-mutualise-ovh\/\">Open-Freak<\/a>\u00a0qui est tr\u00e8s clair sur le sujet.<\/p>\n<h2>Erreurs de headers HTML<\/h2>\n<p>Les premiers sujets sont clairement document\u00e9s en se rendant sur la page d&rsquo;administration : en haut de la page apparaissent les messages d&rsquo;erreur en orange\/rouge. Ils sont assez explicites, mais il faut savoir o\u00f9 aller ensuite.<\/p>\n<p>Rendez-vous dans le fichier <code>.htaccess<\/code> \u00e0 la racine du r\u00e9pertoire contenant Nextcloud et rep\u00e9rez le pav\u00e9 qui mentionne des headers d\u00e9crits dans les messages d&rsquo;erreur (ils sont tous bien group\u00e9s).<\/p>\n<p>Modifiez chaque ligne commen\u00e7ant par\u00a0<code>Header set<\/code>\u00a0en\u00a0<code>Header always set<\/code>, et ajoutez la ligne suivante au bloc\u00a0en question :<\/p>\n<p><code>Header always set Strict-Transport-Security \"max-age=15768000; includeSubDomains; preload\"<\/code><\/p>\n<h2>Warning sur la gestion du cache<\/h2>\n<p>Vient ensuite un message de warning sur la gestion du cache (uniquement une quesiton de performance sans grande importance pour un tout petit cloud comme le mien). Il faut se rendre dans le fichier <code>config\/config.php<\/code> (fichier dans le r\u00e9pertoire <code>config<\/code>).<\/p>\n<p>Comme indiqu\u00e9 par le message de warning, on peut rajouter la ligne.<\/p>\n<p><code> 'memcache.local' =&gt; '\\\\OC\\\\Memcache\\\\ArrayCache',<\/code><\/p>\n<p>Je l&rsquo;ai mise \u00e0 la fin (mais avant la toute derni\u00e8re ligne qui ferme l&rsquo;<code>array<\/code>.<\/p>\n<h2>Difficult\u00e9s d&rsquo;acc\u00e9s par le web<\/h2>\n<p>Dans le m\u00eame fichier <code>config\/config.php<\/code>, il y a une modification suppl\u00e9mentaire \u00e0 appliquer pour tenir compte des habitudes courantes d&rsquo;acc\u00e8s \u00e0 un site web. Selon les cas, les utilisateurs ajoutent ou pas les <code>www.<\/code> devant une adresse web (ind\u00e9pendamment de ce que vous direz).<\/p>\n<p>Pour \u00e9viter toute confusion et quelle que soit l&rsquo;adresse que vous avez indiqu\u00e9e pour l&rsquo;acc\u00e8s web de votre cloud, assurez-vous que l&rsquo;acc\u00e8s est possible avec ou sans le\u00a0<code>www.<\/code>\u00a0 en modifiant l&rsquo;entr\u00e9e <code>trusted_domains<\/code> du fichier <code>config\/config.php<\/code>\u00a0:<\/p>\n<p><code>'trusted_domains' =&gt;<br \/>\narray (<br \/>\n0 =&gt; 'mondomaine.fr',<br \/>\n1 =&gt; 'www.mondomaine.fr',<br \/>\n2 =&gt; 'next.mondomaine.fr',<br \/>\n),<\/code><\/p>\n<p>Dans mon cas, vous pouvez constater que j&rsquo;ai pr\u00e9vu l&rsquo;acc\u00e8s avec ou sans le\u00a0<code>www.<\/code>\u00a0 mais aussi un raccourci pratique et assez habituel. (bien s\u00fbr, vous remplacerez <code>mondomaine.fr<\/code> par votre propre nom de domaine).<\/p>\n<h2>Login impossible pour les utilisateurs non-administrateurs<\/h2>\n<p>J&rsquo;ai ensuite rencontr\u00e9 un probl\u00e8me beaucoup plus d\u00e9sagr\u00e9able. Je pouvais me connecter avec le compte d&rsquo;administrateur cr\u00e9\u00e9 \u00e0 l&rsquo;installation, mais aucun autre utilisateur, cr\u00e9\u00e9 ult\u00e9rieurement depuis l&rsquo;interface d&rsquo;administration, ne semblait pouvoir le faire. D&rsquo;apr\u00e8s ce que j&rsquo;ai lu ici ou l\u00e0 sur Internet (principalement les \u00e9changes <a href=\"https:\/\/forum.owncloud.org\/viewtopic.php?t=15829\">sur le forum OwnCloud<\/a>), il semble qu&rsquo;un moyen de contournement (pas joli joli, il faut dire) consiste \u00e0 cr\u00e9er manuellement les r\u00e9pertoires du nom de chaque utilisateur dans le r\u00e9pertoire <code>data<\/code> de l&rsquo;installation NextCloud. Certainement un probl\u00e8me de droits d&rsquo;acc\u00e8s, mais je n&rsquo;ai pas su le r\u00e9soudre encore (peut-\u00eatre une correction ici-m\u00eame quand j&rsquo;aurai trouv\u00e9).<\/p>\n<p>Mise \u00e0 jour : il me faut \u00eatre plus pr\u00e9cis. La solution v\u00e9ritable ne consistait \u00e9videmment pas \u00e0 cr\u00e9er manuellement des r\u00e9pertoires, mais \u00e0 bien g\u00e9rer les droits d&rsquo;acc\u00e8s. En fait,\u00a0le r\u00e9pertoire <code>data<\/code> de l&rsquo;installation NextCloud n&rsquo;avait pas les bons droits d&rsquo;acc\u00e8s (comme tous les r\u00e9pertoires, il aurait d\u00fb avoir un code chmod de <strong>705<\/strong>). Cela a \u00e9t\u00e9 assez facile \u00e0 corriger avec <a href=\"https:\/\/filezilla-project.org\/\">FileZilla<\/a>. Il a seulement fallu re-cr\u00e9er tous les utilisateurs (sauf l&rsquo;administrateur initial, bien s\u00fbr).<\/p>\n<p>Ce point-l\u00e0 \u00e9tait le plus complexe pour moi parce qu&rsquo;il bloquait tous les essais par un autre utilisateur quelque soit l&rsquo;outil employ\u00e9 (acc\u00e8s par le web, par WebDav, par le client Windows).<\/p>\n<p>Par s\u00e9curit\u00e9, j&rsquo;ai aussi compl\u00e9t\u00e9 le fichier <code>config\/config.php<\/code> (fichier dans le r\u00e9pertoire <code>config<\/code>) avec quelques mentions utiles pour le futur :<\/p>\n<p><code>  'maintenance' =&gt; false,<br \/>\n'singleuser' =&gt; false,<\/code><\/p>\n<h1>Autres difficult\u00e9s de login<\/h1>\n<p>Enfin, je l&rsquo;avoue, \u00e0 force de faire des essais de connexion, je me suis retrouv\u00e9 incapable de me connecter (tout court). C&rsquo;est un effet de la portection contre les attaques de force brute qui g\u00e9n\u00e8rent des erreurs \u00e0 r\u00e9p\u00e9tition (comme je l&rsquo;ai fait dans mes essais).<\/p>\n<p>La m\u00e9thode pour s&rsquo;en sortir \u00e0 consister \u00e0 venir me connecter sur un autre ordinateur et \u00e0 passer dans le menu Administration &gt; S\u00e9curit\u00e9 &gt; Brute-Force Whitelist et \u00e0 y ajouter l&rsquo;adresse IP de mon ordinateur (sous la forme 100.100.100.100\/32). Cela prot\u00e8ge contre cette d\u00e9tection (mais cela autorise les attaques par ce biais : attention \u00e0 ne pas faire d&rsquo;erreur de s\u00e9curit\u00e9 par ce biais).<\/p>\n<h1>Conclusion (temporaire ?)<\/h1>\n<p>L&rsquo;installation de NextCloud est pr\u00e9vue dans certaines configurations de serveurs d\u00e9di\u00e9s de OVH. Dans ce cas, pas de gros probl\u00e8me, je suppose. Mais pour une toute petite application (moins de 10 utilisateurs, pas tr\u00e8s actifs), un serveur mutualis\u00e9 est largement suffisant. Dans ce cas, l&rsquo;installation semble un peu plus compliqu\u00e9e mais il n&rsquo;y a pas de raison d&rsquo;abandonner. Les probl\u00e8mes de configuration sont minimaux et certains d&rsquo;entre eux sont \u00e0 la fois bien document\u00e9s par NextCloud et identiques aux sujets de configuration de tout serveur cloud de type NextCloud.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>L&rsquo;installation d&rsquo;un serveur cloud de type NextCloud n&rsquo;est pas tr\u00e8s compliqu\u00e9e mais OVH n&rsquo;explicite pas comment le faire sur un serveur mutualis\u00e9. Quelques recommandations sur la configuration de d\u00e9part pour ne pas \u00ab\u00a0se rater\u00a0\u00bb.<\/p>\n","protected":false},"author":1,"featured_media":9466,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[36,37,33,4],"tags":[957,144,1806,1734],"class_list":["post-9464","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-creer-un-site","category-nouveau-site","category-technique","category-web","tag-configuration","tag-installation","tag-nextcloud","tag-ovh"],"_links":{"self":[{"href":"https:\/\/www.roumazeilles.net\/news\/fr\/wordpress\/wp-json\/wp\/v2\/posts\/9464","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.roumazeilles.net\/news\/fr\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.roumazeilles.net\/news\/fr\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.roumazeilles.net\/news\/fr\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.roumazeilles.net\/news\/fr\/wordpress\/wp-json\/wp\/v2\/comments?post=9464"}],"version-history":[{"count":0,"href":"https:\/\/www.roumazeilles.net\/news\/fr\/wordpress\/wp-json\/wp\/v2\/posts\/9464\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.roumazeilles.net\/news\/fr\/wordpress\/wp-json\/wp\/v2\/media\/9466"}],"wp:attachment":[{"href":"https:\/\/www.roumazeilles.net\/news\/fr\/wordpress\/wp-json\/wp\/v2\/media?parent=9464"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.roumazeilles.net\/news\/fr\/wordpress\/wp-json\/wp\/v2\/categories?post=9464"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.roumazeilles.net\/news\/fr\/wordpress\/wp-json\/wp\/v2\/tags?post=9464"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}