Значение для ServerAliveInterval означает, что «если в течение этого времени от сервера не было получено никаких данных, отправьте на сервер сообщение NULL».
Аналогично, ClientAliveInterval означает, что «если в течение этого времени от клиента не было получено никаких данных, отправьте клиенту сообщение NULL».
Обычно значения по умолчанию 0
, что означает, что эти функции отключены.
В основном это используется для предотвращения того, чтобы промежуточные маршрутизаторы и брандмауэры считали сеанс бездействующим и прерывали его. Это не оказывает реального влияния на сам ssh-сервер.
Например, многие домашние маршрутизаторы NAT прекращают сеансы бездействия по прошествии определенного периода времени (точное время зависит от вашего маршрутизатора; я видел значения от 1 часа до более 21 дня). Устанавливая ServerAliveInterval
, вы имитируете этот тайм-аут простоя в маршрутизаторе, гарантируя, что всегда есть некоторый трафик в пределах интервала маршрутизатора.
Новый openssh
7. 3 предоставляет переключатель -J
, который позволяет вам создать желаемую однострочную строку:
scp -oProxyJump=userB@hostB,userC@hostC infile.txt userD@hostD:"~/outfile.txt"
Со страницы руководства:
ProxyJump
Указание одного или нескольких прокси-переходов как
[user@]host[:port]
. Несколько прокси могут быть разделены символами запятой и будут посещаться последовательно. Установка этой опции заставит ssh(1) подключиться к целевому хосту, сначала установив ssh(1) соединение с указанным хостом ProxyJump, а затем установив оттуда TCP-переадресацию к конечной цели.