Fehler bei der SSH-Verbindungsfreigabe für Mac OS X Lion Terminal


12

Ich erhalte manchmal die folgende Fehlermeldung, wenn ich versuche, auf einen Remote-Host zu ssh:

mux_client_request_session: read from master failed: Broken pipe

Ich verwende Macbook Air OS X Lion mit diesem in ~ / .ssh / config:

ControlMaster auto
ControlPath /tmp/ssh_mux_%h_%p_%r

ControlPersist 4h

ForwardAgent yes

Host [ex]
    HostName [example.com]
    User [somedude]

Der obige Fehler tritt auf, wenn ich Folgendes tue:

ssh ex

Das Terminal bleibt ca. 1 Minute lang hängen und zeigt dann Folgendes an:

mux_client_request_session: read from master failed: Broken pipe
somedude@example.com's password:

Ich gebe mein Passwort ein und es ist in Ordnung. Und wenn ich eine andere Registerkarte "Terminal" öffne, ist die gemeinsame Nutzung von Verbindungen ebenfalls in Ordnung. Wie kann ich das beheben? Es ist nicht schrecklich, aber es ist nervig.


Können Sie sich von Ihrem MacBook Air aus bei anderen Remote-Computern anmelden? Können sich andere Computer bei somedude@example.com anmelden?
Jessh

Antworten:


14

Sie haben ControlPersistaktiviert. Meine Vermutung ist, dass Folgendes passiert:

  1. Sie haben eine Verbindung zu example.com
  2. Abmelden, aber da diese Option ControlPersistaktiviert ist, bleibt die Sitzung für zukünftige Verbindungen geöffnet.
  3. Bei Ihrer Netzwerkverbindung ist ein Fehler aufgetreten, sodass die Verbindung dauerhaft unterbrochen wird.
  4. Wenn Sie ssh somedude@example.comerneut ausführen , wird versucht, die Verbindung aus Schritt 2 wiederzuverwenden, und nach dem Timeout wird eine neue Verbindung geöffnet.

Laut dieser Option ist für dieses Timeout keine separate Option verfügbar man ssh_config. Um dies zu vermeiden, verwenden Sie nicht ControlPersist. Darüber hinaus empfehle ich dringend, wenn möglich die Anmeldung mit öffentlichem Schlüssel zu verwenden. Sie können weiterhin eine Passphrase für Ihren öffentlichen Schlüssel verwenden, aber der öffentliche Schlüssel verhindert effektiv, dass Ihr Kennwort über eine SSH-Verbindung brutal erzwungen wird.

Außerdem sollten Sie keine Steuerdateien unter speichern /tmp. Diese sollten / müssen gesichert werden, und dafür ist zum Beispiel ~/.ssh/master/ssh_mux_%h_%p_%reine viel bessere Lage. Wenn Sie der einzige Benutzer Ihres Laptops sind (?), Ist das natürlich kein allzu großes Problem.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.