Grâce à ce test j'ai réalisé que les mot de passe du compte 'root' et celui du compte 'admin' inscrit dans le fichier /etc/shadow sont bien différent.
Pour ma part j'avais quelque chose du genre:
root:$1$dynUWOPL$AXWnKXiqL ...
...
...
admin:$1$synergy$5AQr ...
J'ai donc cherché un peu sur google avec les noms 'shadow synology' et je suis tombé aussitôt sur cet article qui date d'il y a 2 mois, dans lequelle il explique que les deux mot de passe 'root' et 'admin' sont bien différents et que l'authentification ssh implémenté par le syno chercherait à matcher l'un ou l'autre des 2 mots de passe.
Il y aurait donc un mot de passe pour nous, et un mot de passe pour ... quelqu'un d'autre, probablement Synology.
Je poste donc cet article pour savoir si ce que j'avance est bien réel, et dans ce cas informer et alerter les utilisateurs.
Pour savoir si ce que je dit est plausible rien de plus simple .. enfin, il faut juste regarder votre fichier /etc/shadow et voir si le début de mot de passe crypté du compte 'root' correspond avec ce que j'ai mis plus haut (il n'est pas complet, au cas ou je me tromperais je ne veux pas donner mon passe à tout le monde).
Vous pouvez aussi compiler le fichier 'test.c' et voir si le compte 'root' et 'admin' ont bien un mot de passe différent.
Pour être sur de ne pas avoir 'd'accès universel', j'ai fait ce que l'article disais (i.e. remplacer le mot de passe crypté 'root' par celui de 'admin'). Et après redémarrage et tout le tralala ça à l'air de fonctionner, et rien n'a été remplacé.
oui, tu as tout-à-fait raison, le mot de passe root est le même pour tous... Mais personne (hormis synology) ne le connait.
et sans demande particulière d'assistant auprès de synology, il y a peu de chance que quelqu'un se connecte sur nos synos, sauf si, bien sûr, le mot de passe fuite.
Donc pour être plus sûr, il faut, soit changer le mot de passe de root par celui d'admin, soit interdire le login root autrement que par clé ssh (ou les deux).
Merci à toi pour avoir donné l'information, quant à moi je change illico le mot de passe root ! (simplement avec la commande passwd root. Un essai de login fonctionne, le fichier shadow a bien été changé, j'ai gardé quelque part l'ancien mot de passe au cas où).
Reste à savoir si certaines fonctions du dsm (l'interface web) ne nécessitent pas la connaissance du mot de passe root, dans la mesure où le compte admin est un compte standard d'utilisateur et n'a donc aucun droit particulier sur le système.
Quelqu'un pour vérifier que l'interface d’administration fonctionne toujours après changement du mot de passe ?
Après un petit test supplémentaire (modification dans shadow du mot de passe d'admin), un essai de connexion en tant que root échoue. Ce qui laisse penser que le ssh embarqué utilise le mot de passe d'admin pour le compte root, et que le mot de passe root n'est utilisé qu'en local (probablement par l'interface d'administration).
Le problème d'accès ssh avec le compte root ne semble se poser qu'en cas d'installation d'openssh par ipkg, car dans ce cas le login root n'est plus possible avec le mot de passe d'admin, et quiconque a le mot de passe root commun a tous peut se connecter en tant que root.
Reste à savoir si le ssh de synology n'a pas d'autres particularités (du genre l'utilisateur synomachin devient root), il faudrait voir si le code source est dispo chez syno pour le vérifier.