DSM 6.0 - Fehlender "Root-Zugriff" - Lösung für WinSCP gesucht

Wurzelseppi

Benutzer
Mitglied seit
01. Dez 2016
Beiträge
81
Punkte für Reaktionen
0
Punkte
6
Also,

mit den Schritten:
mkdir -p /root/.ssh
chmod 0700 /root/.ssh
ssh-keygen -b 4096 -t rsa -f /root/.ssh/id_rsa
cat /root/.ssh/id_rsa.pub >>/root/.ssh/authorized_keys
chmod 600 /root/.ssh/authorized_keys
cp /root/.ssh/id_rsa /volume1/public

das Keypair erstellt und in die authorized keys eingetragen

die id_rsa auf meinen win rechner kopiert und dort über puttykeygen ins putty format konvertiert (mit 4096 bits)
Wenn ich den putty-key dann nochmal im puttykeygen lade zeigt er das an: fingerprint: ssh-rsa 4096 9c:71:4a:f6:56:a9:d1:e9:xx:21:48:xx:d0:xx:a0:0d (hab mal ein paar Sachen ausge "xx"t :) )

Dann den bei SCP als Auth key angegeben.

Dann zeigt mit WinSCP beim Verbinden an: Unser Key wurde abgelehnt....

Hmmm .... also irgendwie mach ich was falsch :-(
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
Kannst du zum Test mal mit putty probieren dich zu verbinden, als ppk hast du den Schlüssel ja eh schon jetzt.
Am besten dann auch in putty das logging (raw ssh) anschalten, damit man mal detaillierter sieht, was zur (möglichen) Ablehnung führt.
 

Wurzelseppi

Benutzer
Mitglied seit
01. Dez 2016
Beiträge
81
Punkte für Reaktionen
0
Punkte
6
Hi,

hmmm

hab jetzt mal raw logging angeschalten, aber dort nichts gesehen ...
Folgendes habe ich aber selbst entdeckt. In einem Tutorial zu putty zu dem Thema hab ich folgendes gefunden:

Do not add the email@example.com at the end of the line.
Do not add the BEGIN PUBLIC KEY or END PUBLIC KEY.
Do not add the rsa-key-20090614 at the end.
Make sure, there is ssh-rsa at the beginning.

Komisch ist, daß in der authorized keys im Synology folgendes am Schluss steht:

......5w== root@{mein host name}

Wenn ich den key über das keytool konvertiere steht das aber nicht in der ouput datei (ppk) ....

die endet mit

.....5w==

Passen die so überhaupt noch zusammen ?

Ich hab mal in der authorized_keys die mailadresse am Schluß weggenommen, aber das ging auch nicht....
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
Das sind ja auch schon mal 2 verschiedene Schlüssel.
id_rsa ist der private Schlüssel, id_rsa.pub ist der öffentliche Schlüssel. Beide zusammen bilden ein Public/Private-key-Pärchen. Nur wenn der anfragende private Schlüssel zu dem auf dem Server hinterlegten öffentliche Schlüssel passt gibt es Zugang. Den öffentlichen Schlüssel braucht man auf dem zugreifenden Rechner überhaupt nicht.

In der authorized_keys steht der öffentliche Schlüssel. Der öffentliche Schlüssel sieht in einem Text -Editor aus wie
ssh-rsa bla bla bla .... bla root@Host

Der private Schlüssel landet auf dem Rechner. Der private Schlüssel sieht in einem Text-Editor aus wie
-----BEGIN RSA PRIVATE KEY-----
anderes bla bla
-----END RSA PRIVATE KEY-----

Das bla bla beginnt weder, noch endet es, bei dem öffentlichen und dem privaten Schlüssel identisch.
Hast du vielleicht deinen öffentlichen Schlüssel umgewandelt und probierst mit diesem als "privatem" Schlüssel Verbindung zu bekommen?
 

aramis2907

Benutzer
Mitglied seit
16. Jan 2014
Beiträge
6
Punkte für Reaktionen
0
Punkte
0
Hallo,
ich muss mich hier auch mal einklinken, da ich nicht wirklich weiterkomme.
Ich habe die einzelnen Schritte zur Erstellung der Keys auch lt. den Tipps hier abgearbeitet und die id_rsa dann mit Puttygen umgewandelt und in WinSCP eingebunden.
Ich kann mich als admin anmelden, habe allerdings keine root Rechte.
Wenn ich root als User benutze, wird der Verbindungsversuch abgewiesen.
Muss ich bei den erweiterten SCP Einstellungen von WinSCP evtl. noch etwas beachten?
Ich habe mir den Thread wieder und wieder durchgelesen, finde aber nicht den Fehler.
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
Der Schlüssel gilt, richtig abgelegt, nur für den User root und für sonst niemanden.

Du musst deine Schritte hier explizit dokumentieren (konkrete Angaben, Screenshots), sonst können wir dir auch nicht sagen, ob da eventuell ein (Flüchtigkeits)-Fehler passiert ist.
Auch möglichst ausführliche Fehler/Debug Logs, wo man sie beschaffen kann.
Dann noch die Frage, funktioniert die ssh Verbindung für root mit Putty selber?
 

Wurzelseppi

Benutzer
Mitglied seit
01. Dez 2016
Beiträge
81
Punkte für Reaktionen
0
Punkte
6
Du kannst eigentlich alles in PuttyGen machen, und dann nur den public key in die authorized_keys deines root users kopieren.
In WinSCP musst du natürlich bei den Erweiterten Einstellungen SSH Einstellungen - Authentifizierung die Datei mit dem privaten Schlüssel angeben, und dich vor allen dann nicht mit admin sondern mit root anmelden....
 

aramis2907

Benutzer
Mitglied seit
16. Jan 2014
Beiträge
6
Punkte für Reaktionen
0
Punkte
0
Danke für eure schnelle Antworten.
Bin momentan unterwegs, werde es heute Abend nochmal durchgehen und Rückmeldung geben.

Meine Schritte bisher waren wie folgt:
- per Putty als admin mit der DS verbunden.
- sudo -i
- als root folgendes ausgeführt:
mkdir -p /root/.ssh
chmod 0700 /root/.ssh
ssh-keygen -b 4096 -t rsa -f /root/.ssh/id_rsa
cat /root/.ssh/id_rsa.pub >>/root/.ssh/authorized_keys
cp /root/.ssh/id_rsa /volume1/public
- id_rsa mit Puttygen konvertiert und den Pfad bei WinSCP hinterlegt

@Fusion: Die ssh Verbindung für root über Putty funktioniert tadellos, da gibt es keine Probleme.

@Wurzelseppi: Public Key wurde bereits per putty via "cat /root/.ssh/id_rsa.pub >>/root/.ssh/authorized_keys" entsprechend abgelegt. Pfad zum Private Key (per Puttygen umgewandelte id_rsa habe ich bei Authentifizierung in den erweiterten WINSCP Einstellungen hinterlegt.

Also, heute Abend teste ich das ganze Prozedere nochmal durch und melde mich.
 

aramis2907

Benutzer
Mitglied seit
16. Jan 2014
Beiträge
6
Punkte für Reaktionen
0
Punkte
0
So, habe das Verzeichnis /root/.ssh nochmal komplett gelöscht und die einzelnen Schritte nochmal abgearbeitet, habe bemerkt, dass ich die Rechtevergabe für /root/.ssh/authorized_keys, wie in Beitrag 81 erwähnt, wohl übergangen habe.
Also Rechte entsprechend gesetzt und dann nochmal versucht - klappt.
Manchmal sieht man wohl den Wald vor lauter Bäumen nicht - dennoch vielen Dank für eure schnelle Hilfe, wird bei anderen Baustellen bestimmt bald wieder gebraucht :)

Gruß
Enrico
 
Zuletzt bearbeitet:

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
Sehr schön. Wieder mal hat sich gezeigt, Ruhe bewahren, einen Schritt zurück und nochmal drüber schauen, manchmal braucht es auch einen Tag Abstand.... :)
 

Kurt-oe1kyw

Benutzer
Sehr erfahren
Mitglied seit
10. Mai 2015
Beiträge
9.139
Punkte für Reaktionen
1.778
Punkte
314
Du musst eine Schlüsseldatei erstellen. Das geht mit Putty direkt auf der Konsole der DS
Code:
mkdir -p /root/.ssh
chmod 0700 /root/.ssh
ssh-keygen -b 4096 -t rsa -f /root/.ssh/id_rsa
ein Passwort würde ich für den Key festlegen (wird abgefragt) oder du lässt die Abfrage leer (einfach Enter drücken) für keinen Passwortschutz der Schlüsseldatei. Auf dem Client (System, das die Verbindung aufbaut) brauchst du den Inhalt des Schlüsselfiles (id_rsa). Auf dem Server (DS) musst du den Inhalt des id_rsa.pub in die Datei authorized_keys eintragen
Code:
cat /root/.ssh/id_rsa.pub >>/root/.ssh/authorized_keys
auf dem Server selber brauchst du id_rsa ned, den kannst du auch löschen.
Danach musst du auf dem Client deinen Anwendungen (z.B. Putty oder WinSCP) bekannt geben wo der id_rsa (privater Schlüssel) zu finden ist

Vielen, vielen DANK jahlives - diese Beschreibung von dir hat mir persönlich am meisten geholfen! Ich habe überhaupt keine Ahnung von all diesen Befehlszeilen, hat aber letztendlich dann funktioniert.
Durch den Geräteumstieg von DS415+ auf DS916+ war ich auch gezwungen DSM 6.x zu benützen und hatte somit auch keinen "root" Zugang mehr.
Ich habe alles nur mit winSCP gemacht!

Vielleicht helfen meine Zeilen dem einen oder anderen weiter, da ich aus der Sicht eines absolut blinden und unwissenden berichte.
Wie oben erwähnt, war mein erstes "Problem" schon die Fehlermeldung nach der ersten Zeileneingabe
mkdir -p /root/.ssh ENTER drücken
erst als ich in eine leere Zeile
sudo -i ENTER eingetippt hatte (=Wechsel von "admin" auf "root") konnte ich alle Zeilenbefehle oben absetzen und ohne Probleme Zeile für Zeile abarbeiten.

So und nun stand ich persönlich da mit meinem Problem:
Ich war auf der Konsole, korrekt als root angemeldet und hatte alles durch und eine leere Zeile wo ich weitere Befehle machen konnte/könnte.
Laut Beschreibung soll man die id_rsa jetzt auf dem Clienten (PC) ablegen und diesen Pfad in winSCP hinterlegen - nur ich wusste an dieser Stelle nicht WIE ich das machen sollte?
Denn in winSCP konnte ich immer noch nicht in den Ordner root sehen - Zugriff verweigert.

Daher möchte ich noch weiter ergänzen, so wie ich es als absoluter Laie getan habe.

PuTTY, alles war erledigt wie oben beschrieben und ich stand vor einer weiteren "Eingabezeile", keine Ahnung was ich jetzt machen soll und wie ich an die id_rsa Datei kommen soll?!?
cd .ssh ENTER eingetippt = das bringt einen in das Verzeichnis root/.ssh
ls -l ENTER eingetippt = das zeigt den Inhalt an!
Mein erstes "Erfolgserlebnis" - jetzt konnte ich endlich auch die Dateien
authhorized_keys
id_rsa
id_rsa.pub sehen und deren Dateigröße.

cp id_rsa /volume1/name_eines_meiner_vorhandenen_gemeinsamen_ordners ENTER eingetippt
JETZT war die id_rsa endlich auch für mich durch den PC "greifbar" auf der Diskstation!
id_rsa genommen und auf einen Pfad am PC c:/ bla bla bla /id_rsa abgelegt.

winSCP (Version 5.9.2) gestartet > UMSTELLEN AUF SCP (!!) > Benutzername root und bei "Erweitert" in SSH/Authentifizierung in der weißen Zeile unter "Datei mit privatem Schlüssel" den Pfad auf c:/bla bla bla/id_rsa angegeben und mit OK bestätigt.
JETZT kam bei mir ein Hinweisfenster das diese id_rsa NICHT mit PuTTY funktioniert oder so ähnlich und ob die Datei gleich umgeandelt werden soll - mit JA/OK bestätigt.
Auf meinem PC c:/bla bla bla/id_rsa war jetzt eine neue Datei hinzugekommen mit Namen id_rsa.ppk und diese Datei id_rsa.ppk habe ich dann unter "Datei mit privatem Schlüssel" angegeben > OK
Anmelden auf winSCP gestartet - läuft durch bis die Abfrage nach "passphrase" oder so ähnlich kommt > hier jetzt das Kennwort eintippen welches ihr beim Erstellen vom Schlüssel in PuTTY verwendet habt.
Fertig das wars, so ist man auch in winSCP wieder als "root" auf der Diskstation.

JETZT kam für mich noch mal ein Punkt wo ich persönlich "unrund" (besser panisch!) wurde, ich war jetzt mit winSCP als root im Ordner "root" und da war nix, nafta, leer, nix zu sehen > Stress, Panik....
$(%&/§=%/(§(/$%(§)$§()$§ > eurer Interpretation dürft ihr hier freien Lauf lassen was aus mir so heraussprudelte....
in winSCP links oben auf PuTTY geklickt, Konsole cd .ssh > Erleichterung die 3 Dateien sind noch da!
in winSCP nach der Einstellung gesucht wo man den Haken setzt vor "Versteckte Dateien anzeigen" - JETZT konnte ich auch in winSCP im Ordner "root" alle darin enthaltenen Ordner und Dateien sehen :)

Zu guter letzt die Datei id_rsa im gemeinsamen Ordner auf der DS gelöscht, also da wo ich sie genommen habe für eine Kopie auf den PC nach c:, da sie an der Stelle nicht mehr benötigt wird auf der DS.

Vielen Dank an euch alle für eure Beiträge, ohne euch hätte ich das niemals geschafft.
 
Zuletzt bearbeitet:

HabNeFritzbox

Gesperrt
Mitglied seit
09. Jan 2017
Beiträge
155
Punkte für Reaktionen
0
Punkte
16
Oder man setzt dem Benutzer root einfach wieder ein Passwort, da dieses von Syno entfernt wurde, womit Login nicht mehr klappt.

Anpssen von /etc/shadow (direkt mit admin User über WinCP ändern, fehlen die Rechte noch zu;)) oder eben mit passwd sollte auch gehen.

Wer sich mit Auskennt, sollte damit weiterkommen, Syno hat es ja nicht Grundlos gemacht, daher schreib ich keine genaue Anleitung zu.
 

Scirocco3

Benutzer
Mitglied seit
29. Dez 2016
Beiträge
324
Punkte für Reaktionen
2
Punkte
0
Hallo zusammen,

ich hab mich jetzt auch mal dran versucht. Bekomme aber auch einen Fehler.
Meine Schritte bisher sind/waren

  • Terminal gestart
  • sudo -i
  • als root folgendes ausgeführt:
  • mkdir -p /root/.ssh
  • chmod 0700 /root/.ssh
  • ssh-keygen -b 4096 -t rsa -f /root/.ssh/id_rsa
  • cat /root/.ssh/id_rsa.pub >>/root/.ssh/authorized_keys
  • cp /root/.ssh/id_rsa /volume1/Ablage

Dann die id_rsa auf meinen Desktop kopiert und in CyberDuck das folgende eingestellt.
Bildschirmfoto 2017-03-25 um 13.37.24.JPG

Und beim Login bekomme ich dann...
Bildschirmfoto 2017-03-25 um 13.38.02.JPG

************************************************
Mit YummyFTP Pro ergeht es mir nicht anders..
Bildschirmfoto 2017-03-25 um 13.42.57.JPG
Bildschirmfoto 2017-03-25 um 13.43.08.JPG
 
Zuletzt bearbeitet:

Racing65

Benutzer
Mitglied seit
08. Jun 2015
Beiträge
83
Punkte für Reaktionen
8
Punkte
14
Hallo,

Du musst noch folgendes tun.
Lade dir Puttygen von der Putty Homepage runter.
Den id_rsa Key in Puttygen mit Conversions - Key importieren und dann Save private key.
An den Key noch .ppk anhängen.

Gruß
 

Scirocco3

Benutzer
Mitglied seit
29. Dez 2016
Beiträge
324
Punkte für Reaktionen
2
Punkte
0
Danke, dann werde ich mal Windows starten und das machen...
 

Kurt-oe1kyw

Benutzer
Sehr erfahren
Mitglied seit
10. Mai 2015
Beiträge
9.139
Punkte für Reaktionen
1.778
Punkte
314
siehe Racing65 oben:

Bei mir muss ich direkt auf die .ppk Datei verweisen, bei deinem screenshot verweist du aber nur auf das Verzeichnis und nicht direkt auf die .ppk Datei.
 

Scirocco3

Benutzer
Mitglied seit
29. Dez 2016
Beiträge
324
Punkte für Reaktionen
2
Punkte
0
Nein... Das ist direkt die Datei wie ich Sie von der NAS kopiert habe.
Die hat keine Endung und deswegen sieht es vielleicht so aus als wäre es ein Ordner.

@Racing65
Hab ich gemacht, aber die Fehlermeldung habe ich immer noch.
Sieht jetzt so aus... Fehlermeldung ist immer noch die selbe
Hardcopy 2017-03-25 um 14.06.22.jpg
 

Kurt-oe1kyw

Benutzer
Sehr erfahren
Mitglied seit
10. Mai 2015
Beiträge
9.139
Punkte für Reaktionen
1.778
Punkte
314
Ich frag mal vorsichtig:
Im DSM hast du aber SFTP auch aktiviert?
DSM > Systemsteuerung > Dateidienste > Register FTP > unten bei SFTP den Haken gesetzt auf "SFTP-Dienst aktivieren" - Port 22 ?

Eben so hast du den "admin" aktiviert (Systemsteuerung>Benutzer>admin = Status Normal) und den SSH und Telnetdienst (Systemsteuerung > Terminal&SNMP > Register Terminal > Haken vor beide Dienste setzen > andernfalls bekommst du auch keinen rootzugriff


Und kannst du die .ppk Datei mal anderswo speichern und nicht auf dem Desktop, also zB c:/sftp_zugriff/xxxx.ppk und dann damit probieren.
 

Scirocco3

Benutzer
Mitglied seit
29. Dez 2016
Beiträge
324
Punkte für Reaktionen
2
Punkte
0
Jupp, hab ich ...

Hardcopy 2017-03-25 um 14.18.08.jpg
 

Kurt-oe1kyw

Benutzer
Sehr erfahren
Mitglied seit
10. Mai 2015
Beiträge
9.139
Punkte für Reaktionen
1.778
Punkte
314
und der user "admin" ist im Status "Normal"?
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat