Nach DSM 4.1 update wie SFTP für WinSCP wieder zum Laufen bringen.

Status
Für weitere Antworten geschlossen.

Claus67

Benutzer
Mitglied seit
02. Aug 2007
Beiträge
58
Punkte für Reaktionen
0
Punkte
6
Hallo,
habe die Tage meine DS210j von DSM 4.0 auf DSM 4.1 upgedated und bin dabei wieder alles zum laufen zu bringen.
Aktuell scheitere ich jedoch bei SFTP um WinSCP wieder zum laufen zu bringen.
Nach suchen im Forum habe ich dies gefunden und habe entsprechend geändert d.h. von der Zeile "#Subsystem sftp internal-sftp -f DAEMON -l VERBOSE -u 000" den Kommentar entfernt, sodass bei mir nun steht:
Rich (BBCode):
# override default of no subsystems
#Subsystem        sftp        /usr/libexec/sftp-server
Subsystem       sftp    internal-sftp -f DAEMON -l VERBOSE -u 000
Subsystem       sftp    internal-sftp -f DAEMON -u 000
#Subsystem       sftp    /usr/syno/sbin/sftp-server -l DEBUG3

Jedoch tut es WinSCP dannach noch immer nicht, sondern es kommt beim Aufruf von WinSCP die Fehlermeldung.

WinSCP_SFTP_Error.jpg

Lange Zeit vor dem Update auf 4.1, das muss zu Zeiten der Version 2.x gewesen sein, hatte ich ursprünglich WinSCP mit der Anleitung aus dem Forum zu laufen gebracht. Aber seit 3.1 ist dies nicht mehr notwendig, oder?

Was mache ich falsch?

Danke & Gruß

Claus
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Geht es denn wenn du im WinSCP dem Programm erlaubst im Fehlerfall auf SCP zu wechseln? Kann mich noch dunkel erinnern, dass ich bei mir ein solches Problem auch mal hatte und ich meinte ich hätte in den Optionen einfach auf SCP umgestellt und es hat geklappt.
forum.png
Hast du mal auf der DS in /var/log/messages und/oder /var/log/auth.log geguckt ob etwas zu finden ist wieso die Verbindung abgebrochen wurde?
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.751
Punkte für Reaktionen
3.729
Punkte
468
Vermutlich nichts.

Mir ist auch schon aufgefallen, dass sftp mit 4.1 wohl nicht mehr funktioniert.
Von den 4 Zeilen sollte eigentlich immer nur eine einkommentiert werden.
Die Zeilen 1 und 4 scheiden aus, da es die enthaltenen Dateien nicht gibt.
Zeile 2 oder 3 waren bei der 4.0 richtig, die Zeilen unterscheiden sich nur im Log-Level. Worauf sich das "internal" bezieht, kann ich nicht sagen. Vermutlich auf den sshd. Es gibt aber unter /usr/syno/sbin einen sftpd, der aber nicht läuft.

Ich forsch mal weiter ...

Gruß Benares
 

Claus67

Benutzer
Mitglied seit
02. Aug 2007
Beiträge
58
Punkte für Reaktionen
0
Punkte
6
Der SCP Fallback sollte in WinSCP schon eingestellt sein d.h. unter 'Sessions' habe ich:

'File protocol: SFTP' mit aktivietem 'Allow SCP fallback'

konfigueriert.

ABER, wechsele ich zu 'File protocol: SCP' so startet, WinSCP und ich kann durch die Verzeichnisse wechseln. Möchte ich aber Dateien/Scripte (wie /var/log/messages) öffnen/bearbeiten kommt die Fehlermeldung:

WinSCP_SCP_Error.jpg

/var/log/messages kann ich keine Hinweise entnehmen:

Sep 15 10:02:28 synoaudiod: get_capability.cpp:139 Failed to download RCS SCPD xml, url [http://192.168.0.101:52235/RenderingControl1.xml], rc[-108], msg[UPNP_E_INVALID_URL]
Sep 15 10:02:28 synoaudiod: upnp.cpp:757 Failed to get renderer capability
Sep 15 11:57:39 synosshdutils: synosshdutils.c:62 Failed to fopen [/proc/17654/cmdline]. err=No such file or directory
Sep 15 12:09:38 kernel: [483879.980000] process `sysctl' is using deprecated sysctl (syscall) net.ipv6.neigh.default.retrans_time; Use net.ipv6.neigh.default.retrans_time_ms instead.

/var/log/auth.log

Die Datei gibt es bei mir nicht, auch nichts was dem Namen nahe käme?!?!?

Gruß

Claus
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.751
Punkte für Reaktionen
3.729
Punkte
468
Geht das ab 4.1 nicht über Systemsteuerung > FTP > SFTP-Dienst aktivieren?
Den Haken gibt's zwar, der sftpd läuft dann aber nicht, da Port 22 wohl schon durch sshd geöffnet ist.
Code:
Sep 15 14:30:28 sftpd[8119]: error: Bind to port 22 on :: failed: Address already in use.
Sep 15 14:30:28 sftpd[8119]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Sep 15 14:30:28 sftpd[8119]: fatal: Cannot bind any address.

Edit:
Man kann aber im DSM den sftpd auf einen anderen Port legen, dann läuft er auch, aber der Zugriff klappt trotzdem nicht.
Ich benutze seit 4.1 wieder scp. Bei mir funktioniert damit auch das Editieren.

Edit2:
Selbst bei deaktiviertem sshd und aktiviertem sftpd auf Port 22 klappt der sftp-Zugriff nicht.
Ich glaube, da hat Synology wohl Mist gebaut.
 
Zuletzt bearbeitet:

Claus67

Benutzer
Mitglied seit
02. Aug 2007
Beiträge
58
Punkte für Reaktionen
0
Punkte
6
Erst mal Danke für die vielen Hilfe-Posts..... Hier ein paar Antworten auf die Fragen


trevorreznik schrieb:
Geht das ab 4.1 nicht über Systemsteuerung > FTP > SFTP-Dienst aktivieren?
Das hatte ich vor meinem Hilferuf unter Systeminformationen > Dienste auch mal aktiviert. Da startet WinSCP unter dem login "admin" aber es waren nur die im DSM freigegeben Ordner zu sehen nicht die spannenden NAS-Ordner /var /etc ... Wenn ich mich als 'root' angemeldet habe wurde das verweigert.

DSM41_WinSCP_LetzteProtokolle.jpg DSM41_WinSCP_LetzteProtokolle2.jpg

@Bernares:

Dabei war keine Änderung des Port 22 notwendig. Hast Du es mal mit einem anderen user als "root" versucht, einem, der im DSM angelegt ist?

Merkwürdig war nur, dass unter "Terminal" SSH noch aktiviert war. Im Forum habe ich nämlich später gefunden, dass sich SFTP und SSH ausschließen.
Als ich dann denn SSH Daemon durch löschen und setzten des Häkchens neustarten wollte um das einlesen der sshd_config zu erzwingen, lies sich das SSH Häkchen wie im Forum beschrieben nicht mehr setzen....

Wie hast Du es geschafft, WinSCP mit SCP so zum Laufen zu bekommen, dass Du auch Dateien öffnen kannst?

Danke & Gruß

Claus
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.751
Punkte für Reaktionen
3.729
Punkte
468
Dabei war keine Änderung des Port 22 notwendig. Hast Du es mal mit einem anderen user als "root" versucht, einem, der im DSM angelegt ist?
Ich hatte es als root versucht, ohne Erfolg.
Ich habe jetzt nochmal den sftpd (parallel zu sshd) auf Port 2222 angeworfen. Als Nicht-root funktioniert der Zugriff per sftp tatsächlich und ich kann auch drüber Dateien editieren, sehe aber, wie du, nur einen Teil der Dateien. In 4.0 war wohl der sftpd im sshd enthalten und musst nur durch editieren von /etc/ssh/sshd_config aktiviert werden. Jetzt sind es wohl unterschiedliche Daemons und der sftpd aktzeptiert root nicht. Aber das finden wir auch noch raus.

Merkwürdig war nur, dass unter "Terminal" SSH noch aktiviert war. Im Forum habe ich nämlich später gefunden, dass sich SFTP und SSH ausschließen.
Als ich dann denn SSH Daemon durch löschen und setzten des Häkchens neustarten wollte um das einlesen der sshd_config zu erzwingen, lies sich das SSH Häkchen wie im Forum beschrieben nicht mehr setzen....
Richtig. SSH und SFTP beide auf Port 22 schliessen sich aus. Während im DSM der SSH-Haken das wohl prüft, tut das der SFTP-Haken nicht. Der Haken sitzt, aber der sftpd läuft einfach nicht.

Wie hast Du es geschafft, WinSCP mit SCP so zum Laufen zu bekommen, dass Du auch Dateien öffnen kannst?
Gute Frage. Ich hab schon immer IPKG installiert und hatte am Anfang auch einige Probleme mit WinSCP (groups, ...). Dann habe ich einige ipkg-Pakete installiert (welche weiss ich nicht mehr, evtl. coreutils, openssl), dann lief es.

Gruß Benares
 
Zuletzt bearbeitet:

Claus67

Benutzer
Mitglied seit
02. Aug 2007
Beiträge
58
Punkte für Reaktionen
0
Punkte
6
Ich habe beim weiterforschen eine Lösung d.h. eher ein Workaround gefunden.
Ich hatte ja schon vor langer Zeit (so DSM 2.x) nach dieser Anleitung SCP und SFTP installiert.
Da Benares mit WinSCP über das SCP-Protokoll Dateien öffen konnte, ich aber nicht habe ich mal weitergefosch warum dies bei mir mit SCP nicht möglich war.
Auf der Kommandozeile lieferte
Rich (BBCode):
Lummerland> scp
scp: error while loading shared libraries: libcrypto.so.0.9.8: cannot open shared object file: No such file or directory
Damit war der Symlink auf die Library beim DSM Update offensichtlich verloren gegangen. (SCP funktionierte bei mir vor dem DSM Update).
Nach dem Neuanlegen des Symlinks für OpenSSL 1.0.1c aus dem DSM 4.1 entsprechend Anleitung:
Rich (BBCode):
cd /usr/lib
ln -s libcrypto.so.1.0.0 libcrypto.so.0.9.8
und Umstellung von WinSCP auf das SCP-Protokoll konnte ich dann auch Dateien/Scripte öffen/neu anlegen.
Aber Achtung, bei in WinSCP ausgewähltem SFTP-Übertragungsprotokoll funktioniert ein erlaubter Rückgriff auf das SCP-Protokoll NICHT!

Sofern ich keine weiteren Funktionseinschränkungen bei WinSCP finde reicht das für mich.

Aktivieren des SFTP-Servers für WinSCP über Aktivierung einer auskommentierten Zeile in der sshd_config, wie dies vor DSM 4.1 möglich war, ging bei mir nicht und scheint, ab DSM4.1 nicht mehr zu gehen.
Hier möchte ich dann das Feld den Experten überlassen und mich für die schnelle Hilfe und Tipps bedanken.

Gruß

Claus
 
Zuletzt bearbeitet:

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.751
Punkte für Reaktionen
3.729
Punkte
468
Gut recheriert. Bei mir liegt eine libcrypto.so.0.9.8 unter /opt/lib, also im IPKG, das wäre eine Erklärung. Wenn ich die aber umbenenne funktioniert "scp" trotzdem, das lässt mich zweifeln.

Leider fehlt mir das Kommando "ldd" um alle anhängigen Libs von "scp" zu ermitteln.
 

Claus67

Benutzer
Mitglied seit
02. Aug 2007
Beiträge
58
Punkte für Reaktionen
0
Punkte
6
Bei mir liegt keine libcrypto.so.0.9.8 unter /opt/lib. Ich nehme an, dass der IPKG mit dem Du openssl installiert hast, scp wohl etwas sauberer einbindet als in der Anleitung (extrahiere Datei aus dem openssl-Paket, entpacke, kopiere SCP/SFTP hierhin, setzte Symlink dort, ...).

Ich denke es macht auch Sinn in der Anleitung den Text "Ab Firmware DSM 3.1 hat man auch die Möglichkeit, den internen SFTP-Server über die Änderung einer Konfigurationsdatei zu aktivieren:" anzupassen und darauf hinzuweisen, dass es ab DSM4.1 mit der Anpassung einer Konfigurationsdatei bzgl. SFTP nicht mehr getan ist. Das führte mich vorbei an SCP direkt in die Sackgasse....
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.751
Punkte für Reaktionen
3.729
Punkte
468
Dann trag es ein. Das Wiki lebt davon.

Gruß Benares
 

desaster

Benutzer
Mitglied seit
13. Apr 2012
Beiträge
3
Punkte für Reaktionen
0
Punkte
1
Seit DSM 4.1 habe ich auch keinen Root-Zugriff mehr auf die DS via SFTP.
Als normaler User habe ich Verbindung über Standardport 22, nachdem ich die sshd-Config geändert habe UND SFTP in den Einstellungen aktiviert habe.
SSH ist ebenfalls aktiviert.
Unter Linux habe ich Root-Zugriff auf das Dateisystem über das Files transferred over Shell protocol (FISH).

Fish.jpg
 

w00dst0ck

Benutzer
Mitglied seit
16. Apr 2007
Beiträge
61
Punkte für Reaktionen
0
Punkte
0
Wieso versucht ihr es nicht einfach über den User 'admin' ???
 

desaster

Benutzer
Mitglied seit
13. Apr 2012
Beiträge
3
Punkte für Reaktionen
0
Punkte
1
Als User 'admin' habe ich nur Zugriff auf die Freigaben der DS, als 'root' habe ich Zugriff auf das gesamte Dateisystem.
 

w00dst0ck

Benutzer
Mitglied seit
16. Apr 2007
Beiträge
61
Punkte für Reaktionen
0
Punkte
0
Und eben da sollte man nicht einfach so herumfuschen.
Wer meint er müsste am Rest des Filesystems etwas ändern, sollte dies ggf. besser über die Konsole machen.
 

desaster

Benutzer
Mitglied seit
13. Apr 2012
Beiträge
3
Punkte für Reaktionen
0
Punkte
1
Editieren von Config-Files ist mit einem grafischen Editor übersichtlicher als mit vi. Außerdem kann man in der Konsole genauso herumpfuschen.

P.S. Ich nutze Linux (PC-Server, Notebook, Netbook, Sat-Receiver, Mobiltelefon, Router, etc.) bereits seit mehreren Jahren. Meine erste Linux-Distro auf dem PC war Mandrake 7.2 'Odyssey'.
 

Tagger

Benutzer
Mitglied seit
08. Feb 2010
Beiträge
140
Punkte für Reaktionen
0
Punkte
22

franc

Benutzer
Mitglied seit
23. Jan 2013
Beiträge
82
Punkte für Reaktionen
4
Punkte
8
...in den Optionen einfach auf SCP umgestellt und es hat geklappt...
Bei mir läuft WinSCP problemlos wenn ich SCP als Protokoll nehme (Fallback auf SCP gibt es ja in der aktuellen WinSCP Version sowieso nicht mehr).
Ich kann alles öffnen und editieren, ohne Fehler.
Kein Grund also SFTP (openssh-sftp-server per ipkg) zu installieren und das Subsystem zu ändern (Subsystem sftp /volume1/@optware/libexec/sftp-server).

Danke für den Tipp!

Gruß franc
 
Status
Für weitere Antworten geschlossen.
 

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