GNU/Linux >> LINUX-Kenntnisse >  >> Linux

SFTP-Fehler Empfangene Nachricht zu lang

Konfigurieren Sie Ihren Server so, dass er den internen sftp-Server verwendet, indem Sie die folgende Anweisung zu /etc/ssh/sshd_config hinzufügen :

Subsystem sftp internal-sftp

Auf diese Weise wird die Benutzer-Shell nicht verwendet, um das sftp-Serverprogramm zu starten.


"Received message too long" bedeutet, dass Ihr SFTP-Client fehlerhafte Daten vom SFTP-Server erhalten hat. Der typische Grund ist, dass die Shell-Startskripte auf dem Server (.bashrc, .profile, .cshrc usw.) eine Ausgabe erzeugen und Ihr SFTP-Client versucht, diese Ausgabe als SFTP-Nachricht zu analysieren. Sie können dies überprüfen, indem Sie den folgenden Befehl ausführen:

ssh [email protected] 'echo hello'

Wenn dies eine andere Ausgabe als "Hallo" erzeugt, würde diese Ausgabe wahrscheinlich verhindern, dass SFTP oder SCP ordnungsgemäß funktionieren.

Wie in der Antwort von Salva können Sie dies vermeiden, indem Sie den SSH-Server so einstellen, dass er internal-sftp für SFTP-Sitzungen verwendet. Dadurch wird vermieden, dass Sie Ihre Shell für SFTP-Sitzungen starten. Dies hilft nicht bei SCP oder anderen Programmen wie git oder rsync, die über ssh laufen.

Die andere Möglichkeit, dies zu beheben, besteht darin, Ihre Shell-Startbefehle durchzugehen, herauszufinden, was die Ausgabe erzeugt, und zu verhindern, dass dies während nicht interaktiver SSH-Sitzungen geschieht. Ein Tipp ist, auf ein TTY zu testen, bevor Befehle ausgeführt werden, die eine Ausgabe erzeugen:

if [ -t 1 ]; then
    # standard output is a TTY
    ...
fi

Linux
  1. Beheben des MySQL-Fehlers:Zu viele offene Dateien

  2. OpenCA-Fehler – Zu kurze symmetrische Schlüssellänge [Lösung]

  3. Dateien können nicht aus dem Verzeichnis entfernt werden mit Fehler „Argumentliste zu lang“

  4. Commandline überschreibt sich selbst, wenn die Befehle zu lang werden

  5. gcsfuse Eingabe-/Ausgabefehler

Behebung des Nginx-Fehlers:413 Request Entity Too Large

Erklärt:Eingabe-, Ausgabe- und Fehlerumleitung in Linux

ps:vollständiger Befehl ist zu lang

Wann tritt bei der Installation über yum der Fehler „Error:Nothing to do“ auf?

grep-Ausgabe von lang nach breit

Dienststartanforderung zu schnell wiederholt, Startlimit verweigert