web-dev-qa-db-fra.com

Impossible de se connecter à DSM (Synology NAS)

Je pense que je me suis enfermé d'un accès Web DSM Synology DSM. Lorsque j'ai été connecté, j'ai supprimé tous les privilèges "accordés par défaut" et apparemment l'un d'entre eux (bureau?) Ont affecté mon compte d'administration. Maintenant, lorsque je reçois la page de connexion, je remplirai avec succès le nom d'utilisateur, le mot de passe et la 2e vérification, puis j'ai reçu une erreur "Vous n'êtes pas autorisé" (Remarque: Mon IP n'est pas automatiquement bloqué). J'ai tous les mots de passe et peut accéder au périphérique via ssh et les données via SMB.

Tout ce que je pouvais rechercher, c'est faire une réinitialisation douce , mais je ne suis pas sûr que cela corrige également les privilèges et je préférerais ne pas détruire ma configuration actuelle.

En utilisant ssh, y a-t-il une façon de corriger les privilèges pour ajouter mon utilisateur d'administration personnalisé à vous connecter à DSM? J'ai exploré certains fichiers sur /etc sans succès.

3
user1156544

Grâce à la confirmation de Tony sur le bureau, j'ai pu résoudre le problème, alors je vais partager parce que c'est un peu frustrant si cela vous arrive ....

Après avoir inséré avec succès les mots de passe dans DSM, l'erreur est quelque chose comme ceci: -You are not authorized to use this service. "Vous n'êtes pas autorisé à utiliser ce service."

Étapes pour résoudre le problème si vous vous enfermez accidentellement sur l'accès Web DSM:

  1. Vous devez avoir ssh accès et utiliser un utilisateur administrateur. Si vous ne le faites pas, vous avez probablement besoin pour effectuer une réinitialisation douce .
  2. (J'utilise Linux) Exécutez: ssh your_username@your_synology_ip
  3. cd /etc
  4. grep your_username /etc/passwd (par exemple. grep administrator /etc/passwd) La réponse sera quelque chose comme administrator:x:1021:100::/var/services/homes/administrator:/bin/sh Vous êtes intéressé par votre identifiant, dans l'exemple: 1021
  5. Faites une sauvegarde de la base de données, juste au cas où: cp synoappprivilege.db synoappprivilege.db.org
  6. Sudo sqlite3 synoappprivilege.db Cela demandera votre mot de passe. Insérez le mot de passe de votre_username (même mot de passe que vous avez utilisé pour ssh). Il incitera:

    SQLite version 3.10.2 2016-01-20 15:27:19
    Enter ".help" for usage hints.
    sqlite>
    
  7. Vérifiez les tables (non strictement nécessaires):

    sqlite> .tables
    AppPrivRule
    
  8. Table de requête (pas strictement nécessaire):

     sqlite> select * from AppPrivRule;
    

    Cela videra le contenu de la table, qui sera similaire à celui-ci:

     2|0|SYNO.SDS.WebDAVServer.Instance|0.0.0.0|0000:0000:0000:0000:0000:FFFF:0000:0000||
     2|0|SYNO.SDS.MailServer.Instance|0.0.0.0|0000:0000:0000:0000:0000:FFFF:0000:0000||
     2|0|SYNO.SDS.BackupService.Instance|0.0.0.0|0000:0000:0000:0000:0000:FFFF:0000:0000||
     2|0|SYNO.SDS.MailPlusServer.Instance|0.0.0.0|0000:0000:0000:0000:0000:FFFF:0000:0000||
    ...
    
  9. Le privilège que nous avons libéré involontairement était SYNO.Desktop et ne sera probablement pas répertorié dans la commande précédente. Nous devons donc l'insérer ( REMARQUE: Utilisez votre ID utilisateur tel que obtenu avant avec Grep, dans mon cas, 1021):

    sqlite> insert into AppPrivRule VALUES(0,1021,'SYNO.Desktop','0.0.0.0','0000:0000:0000:0000:0000:FFFF:0000:0000','','');
    
  10. Confirmation que tout va bien ...

    sqlite> select * from AppPrivRule;
    
    2|0|SYNO.SDS.WebDAVServer.Instance|0.0.0.0|0000:0000:0000:0000:0000:FFFF:0000:0000||
    ...
    0|1021|SYNO.Desktop|0.0.0.0|0000:0000:0000:0000:0000:FFFF:0000:0000||
    

TERMINÉ! Vous pouvez maintenant vous connecter.

Après avoir corrigé le problème, j'ai trouvé la même solution ici , mais il était impossible d'obtenir des moteurs de recherche sur la première instance. Aussi, méfiez-vous que insert dans ce lien a une petite erreur.

7
user1156544

Question interrestonnée. J'ai fait un peu de creuser sur mon propre synodi et je suis venu avec ceci:

Regardez/etc/groupe via SSH. Il devrait y avoir une ligne ressemblant à:

administrators:x:101:john,admin,plex

("Plex" n'est là que si vous avez installé le package plex.)

Ajoutez votre compte administrateur à cette ligne. Pour autant que je sache, c'est la seule chose nécessaire pour entrer dans la gestion Web DSM. Pour l'utilisateur normal d'accès Web-Web-Server (personnalisé Page d'accueil) doit également être ajouté à la ligne "http" dans le même fichier.

La prochaine chose est de tirer le fichier /etc/ysynoappprivilege.db sur un ordinateur (SOIXTFULL, Ceci est un binaire. Ne copiez pas en mode texte.)
[.____] Ceci est une base de données SQLite contenant les privilèges réels.
Chargez ce fichier dans un éditeur Hex et recherchez la section de bureau.
[.____] Cela devrait ressembler à:

YNO.Desktop0.0.0.00000:0000:0000:0000:0000:FFFF:0000:000MW

Les YNO et MW pourraient avoir des valeurs différentes. La partie importante sont les chiffres. Ceux-ci devraient être identiques au spectacle ci-dessus.
Modifiez ceci à l'aide de l'éditeur hexadécimal et placez le fichier modifié sur la synodique (conservez une copie de sauvegarde de l'original !!!).

Je ne suis pas sûr que ce changement soit ramassé par magie par magie. Un redémarrage peut donc être nécessaire pour activer le nouveau paramètre.

1
Tonny