Aller au contenu

[TUTO] Sécuriser les accès à son nas - DSM 6.x


Fenrir

Messages recommandés

Note du 08/10/2023

Ce tuto a été créé sous DSM 6.x et doit être appliqué par les utilisateurs utilisant cette version.

Néanmoins, bien qu'il soit toujours d'actualité, certaines sections de DSM sont organisées différemment depuis l'arrivée de DSM 7, avec quelques nouveautés par rapport à la version précédente. C'est pour cette raison qu'un nouveau tuto spécifique à cette version a été élaboré par @.Shad.

Les utilisateurs de DSM 7 peuvent bien entendu continuer à se référer au présent tuto pour notamment y trouver des explications plus fournies sur certains points qui ont été allégés dans le nouveau tuto pour des raisons de clarté.

____________________________________________________________________________________________________________

Préambule

L'objectif de ce tutoriel est de vous aider à correctement sécuriser votre boitier et en particulier les accès à ce dernier. Il ne s'agira pas ici d'un guide permettant d'avoir un haut niveau de sécurité (il n'y a pas de qu'il faut dans nos boitiers), mais simplement d'une énumération des différentes étapes permettant de limiter les risques à un seuil acceptable.

Tous les points ne sont pas nécessairement à suivre, chacun est libre d'appliquer ou non ces recommandations, l'important étant de comprendre de quoi il s'agit.

Voyez ce TUTO comme une liste de restrictions qu'il est possible de mettre en place, selon vos besoins, certains réglages pourront ne pas convenir.

Comme depuis quelques années le terme NAS est de moins en moins compris par la plupart des utilisateurs et est détourné par les fabricants, un petit rappel s'impose.

Un NAS (Network Attached Storage ou boîtier de stockage en réseau) est un système permettant de stocker des fichiers et d'y accéder via le réseau. C'est tout, terminé.

Si nos boitiers ne faisaient que ça, ce tutoriel aurait eu un tout autre aspect (on aurait parlé de RAID, de TRIM, d’instantanés, d'onduleur, ...), mais on constate que sous cette appellation se trouvent de nombreuses fonctions qui n'ont rien à voir avec un NAS, ce sont des fonctionnalités de serveur (hébergement de site, streaming, messagerie, applications, ...) et un serveur a souvent vocation à être consulté depuis n'importe où (ou presque).

Il faut donc en sécuriser les accès.

Notes de lectures

  • Je fais emploi de la première personne du singulier dans de nombreux points pour indiquer qu'il s'agit d'avis personnels
  • Par soucis de compréhension, malgré son utilisation impropre, le terme NAS sera employé par la suite
  • Plusieurs liens sont présents dans ce tutoriel, je vous invite à les consulter au fur et à mesure
  • Je vous recommande fortement de lire ce tutoriel en entier une première fois avant de commencer à faire des modifications, puis de le reprendre étape par étape par la suite.
  • De même, faites une sauvegarde de la configuration avant de commencer
  • Afin de limiter le texte, vous trouverez de nombreuses copies d'écran avec les réglages que je recommande.
  • Enfin, vous avez parfaitement le droit de ne pas être d'accord avec mes recommandations, n'hésitez pas en m'en faire part dans les commentaires.

Sécurité ?

La sécurité est un domaine très vaste en informatique et probablement celui qui revêt le plus d'aspects, mais force est de constater que c'est aussi le sujet le moins prioritaire pour la plupart des utilisateurs.

Je vois 2 raisons à ça :

  • les consommateurs sont de plus en plus en attente de produits simples et prêts à l'emploi dès le déballage
    • hors de question de lire la documentation => erreur
    • hors de question de se former (ou pire, d'être formé) => erreur
    • et de toute manière on ne court aucun risque => erreur
  • la sécurité est perçue comme une contrainte que des empêcheurs de tourner en rond essayent d'imposer
    • c'est trop compliqué => ce point est souvent vrai
    • ça fait perdre trop de temps => erreur
    • et de toute manière on ne cours aucun risque (bis) => erreur

Ces points ne sont que des exemples qui concernent à peine 95% des acheteurs de matériel informatique en tout genre. Il est probable que "vous" qui lirez ces lignes êtes dans les 5% restant. Faites votre possible pour convaincre les autres.

Un constat assez curieux, c'est que dès qu'on parle de sécurité dans un domaine non informatique (chambre de bébé, maison, compte en banque, ...), la plupart des personnes sont réceptives si ce n'est volontaires, mais dès que ça touche à l’informatique, il n'y a plus personne pour écouter et surtout entendre.

C'est un vrai problème car de nos jours, nos bébés sont sous vidéo-surveillance, nos enfants ont des ordinateurs (une tablette est un ordinateur, même si très limité), notre maison dispose d'une alarme connectée et nos comptes en banque sont accessibles de partout. Mais curieusement, les gens ne font pas le rapprochement :confused:.

Sans oublier la meilleure des réponses - "Je n'ai rien à cacher".

Quoi sécuriser ?

Vous êtes maintenant convaincu que la sécurité est un point à ne pas négliger, y compris en informatique ?

Que devez-vous sécuriser ?

Comme indiqué plus haut, en informatique, la sécurité couvre de nombreux domaines, dans le cas de nos NAS/serveurs, il y a 3 principaux domaines sur lesquels on peut agir :

  • sécurité des accès physique :
    • je serais surpris que votre boitier se trouve sur votre pas de porte
    • de même, je pense que votre nas est au sec
    • reste à gérer la problématique des vols, ou pire, des enfants, mais c'est un autre sujet
  • sécurité des données : 2 mots => sauvegarde + chiffrement
    • sauvegarde : ayez toujours vos données sur au moins 2 supports distincts (nas+disque externe par exemple)
    • chiffrement : si vous avez des données privées et/ou confidentielles, le chiffrement des partages est à envisager
  • sécurité des accès distants : c'est le sujet qu'on va aborder dès maintenant

Comment faire ?

La plupart des réglages sont à faire dans le panneau de configuration, donc commencez par l'ouvrir :

01.png

nb : certaines applications disposent aussi de paramètres liés à la sécurité, il ne faudra pas oublier d'aller les vérifier

#########################################

t00.png

"Il nous baratine sur plusieurs paragraphes à propos de la sécurité et voilà qu'il commence à parler d'heure ?"

En informatique et plus particulièrement sur l'aspect sécurité, l'heure est un maillon essentiel.

Une machine qui n'a pas un système horaire fiable va rencontrer un jour ou l'autre les problèmes suivants :

  • problèmes de connexion : les systèmes d’authentification et de chiffrement utilisent l'heure dans les plupart des traitements
  • problèmes de mise à jour : l'heure est une composante importante pour les tâches planifiées et la gestion des caches
  • problèmes de sauvegarde : comment savoir ce qui a changé depuis la dernière sauvegarde si l'heure n'est pas fiable
  • problèmes de diagnostic : si l'heure du système n'est pas fiable, celle des journaux (logs) ne le sera pas non plus

Notez bien que je parle d'heure fiable, pas nécessairement d'heure juste.

L'important n'est pas d'être à la bonne heure, mais que la pendule avance à la bonne vitesse et soit en accord avec celle des autres systèmes qui y sont connectés (en gros votre pc, les serveurs de Synology, ...). Vous avez donc le choix de mettre une heure fantaisiste à la condition d'aller régler les horloges de tous les autres équipements liés (par effet ricochet, vous allez devoir régler l'heure des satellites en orbite autour de Mars ...).

Le plus simple reste d'être à l'heure juste à mon avis :lol:

Ça se passe ici :

Sélectionnez bien votre fuseau horaire et entrez l'adresse d'un serveur de temps fiable (vous en trouverez plusieurs ici) ou choisissez en un dans la liste proposée. Comme cette synchronisation va passer par Internet, il est recommandé de choisir un serveur de sa zone géographique (pool.ntp.org le fait tout seul) :

t01.png

Vous pouvez aussi activer la fonction de serveur NTP de votre boitier si vous souhaitez que vos autres équipements (vos caméras de surveillance par exemple) s'en servent comme horloge de référence :

t02.png

Il suffira alors de les configurer pour utiliser votre NAS comme serveur de temps (ça peut aussi être fait via le DHCP, options 004 et 042).

#########################################

sf00.png

En sécurité, une des règles d'or consiste à réduire la surface d'attaque. Moins il y a des programmes qui tournent, mieux c'est. Accessoirement ça libérera des ressources (donc il sera plus rapide, il consommera moins et il chauffera moins).

Dans cette section, n'activez que les services que vous utilisez. Si vous n'utilisez pas le FTP ou le NFS ou ... désactivez les.

sf01.png

À noter que certains protocoles disposent d'options liées au chiffrement ou à la sécurité en générale, par exemple choisir SMB3 (dans Service de fichiers Windows) permet de chiffrer la communication en AES (pour Windows 8 et plus récent, les distributions GNU/Linux avec un noyau > 3.12 et les dernières versions de MacOS) :

sf02.png

#########################################

u00.png

On peut lire un peu partout qu'il faut renommer ou désactiver le compte admin car il sera attaqué. La recommandation est, partiellement, valable, mais la raison est mauvaise.

C'est une bonne chose de créer un (ou plusieurs) compte(s) d'administrateur(s) et de ne pas utiliser (ni modifier) celui par défaut :

  • s'il y a plusieurs personnes amenées à administrer un équipement ça permet une meilleure traçabilité, ça évite de devoir se refiler le mot de passe et ça permet de couper un administrateur en particulier si besoin sans impacter les autres
  • si vous êtes seul à administrer votre équipement ça a au moins le mérite de laisser intact le compte par défaut

La raison est mauvaise car les attaques ne s’arrêtent pas si le compte admin ne marche pas, elles s’arrêtent lorsque l'attaquant a testé tous les login/password de sa liste.

Un autre point qui est souvent oublié c'est que le compte admin reste obligatoire pour certaines opérations avec les anciennes versions de DSM (inférieurs à DSM6.0).

nb : certaines applications ne sont pleinement fonctionnelles qu'avec des droits d'administrateurs (ce n'est pas normal mais c'est comme ça)

Nous allons donc créer un nouvel administrateur, mais un peu particulier :

u01.png

Choisissez un login explicite mais pas celui que vous utilisez tous les jours :

u03.png

Il faut bien entendu qu'il soit membre du groupes "administrators" :

u04.png

Ici je bloque les accès à tous les partages, certains vont penser que ça ne sert à rien puisqu'un membre du groupe "administrators" peut toujours se remettre les droits et c'est vrai.

L'intérêt est que, si pour une raison ou une autre, ce compte arrive à accéder une des applications de gestion des fichiers (FileStation par exemple), il ne puisse pas faire grand-chose.

u05.png

nb : si vous utilisez PhotoStation, vous ne pourrez pas changer les droits de ce dossier, il faut le faire directement depuis les paramètres de l'application avec un compte administrateur

On ne peut pas placer de quota sur un admin, donc on passe :

u06.png

Comme plusieurs protections valent mieux qu'une, on peut aussi bloquer l'accès à toutes les applications, mais dans ce cas, vous ne pourrez plus les administrer (c'est logique !).

Personnellement je n'ai coupé l'administration que pour les applications qui sont accessibles depuis Internet en direct (chez moi la liste est courte, il n'y en a qu'une) et quand je veux administrer cette application (c'est rare), je me connecte avec cet administrateur, je lui donne les droits, je fais mon réglage et je retire les droits.

À adapter en fonction de vos besoins (au début c'est très contraignant, mais une fois que le NAS est bien configuré, on n'y prête plus vraiment attention).

Dans tous les cas, autorisez l'accès au "Bureau" à votre super admin afin de conserver l'accès au panneau de configuration :

u07.png

Avec un peu de parano, on peut aussi ralentir les opérations sur les fichiers pour décourager l'attaquant (ça vous demandera d'activer le contrôle du trafic) :

u08.png

Et on applique :

u09.png

Une fois notre administrateur créé, on vérifie qu'il fonctionne, donc on se déconnecte et on se reconnecte avec ce nouveau compte.

Si ça fonctionne et qu'il accède bien au panneau de configuration comme un administrateur on peut continuer en spécifiant une politique pour les mots de passe.

Un bon mot de passe c'est un mot de passe facile à retenir ou à retrouver de tête (donc pas sur un post-it) et relativement long. On lit souvent qu'il faut utiliser des caractères spéciaux car ça rend les mots de passe plus complexe. C'est vrai si ces 3 conditions sont réunies :

  • les utilisateurs arrivent à s'en souvenir sans le noter
  • les utilisateurs arrivent à le taper (clavier mobile, braille, étranger, ...)
  • sa longueur est d'au moins 12 caractères

Je trouve pour ma part qu'il est plus facile d'utiliser un long mot de passe avec des lettres, des chiffres et des majuscules qu'un mot de passe avec des caractères spéciaux.

Pour ce qui est de la sécurité, imposer des caractères spéciaux à un mot de passe ne le complexifie que d'un "bit" en équivalent cryptographique. Ajouter 2 caractères "normaux" le complexifie de 11 bits.

Pour un humain, deviner une chaine de 10 caractères spéciaux est très complexe, pour une machine c'est plus facile qu'une chaine de 10 caractères "normaux".

Je ne dis pas qu'il ne faille pas inclure des caractères spéciaux, je recommande juste de ne pas l'imposer car ça facilite la vie des utilisateurs :

u13.png

En activant la vérification en 2 étapes, un assistant va se lancer, suivez le guide :

u14.png

Je recommande FreeOTP pour gérer vos jetons (il fonctionne aussi pour FaceBook, Google, ...) mais il existe d'autres applications similaires.

u15.png

Entrez le code généré par l'application (si votre NAS ou votre client ne sont pas à la même heure, ça échouera probablement) :

u16.png

Renseignez une adresse fiable et sécurisée ici :

u17.png

Et on valide :

u18.png

Encore une fois, on teste avant de continuer, donc on se déconnecte et on se reconnecte :

u19.png

Cette fois ci avec une étape supplémentaire :

u20.png

C'en est terminé de la création de notre administrateur, on peut maintenant couper celui par défaut :

u21.png

u22.png

u23.png

Arrivez ici vous allez penser que ce compte (monadmin) est inutilisable. C'est faux, c'est un compte d’administrateur qui peut effectuer toutes les tâches d'administration, il n'a pas besoin de voir des vidéos, d'envoyer des photos, ...

Donc maintenant vous pouvez/devez créer des comptes "normaux" (sans les droits d'administration) et le compte d'administration sera réservé aux tâches d'administration.

Je recommande aussi de créer des comptes utilitaires pour les besoins spécifiques. À titre d'exemple, sur mes NAS j'ai créé plusieurs comptes de ce type, dont :

  • routeur (non admin) : ce compte sert à mon routeur pour exporter les modifications de configuration, il a juste le droit de faire du FTPs dans un dossier spécifique
  • sauvegarde (admin) : ce compte est dédié aux tâches de sauvegardes, il a un mot de passe de 64 caractères (merci Keepass)

En complément j'ai plusieurs comptes "normaux" pour l'utilisation au quotidien (ma famille et moi).

Ça peut paraitre contraignant, mais normalement, enfin je l'espère pour vous, vous ne passez pas votre temps à faire des tâches d’administration sur votre NAS, donc vous ne devriez pas en avoir besoin souvent.

Encore une fois il ne s'agit là que de recommandations, vous êtes libres d'utiliser le login admin avec le mot de passe "1234" pour consulter vos données privées depuis la Chine.

#########################################

q00.png

Ici on va aller vite, je déconseille d'activer ce service si on tient un tant soit peu à la sécurité.

Pour informations, voici comme fonctionne QuickConnect :

  1. votre NAS établi un tunnel OpenVPN avec un serveur tiers loué par Synology (donc de fait, ils ont un accès direct au NAS s'ils le souhaitent)
  2. en parallèle il créé et met à jour un enregistrement DNS avec votre IP public (comme un DynDNS)
  3. lorsque vous entrez l'adresse QuickConnect de votre boitier, votre client va essayer de déterminer si vous pouvez vous connecter en direct
  4. si ce n'est pas le cas, votre trafic sera dirigé sur un serveur de Synology qui se chargera de router le trafic dans le tunnel du point 1 (donc ils peuvent voir tout ce qui passe)

Le résultat est un trafic souvent très lent, relativement instable et difficile à maitriser.

Néanmoins, si vous souhaitez conserver QuickConnect, pensez à limiter les applications accessibles, en particulier, n'autorisez pas DSM (en pratique l'accès à DSM on s'en fiche, ce qui est important dans un NAS ce sont les fichiers, mais bloquer l'accès aux fichiers sur un NAS limite grandement son utilité ...).

#########################################

ex00.png

Il y a 3 sections dans ce menu :

ex01.png

Cette section vous permet de configurer un service de DNS dynamique, c'est pratique pour ceux qui n'ont pas d'adresse IP fixe, rien de compliqué ici :

ex02.png

ex03.png

Ne cliquez pas ici, ça fait partie des options que Synology devrait vraiment retirer de ses boitiers. C'est très dangereux du point de vue sécurité.

Ça sert à ouvrir automatiquement des ports dans votre routeur/box, ça peut paraitre sympa comme ça mais en pratique c'est une faille de sécurité très importante. Là on entre en plein dans les comportements que je décrivais au début de ce tutoriel : les gens veulent du "clef en main" et la sécurité ça complique les choses !

2 exemples pour essayer de vous convaincre :

  • pour que cette fonction marche, votre routeur doit gérer l'UPnP, donc tous les équipements de votre réseau pourront faire de l'ouverture dynamique de port, le PC qui vient de se prendre un virus pourra automatiquement, sans la moindre notification, ouvrir un port permettant à un attaquant d'entrer dans votre réseau
  • de même, si vous avez configuré des redirections de ports pour plusieurs équipements, ces redirections risquent de sauter si une requête UPnP demande le même port

ex04.png

Un petit menu que beaucoup oublient de configurer, il n'est pas obligatoire et pas lié (pas directement du moins) à la sécurité mais ça permet d'éviter de chercher des heures la raison pour laquelle un lien de partage (par exemple) ne fonctionne pas.

Attention, il faut vider ces champs si vous utilisez des noms de domaine ou des ports spécifiques (portail des application, reverse proxy, ...).

ex05.png

nb : si vous avez changé les ports de DSM (directement ou via votre routeur), il faut l'indiquer ici

#########################################

rx00.png

On ne peut pas parler d'accès distant sans parler d'IP, donc allons y :

rx01.png

Du point de vue confort, fiabilité et sécurité, l'attribution dynamique (DHCP) est recommandée, néanmoins, certains services nécessitent d'avoir une adresse IP fixe (c'est le cas du DKIM avec MailServer mais aussi du serveur DHCP et quelques autres applications), donc à choisir en fonction de vos besoins.

Si vous choisissez DHCP, fixez l'adresse dans votre serveur DHCP (votre box probablement), si vous choisissez l'IP en dur, prenez une IP en dehors de la plage DHCP.

rx02.png

rx05.png

Pour l'IPv6, même si je ne devrais pas le dire (car l'IPv6 c'est bien), du point de vue sécurité je vous recommande de le désactiver pour le moment.

Le problème ne vient pas de Synology (qui permet de régler le pare-feu en IPv6), c'est plus général (j'en parle ici). Une fois que vous aurez bien compris ce que ça implique, vous pourrez revenir l'activer.

rx03.png

rx06.png

Merci de ne pas changer les ports par défaut, ça n'apporte presque rien du point de vue sécurité (on gagne moins d'une seconde face à un scanner) et ça complique les usages.

Si vraiment vous souhaitez les changer depuis Internet, faites-le sur votre box ou avec un "reverse proxy".

Je ne redirige pas automatiquement les connexions HTTP vers HTTPS car je n'expose pas DSM directement sur Internet (il y a un serveur VPN pour ça), mais si vous le faites, activez la redirection.

Attention, j'ai pu constater qu'activer la redirection HTTP vers HTTPS cassait certains mécanismes, au moins le reverse proxy pour les applications de base (audio/download/file/surveillance/video - station). Si vous souhaitez profiter de la redirection sans casser le reverse proxy, le plus simple est de créer un petit fichier php à la racine de Webstation (/web/index.php) pour gérer cette redirection :

<?php
$http_host = $_SERVER['HTTP_HOST'];
// 307 Temporary Redirect
header("Location: https://$http_host",TRUE,307);
exit;
?>

Vous pouvez bien entendu adapter le script pour utiliser des ports différents si besoin.

Pour la dernière option, l'HSTS, ne l'activez que si vous n'accédez jamais à votre NAS autrement qu'en HTTPS (c'est votre navigateur qui enregistrera cette information et il ne vous laissera plus passer autrement qu'en HTTPS, même si ce dernier est coupé).

rx04.png

#########################################

s00.png

J'ai pris les menus dans l'ordre (ou presque), donc la section "Sécurité" n'arrive que maintenant, pourtant tout ce que l'on a vu précédemment est aussi lié à la sécurité ...

s08.png

Ces réglages devraient convenir à la plupart des utilisateurs :

s01.png

s09.png

Pour le pare-feu, même si votre NAS n'est pas exposé sur Internet, activez-le, ça ne coute presque rien en ressources et ça limitera la casse si un jour il est exposé (une box qui passe en bridge, une erreur de manipulation, ...).

Vous pouvez laisser les notifications activées, mais ne vous en servez pas (ne cliquez pas sur le bouton OK lorsqu'elles apparaissent), utilisez-les simplement comme un rappel que vous avez tel ou tel port à ouvrir.

s02.png

Les règles de pare-feu ci-dessous seront valable chez pratiquement tout le monde, en toute rigueur, il ne faudrait autoriser que les adresses "fiables" sur des services précis, mais sauf à avoir des espions dans son réseau, ça ne devrait pas poser de problèmes. On va dire que c'est un compromis entre confort et sécurité.

nb : si vous souhaitez faire de l'IPv6, pensez à ajouter les adresses locales (fe80::/10 et ff00::/8)

Dans un premier temps, je vous recommande vivement de configurer votre pare feu avec les 4 règles ci-dessous, à l'identique !!

s03.png

UPDATE: Dans chaque section d'interface modifier le paramètre : Si aucune règle n'est remplie : Refuser l'accès" ("Autoriser l'accès" par défaut).


nb :

  • dans les 3 premières règles, il faut bien choisir "Sous-réseau" et pas "Hôte unique" ni "Plage d'IP"
  • ici j'utilise uniquement la table "Toutes les interfaces" car c'est plus simple à gérer et suffisant pour la plupart des besoins, si vous souhaitez utiliser les règles par interfaces, lisez ceci

Une fois ces 4 règles en place, vous pourrez ajouter les autres règles dont vous avez besoin (il faut les ajouter juste avant la dernière règle) si vous souhaitez que certains services de votre NAS soient accessibles depuis Internet.

Les règles ci-dessus n'autorisent que les réseaux locaux et bloquent tout le trafic venant d'Internet.

Voici un exemple plus complet qui n'est pas à reprendre aveuglement, c'est juste pour illustrer :

s14.png

En plus des réseaux locaux (ou privés), j'autorise les services suivants :

  • ports TCP 80 et 443 depuis l'adresse 192.0.2.3 (il s'agit d'une adresse IP public d'exemple, ce n'est pas une adresse privée => https://tools.ietf.org/html/rfc5737)
  • port UDP 1194 (OpenVPN) uniquement depuis la France
  • ports UDP 500, 1701 et 4500 (L2TP/IPSec) uniquement depuis la France
  • et les ports TCP 7000 et 7001 que j'ai associé à une application, autorisés depuis la France la Guyane française

nb : les règles sont évaluées dans l'ordre, de haut en bas

ps : si votre NAS est derrière une Box, il faudra aussi transférer (forward) les ports sur cette dernière

Une recommandation, n'autorisez pas l'accès en direct à DSM (ports TCP 5000 et 5001 par défaut) depuis Internet mais servez vous du portail des applications (cf plus bas) pour limiter les accès aux seules applications nécessaires. Si vous devez administrer votre NAS depuis Internet, l'utilisation du Serveur VPN est vivement conseillée.

s10.png

Une petite case à cocher pour limiter les chances que votre boitier soit rendu inaccessible suite à un certain type d'attaque :

s04.png

A adapter selon vos interfaces connectées.

s11.png

Cette fonction bloquera les adresses IP des personnes ayants fait trop d'erreurs d'authentification (ça ne fonctionne qu'avec certaines applications, mais c'est déjà ça).

nb : n'ajoutez pas d'adresses dans la liste des autorisations, si vous vous bloquez vous même, changez juste l'adresse de votre poste pour le débloquer ou attendez l'expiration du blocage

s05.png

s12.png

Un peu plus haut on a parlé d'HTTPS, or qui dit HTTPS dit certificat.

Ici on se heurte à un vrai problème du point de vue de la sécurité. Il est assez difficile de l'expliquer sans en faire des pages, mais pour faire simple, n'utilisez jamais un certificat auto-signé (comme celui installé par défaut dans la plupart des équipements).

La solution la plus sécurisée consiste à créer votre propre autorité de certification et à émettre vous-même vos certificats. Cette méthode présente quelques avantages mais aussi quelques inconvénients :

  • Avantages :
    • vous n'avez pas à faire confiance à une entreprise que vous ne connaissez pas
    • vous n'avez pas à payer cette entreprise pour vos certificats (même si avec LetsEncrypt et quelques autres entités, c'est gratuit)
    • vous pouvez émettre autant de certificats que nécessaire
    • vous pouvez choisir ce qu'ils acceptent (wildcard ou multi domaine par exemple)
  • Inconvénients :
    • vous devez savoir le faire
    • vous devez installer votre autorité partout où vous l'utilisez (dans vos navigateurs, smartphones, ...)

La solution recommandée est donc d'utiliser un certificat signé par une autorité reconnue en standard (Synology vous permet de créer un certificat signé par LetsEncrypt, c'est gratuit et ça marche assez bien).

Dans un cas comme dans l'autre, supprimez le certificat installé par défaut.

Enfin, la solution qui n'en est pas une consiste à accepter les avertissements de sécurité, en faisant ça, vous installez dans votre navigateur des certificats qui n'ont été validés par personne. C'est très dangereux mais il est assez difficile de vous expliquer pourquoi en quelques mots, gardez juste à l'esprit qu'accepter un certificat non reconnu peut permettre à un attaquant d'intercepter toutes vos communications vers le site de votre banque, même si ce dernier est protégé par un vrai certificat.

ps : en passant, 2 modules pour Firefox que je recommande : Y U no validate et SSleuth

Donc pour la plupart d'entre vous, le bon choix est de passer par l'assistant pour créer un certificat signé par LetsEncrypt (le port 80 doit être ouvert le temps de la génération du certificat et tous les 3 mois pour son renouvellement).

s06.png

s13.png

N'activez jamais la compression HTTP (il y a une faille de sécurité dans ce protocole qui rend l'HTTPS inefficace) et utilisez les suites de chiffrement "moderne".

s07.png

#########################################

n00.png

Un point important en sécurité consiste à être prévenu lorsqu’un problème survient. Le paramétrage des notifications est fait pour ça. Ici j'ai configuré les notifications par mail, mais vous pouvez utiliser les SMS (si vous avez un abonnement compatible comme FreeMobile) ou encore par Push (je déconseille ce mode car il est peu pratique à l'usage).

n01.png

Dans le dernier onglet, vous pouvez choisir le type de notification à activer pour la plupart des événements pouvant se produire.

Au début cochez tout, puis en fonction de votre usage, vous pourrez décocher certaines notifications (chez moi j'ai désactivé les notifications pour les sauvegardes réussies).

n02.png

#########################################

f00.png

f05.png

Maintenir ses équipements à jour est un moyen assez simple de limiter les problèmes de sécurité.

f01.png

Je recommande de laisser le NAS détecter et télécharger les mises à jour automatiquement mais de ne pas le laisser les installer tout seul.

Synology sort des mises à jour de bonne qualité en général, mais il arrive, surtout pour les mises à jour majeurs, que des problèmes surviennent (en clair, elles sont parfois boguées). Laissez le NAS vous prévenir qu'une mise à jour est disponible et renseignez-vous sur d'éventuels soucis de compatibilité avant de l'installer.

nb : désactivez aussi les mises à jour automatique dans le Centre de paquets pour la même raison

f02.png

f06.png

Parmi les actions à effectuer de temps en temps, surtout lorsque vous vous apprêtez à faire de gros changements (comme en suivant ce tutoriel), la sauvegarde de la configuration n'est pas à omettre.

ps : pour information, le fichier de sauvegarde est une archive tar.xz contenant une base sqlite, il est donc possible de le consulter pour récupérer un élément de configuration précis

f03.png

Notez en passant que seuls certains paramètres sont sauvegardés, pensez à sauvegarder le reste d'une manière ou d'une autre :

f04.png

ps : cette sauvegarde de la configuration du NAS n'est pas à sauvegarder sur le NAS lui-même

#########################################

p00.png

Ici vous avez la possibilité de restreindre l'accès à certaines applications pour certains comptes. Par exemple si vous vous servez de votre NAS comme d'un système de dépose de fichiers pour des clients, via FileStation, il n'est pas nécessaire de leur laisser accès à vos vidéos de vacances avec VideoStation. De même il est peut être utile de limiter les accès à certaines machines.

p01.png

Sélectionnez une application et cliquez sur Modifier, la suite est assez explicite.

#########################################

a00.png

Par défaut la plupart des applications sont accessibles via DSM (ports 5000 et 5001) et l'adresse de votre nas, mais si vous souhaitez que seule telle ou telle application soit accessible depuis Internet, ou dispose d'une adresse spécifique ou écoute sur un port particulier, ou encore tout ça à la fois, c'est ici qu'il faut se rendre.

Vous avez 2 menus :

  • Applications : ça permet de configurer l'adresse et le port d'écoute de certaines applications Synology
  • Proxy Inversé : ça permet de faire la même chose pour les autres applications ou faire des configurations plus avancées

Ces options vous permettent, par exemple, de faire écouter les différentes applications sur des ports précis et ainsi, grâce au pare-feu, de limiter leurs accès aux seules adresses autorisées.

Ci-dessous un exemple un peu plus complexe (la seconde partie n'est réalisable qu'avec du loopback ou si vous avez un DNS en interne ou qui gère les vues, j'en parle à la fin du tuto VPN)

Dans un premier temps j'ai déclaré des ports spécifiques pour chacune des applications que j'utilise :

a03.png

=> depuis un navigateur, si j'entre l'adresse de mon nas en précisant le port 7043 je tombe directement sur Audio Station

J'ai ensuite configuré le Proxy inversé pour faire correspondre les différentes applications avec des noms de domaine différents mais sur un seul port (tcp 443/https). J'ai aussi créé une entrée pour une application non Synology (il s'agit ici d'un Docker) :

a04.png

=> depuis DSAudio, j'entre l'adresse dsaudio.mon.domaine:443

nb : dans les applications mobiles, il ne faut pas oublier le numéro de port dans l'adresse pour que ça fonctionne de partout (en interne comme depuis Internet), sinon certaines d'entre elles essayent systématiquement de trouver une configuration QuickConnect (qui n'existe pas chez moi)

ps : cette configuration ne fonctionnera pas si vous avez activé la redirection HTTP vers HTTPS de DSM (cf remarque un peu plus haut)

#########################################

c00.png

Même si vous n'avez pas l'intention de vous en servir, activez le SSH. En cas de problème d'accès à DSM, c'est souvent la seule manière de débloquer la situation sans devoir faire un reset du NAS. Par contre ne l'ouvrez pas depuis Internet, limitez son accès à votre seul réseau local.

c01.png

Et en passant, choisissez le mode de chiffrement le plus élevé :

c02.png

#########################################

cs00.png

Synology a eu la bonne idée (de mémoire avec DSM 5.2) d'ajouter l'application "Conseiller en sécurité". Cette application analyse certains fichiers et certains réglages de votre NAS afin de vous prévenir en cas d'anomalies. Elle ne va pas encore assez loin à mon gout, d'où ce tutoriel, mais c'est déjà pas mal.

Globalement elle fait bien son travail, donc il serait dommage de s'en passer (n'oubliez pas de planifier une analyse régulière) :

cs01.png

Néanmoins je ne suis pas d'accord avec 3 des recommandations de Synology, celles concernant les changements de ports, donc je les désactive (tout le reste devrait être activé) :

  • cs04.png
  • cs02.png
  • cs03.png

Lancez l'analyse une première fois, si vous avez suivi mes recommandations, tout devrait être au vert.

cs05.png

 

Lien vers le commentaire
Partager sur d’autres sites

L'application freeotp pas à jour depuis 2 ans dans l'Apple store, elle sera bientôt kick de ce dernier avec la nouvelle politique.

Perso moi j'ai pas mis d'expiration de blocage d'ip.

Concernant le compte admin, pour moi c'est de l'utopie, on utilise tous des comptes avec nom d'utilisateur commun et pas en suite de génération aléatoire... Les attaques étant en brute force avec dictionnaire en premier... bref moi c'est le compte principal que j'utilise.

Pareil concernant le mot de passe, il faut des caractères, cela rallonge considérablement les attaques en brute force ;-)

Sinon bon tutoriel.

Lien vers le commentaire
Partager sur d’autres sites

Il y a 3 heures, Einsteinium a dit :

L'application freeotp pas à jour depuis 2 ans dans l'Apple store, elle sera bientôt kick de ce dernier avec la nouvelle politique.

Vu qui est derrière, je pense qu'ils pourront mettre à jour un pixel pour la maintenir, par contre c'est curieux, sur Android elle a été mise à jour il y a moins longtemps (début d'année). Je la recommande car les sources sont dispo et la licence est libre (AL2.0).

Il y a 3 heures, Einsteinium a dit :

Perso moi j'ai pas mis d'expiration de blocage d'ip.

Je propose de mettre une expiration car bloquer définitivement un scanner par son ip n'est pas efficace, il en changera très vite si besoin (plus vite que nous), ça permet aussi de limiter les soucis avec les utilisateurs en voyage qui se seraient trompés.

Lien vers le commentaire
Partager sur d’autres sites

Excellent post !! Merci pour ses précieux conseils.

On peut utiliser le reverse proxy pour éviter d'ouvrir une multitude de ports sur le routeur. Toutes les connexions entrantes (DSM, audio station, video station, Webdav, photo station, cardav...) passent par le reverse Proxy. Comme ca, on expose que les ports 80 et 443 pour les flux http/https. 

Lien vers le commentaire
Partager sur d’autres sites

Il y a 2 heures, pews a dit :

On peut utiliser le reverse proxy pour éviter d'ouvrir une multitude de ports sur le routeur.

Oui, mais ça sort un peu du cadre du tuto.

Le fait qu'un port ou 40 soient ouverts ne change pas grand chose niveau sécurité, par contre niveau confort le reverse proxy est un plus (en entreprise les ports élevés sont souvent bloqués).

Lien vers le commentaire
Partager sur d’autres sites

Merci pour ces infos. J'ai malgrè tout quelques questions :

- Dans le cas d'un dossier chiffré, comment font les users pour le dechiffrer ? Il n'est pas visible via File Station en user s'il est chiffre..

- Comment appliquer un quota de données pour un administrateur ?

- Dans le cas de fichiers en lecture seules, est ce qu'une attaque du type Synolocker peut faire mal quand meme ?

Le 01/12/2016 à 19:33, Fenrir a dit :

Je recommande aussi de créer des comptes utilitaires pour les besoins spécifiques si besoin. À titre d'exemple, sur mes NAS j'ai créé plusieurs comptes de ce type, dont :

  • routeur (non admin) : ce compte sert à mon routeur pour exporter les modifications de configuration, il a juste le droit de faire du FTPs dans un dossier spécifique
  • sauvegarde (admin) : ce compte est dédié aux tâches de sauvegardes, il a un mot de passe de 64 caractères (merci Keepass)

C'est une excellente idée en plus du "Monadmin" mais pourquoi utiliser 64 caractères là où on peut en mettre 127 ? (on pourra certes me dire que 64 c'est suffisant.... loool)

- En parallèle, une exportation des logs pourrait-elle etre utile ?

 

Lien vers le commentaire
Partager sur d’autres sites

il y a une heure, Hedy a dit :

- Dans le cas d'un dossier chiffré, comment font les users pour le dechiffrer ? Il n'est pas visible via File Station en user s'il est chiffre..

Il faut les "monter", c'est dans l'interface

il y a une heure, Hedy a dit :

- Comment appliquer un quota de données pour un administrateur ?

De la même manière que pour un compte "normal", mais je reconnais ne pas avoir testé

il y a une heure, Hedy a dit :

- Dans le cas de fichiers en lecture seules, est ce qu'une attaque du type Synolocker peut faire mal quand meme ?

Ça dépend de la manière dont le malware fonctionne et des failles syno exploitées

il y a une heure, Hedy a dit :

mais pourquoi utiliser 64 caractères là où on peut en mettre 127 ? (on pourra certes me dire que 64 c'est suffisant.... loool)

Certains programmes ne gèrent pas autant de caractères, même 64 ça ne passe pas partout

il y a une heure, Hedy a dit :

- En parallèle, une exportation des logs pourrait-elle etre utile ?

Oui s'il y a quelqu'un pour les consulter

Lien vers le commentaire
Partager sur d’autres sites

il y a 2 minutes, Fenrir a dit :

 

il y a une heure, Hedy a dit :

- Dans le cas d'un dossier chiffré, comment font les users pour le dechiffrer ? Il n'est pas visible via File Station en user s'il est chiffre..

Il faut les "monter", c'est dans l'interface

 

Si c'est bien au niveau du "panneau de config" puis "Dossier Partagé", le truc c'est qu'il n'y a pas d'acces  aux personnes du groupe "users".

Si c'est au niveau de l'interface de File Station, bah je ne vois rien... j'ai encore rat un truc ? ;o)

il y a 11 minutes, Fenrir a dit :
Il y a 1 heure, Hedy a dit :

- En parallèle, une exportation des logs pourrait-elle etre utile ?

Oui s'il y a quelqu'un pour les consulter

Ce que je voulais dire c'est pour la suite en cas de pepin, voir ce qui s'est passé (en partie)

 

il y a 12 minutes, Fenrir a dit :
Il y a 1 heure, Hedy a dit :

- Comment appliquer un quota de données pour un administrateur ?

De la même manière que pour un compte "normal", mais je reconnais ne pas avoir testé

pas de quota pour un admin.

u06.png

Lien vers le commentaire
Partager sur d’autres sites

Merci Fenrir, pour cet excellent tuto.

J’avais deja appliqué une partie de celui-ci en me servant de celui sur le VPN, je sais ce qu'il me reste à faire.

J'ai une question quand tu crée le compte admin avec avec une double authentification et l utilisation de FreeOPT c'est le même principe qu'une clé RSA ? 

Lien vers le commentaire
Partager sur d’autres sites

Bonjour Fenrir,

 

Merci pour ce tuto que j'ai suivi à la lettre. J'ai aussi configuré mon routeur Box pour avoir un accès extérieur mais c'est là que ça bloque. En rentrant les adresses I.P. que tu as mis dans le pare-feu, les adresses I.P internet telles que  78..(Free). etc ou 80.. (mobile) se retrouvent bloquées. Dès que j'enlève le pare feu, j'ai accès à mon NAS à partir de mon mobile ou autre pc connecté à internet mais dès que je l'active, je n'y ai plus accès.

Je voudrais garder un maximum de sécurité en laissant le pare-feu du coup comment faire ?

 

Modifié par mrneo3d
Lien vers le commentaire
Partager sur d’autres sites

Il y a 4 heures, mrneo3d a dit :

Je voudrais garder un maximum de sécurité en laissant le pare-feu du coup comment faire ?

En fonction des besoins, le VPN peut être une solution, mais tu peux aussi régler le pare-feu pour autoriser certains services (à titre perso j'ai des services directement accessibles et d'autres qui nécessitent de passer par le VPN).

J'ai modifié le tuto pour être plus précis sur ces points.

Lien vers le commentaire
Partager sur d’autres sites

@mrneo3d : les premieres regles du parefeu n autorisaient que des adresses LOCALES - du coup en te connectant de lexterieur ca ne pouvait fonctionner.
Les regles donnees sont des regles en exemples ou "passe partout" - a toi d administrer au plus serre en fonction de tes besoins.@fenrir a encore raison (comme d hab) - VPN cest bien mais imagine ta famille, des amis, devoir se connecter en VPN pour un partage de fichiers par ex.... ca peut vite etre complique.
Pour ma part, je suis seul a aller sur le nas de lexterieur donc la question ne se pose pas.



Sent from my iPhone using Tapatalk

Lien vers le commentaire
Partager sur d’autres sites

J'ai une question simple, j'ai bien créé un nouvel admin pour désactiver celui par defaut, toutefois cela pose problème, car si le nouveau ne dispose d'aucune autorisation autre que le bureau, il ne pourra dans ce cas pas gérer efficacement surveillance station (droit d'admin pour la planification des alertes par exemple ou pire la simple réception des notification en push dans l'appli IOS) ou vidéo station avec l'impossibilité de créer ou gérer des imports... Je pense que chaque application doit être gérée en compte admin, mais dans ce cas on reexpose les infos à un éventuel piratage .

Du coup je comprends l’intérêt de créer un nouvel admin mais si celui ci ne peut rien faire ... Sachant que la création d'un utilisateur lambda avec tous les droits ne pourra dans tous les cas pas administrer l'ensemble d'un logiciel avec systématiquement des options utiles non affichées.

Lien vers le commentaire
Partager sur d’autres sites

Très bonne remarque à laquelle je peux répondre de plusieurs manières :

  • mode parano : tu peux créer un admin par application
  • mode chiant : tu peux lui remettre les droits de temps en temps si besoin
  • mode réel : tu passes ton temps à faire des opérations d'administration toi ?

Ici mon objectif est avant tout de protéger l'accès aux données. Que certaines applications deviennent inutilisables (ce qui n'est pas le cas pour ce que j'ai testé) sans être administrateur c'est secondaire pour moi dans le cadre de cette doc.

Maintenant rien ne t'obliges à suivre 100% des recommandations, vois ça comme une liste de bonnes pratiques dans laquelle tu peux aller piocher.

Je vais tout de même ajouter un commentaire dans le tuto.

ps : le compte que j'utilise au quotidien n'est pas admin, ça ne me pose pas de soucis, une ou 2 fois par semaine, je me connecte en admin pour quelques réglages, mais c’est rare (en pratique je me connecte nettement plus souvent à DSM pour venir aider les autres ici que pour mon usage perso).

Lien vers le commentaire
Partager sur d’autres sites

Merci Fenrir et rassures toi il n'y avait aucune critique de ma part, j'ai pioché dans ton tuto ce qui m'a permis dans un premier temps de sécuriser bien plus qu'en laissant tout par défaut, ma question venait juste en commentaire sur le fait qu'un simple compte utilisateur ne peut pas tout faire en fonction des applications, c'est d'ailleurs plus à Synology de corriger cela car je suis total en phase avec toi, normalement je ne devrais pas avoir besoin d'administrer tous les jours et loin de la, mais si je reprends surveillance station par exemple, le fait de ne pas être admin fait que DSCAM n'envoie pas de notification sur un portable (par exemple) dans le cas d'une intrusion, c'est idiot mais c'est comme cela.

Maintenant vu qu'il n'y a que ça (pour video station je peux contourner) c'était juste pour prévenir, merci pour ta réponse.

Lien vers le commentaire
Partager sur d’autres sites

Alors déjà un grand bravo pour ce super tuto qui servira à pas mal de monde j'en suis sûr !

Le 03/12/2016 à 23:23, Fenrir a dit :

Oui, mais ça sort un peu du cadre du tuto.

Le fait qu'un port ou 40 soient ouverts ne change pas grand chose niveau sécurité, par contre niveau confort le reverse proxy est un plus (en entreprise les ports élevés sont souvent bloqués).

Je rebondis juste là dessus car je ne suis pas complètement d'accord. Pour ma part le seul port ouvert vers mon Syno est le 443 et je gère tout en reverse proxy (DSM, dsvideo, dsdownload, dsaudio, et autres)

Si un robot scan mon IP il ne verra qu'une IP ouverte le 443 et tombera sur une pauvre page statique. Mes sous-domaines ne sont pas connus de Google, donc en effet en tentant plusieurs combinaisons il pourra finir par en trouver mais ca limite le risque. Il ne voit pas du premier coup d'oeil (si on peut dire) que j'ai un NAS Synology derrière ma box.

Si t'as 40 ports d'ouvert dont des ports propres à Syno (5000, 5001, etc...), t'as plus de chance que le robot tente direct sur ces ports et applique une tentative de hack propre à Syno et pas général. Donc si ton système est pas à jour dans le même temps ca peut faire bobo. Enfin je ne t'apprends rien :)

Lien vers le commentaire
Partager sur d’autres sites

Il y a 5 heures, mafiaman42 a dit :

Je rebondis juste là dessus car je ne suis pas complètement d'accord. Pour ma part le seul port ouvert vers mon Syno est le 443 et je gère tout en reverse proxy (DSM, dsvideo, dsdownload, dsaudio, et autres)

C'est aussi ce que je recommande

Il y a 4 heures, mafiaman42 a dit :

Si un robot scan mon IP il ne verra qu'une IP ouverte le 443 et tombera sur une pauvre page statique. Mes sous-domaines ne sont pas connus de Google, donc en effet en tentant plusieurs combinaisons il pourra finir par en trouver mais ca limite le risque. Il ne voit pas du premier coup d'oeil (si on peut dire) que j'ai un NAS Synology derrière ma box.

Oui et non, ça dépend

  • Oui car : si chaque port (indépendamment du nom de domaine) ne renvoi sur une application différente, tu exposes en direct plus de services aux bot, donc plus de failles potentielles => tu as parfaitement raison
  • Non car :
    • Si les 40 ports attendent aussi un nom de domaine c'est tout aussi sécurisé qu'avec un seul port vis à vis d'un bot.
    • Si la faille est sur le reverse proxy lui-même, ça ne change rien non plus.
    • Il existe plusieurs manières de déterminer les virtualhosts valides derrière une IP (et pas seulement via les DNS).

Mais ici on ne parle que dans le cas d'applications WEB, il existe de nombreux autres services sur Internet (rstp, xmpp, smtp, ftp, imap, ssh, ipsec, ...) et ces services ne peuvent généralement pas se partager un port (du moins pas sans intermédiaire type sslh).

Il y a 4 heures, mafiaman42 a dit :

Si t'as 40 ports d'ouvert dont des ports propres à Syno (5000, 5001, etc...), t'as plus de chance que le robot tente direct sur ces ports et applique une tentative de hack propre à Syno et pas général. Donc si ton système est pas à jour dans le même temps ca peut faire bobo. Enfin je ne t'apprends rien :)

Les bots ne s'appuient pas sur les numéro de port pour tester telle ou telle faille, mais sur la signature renvoyée par le serveur. Apache, Cherokee, IIS, Nginx, ... écoutent généralement sur les port 80 et 443 (puisqu'il s'agit de serveurs web), mais ils n'ont pas les mêmes failles, donc les bots font évidemment le tri avant de tester tel ou tel exploit.

Mais peu importe, ce que je voulais indiquer c'est que n'utiliser qu'un nombre restreint de ports est plus un gain de confort que de sécurité, merci pour le commentaire, on voit que tu as creusé la question :biggrin:

Lien vers le commentaire
Partager sur d’autres sites

il y a une heure, Fenrir a dit :

Si la faille est sur le reverse proxy lui-même, ça ne change rien non plus.

On est bien d'accord !

il y a une heure, Fenrir a dit :

Il existe plusieurs manières de déterminer les virtualhosts valides derrière une IP (et pas seulement via les DNS).

Je suis curieux de savoir comment. Si t'as un lien ou qurelque chose comme ça (si je peux accroître la sécurité de mon serveur, je vais pas me priver) :smile:

il y a une heure, Fenrir a dit :

Mais peu importe, ce que je voulais indiquer c'est que n'utiliser qu'un nombre restreint de ports est plus un gain de confort que de sécurité, merci pour le commentaire, on voit que tu as creusé la question :biggrin:

Je suis d'accord. C'est très agréable car accessible de partout (y compris du boulot :biggrin:) sans pour autant compromettre la sécurité du système.

Je n'utilise pas en reverse proxy le système de Syno (il n'existait pas quand je l'ai mis en place), mais un vulgaire serveur nginx qui fait la rupture protocolaire et me permet de gérer les certificats.

En tout cas je te félicite pour tes tutos qui sont très bien expliqués et structurés ! Idéal pour les débutants et mêmes les initiés

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.