ssh - Отключить выделение псевдотерминалов

Вы можете сделать это с помощью агента SSH. Большинство сред рабочего стола запускают его для вас; вы можете добавить свой ключ в него, выполнив

ssh-add

Если вам нужно запустить агент, выполните

eval $(ssh-agent)

(это устанавливает ряд переменных окружения).

Опция -t в ssh-agent позволит вам указать таймаут. Подробнее см. в Настройка таймаута по умолчанию для агента SSH.

1
28.03.2019, 10:08
1 ответ

Если вы отключите выделение pty с помощью -T, sshd будет использовать пару каналов вместо двунаправленного -pty для связи с процессом, выполняющим удаленную команду.

Вы можете взглянуть на функциюdo_exec_no_pty()в исходном коде OpenSSH, если она нигде не задокументирована.dropbear(другая реализация sshd )делает что-то подобное.

В случае, когда pty является выделенной(-tопцией или удаленная команда не указана ), на удаленном компьютере будет выделен только один pty; клиент ssh не будет размещать pty на локальной машине; он просто переключит необработанный режим на свой стандартный ввод, если это tty.

4
27.01.2020, 23:22

Теги

Похожие вопросы