Mac OS X Lion Terminal Ошибка совместного использования SSH-соединения


12

Иногда я получаю эту ошибку, когда я пытаюсь ssh на удаленный хост:

mux_client_request_session: read from master failed: Broken pipe

Я использую Macbook Air OS X Lion с этим в ~ / .ssh / config:

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

ControlPersist 4h

ForwardAgent yes

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

Ошибка выше происходит, когда я делаю:

ssh ex

Терминал зависает в течение ~ 1 минуты, а затем отображает:

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

Я ввожу свой пароль, и все в порядке. И если я открою другую вкладку «Терминал», то все в порядке. Как я могу это исправить? Это не страшно, но раздражает.


Можете ли вы войти в другие удаленные машины с вашего MacBook Air? Могут ли другие машины входить по адресу somedude@example.com?
Джесс

Ответы:


14

Вы ControlPersistвключили. Мое обоснованное предположение заключается в следующем:

  1. У вас есть связь с example.com
  2. Выйдите из системы, но поскольку ControlPersistона включена, сеанс остается открытым для будущих подключений.
  3. Что-то идет не так с вашим сетевым подключением, и, следовательно, постоянные разрывы соединения.
  4. При ssh somedude@example.comповторном запуске он пытается повторно использовать соединение, начиная с шага 2, и открывает новое соединение по истечении времени ожидания.

Отдельная опция для этого тайм-аута недоступна, в соответствии с man ssh_config. Чтобы избежать этого, не используйте ControlPersist. Кроме того, я настоятельно рекомендую использовать открытый ключ, если это возможно. У вас все еще может быть фраза-пароль для вашего открытого ключа, но открытый ключ эффективно предотвращает взлом вашего пароля через SSH-соединение.

Кроме того, вы не должны хранить контрольные файлы в /tmp. Те должны / должны быть защищены, и для этого, например, ~/.ssh/master/ssh_mux_%h_%p_%rэто лучшее место. Конечно, если вы единственный пользователь своего ноутбука (?), Это не слишком большая проблема.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.