Kesalahan berbagi koneksi SSH Terminal Mac OS X Lion

12

Saya terkadang mendapatkan kesalahan ini ketika mencoba ssh ke host jarak jauh:

mux_client_request_session: read from master failed: Broken pipe

Saya menggunakan Macbook Air OS X Lion dengan ini di ~ / .ssh / config:

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

ControlPersist 4h

ForwardAgent yes

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

Kesalahan di atas terjadi ketika saya melakukannya:

ssh ex

Terminal hang ~ 1 menit dan kemudian menampilkan:

mux_client_request_session: read from master failed: Broken pipe
[email protected]'s password:

Saya mengetikkan kata sandi dan tidak apa-apa. Dan jika saya membuka tab Terminal lain, berbagi koneksi juga ok. Bagaimana saya bisa memperbaikinya? Itu tidak mengerikan, tapi itu menjengkelkan.

David Xia
sumber
Bisakah Anda masuk ke mesin jarak jauh lain dari macbook air Anda? Bisakah mesin lain masuk ke [email protected]?
jessh

Jawaban:

14

Anda telah ControlPersistmengaktifkan. Dugaan saya yang berpendidikan adalah bahwa yang berikut ini terjadi:

  1. Anda memiliki koneksi ke example.com
  2. Logout, tetapi karena ControlPersistdiaktifkan, sesi tetap terbuka untuk koneksi di masa mendatang.
  3. Ada yang salah dengan koneksi jaringan Anda, dan karenanya, koneksi yang persisten terputus.
  4. Ketika Anda menjalankan ssh [email protected]lagi, itu mencoba untuk menggunakan kembali koneksi dari langkah 2, dan membuka koneksi baru setelah batas waktu.

Tidak ada opsi terpisah untuk batas waktu ini, menurut man ssh_config. Untuk menghindari ini, jangan gunakan ControlPersist. Selain itu, saya sangat merekomendasikan menggunakan login kunci publik, jika memungkinkan. Anda masih dapat memiliki frasa sandi untuk kunci publik Anda, tetapi kunci publik secara efektif mencegah pemaksaan kasar kata sandi Anda melalui koneksi SSH.

Selain itu, Anda tidak boleh menyimpan file kontrol di bawah /tmp. Itu harus / harus diamankan, dan untuk itu, misalnya ~/.ssh/master/ssh_mux_%h_%p_%rlokasi yang jauh lebih baik. Tentu saja, jika Anda satu-satunya pengguna laptop Anda (?), Itu bukan masalah besar.

Olli
sumber