Назад | Перейти на главную страницу

Ошибка входа pubkey ssh, когда tmux отсоединен от удаленного

Я использую tmux на удаленном экземпляре, потому что он туннелируется на узлы сервера Mac. Эти серверные узлы Mac имеют Xcodes для сборки приложений iOS, поэтому их следует часто обновлять. Мои товарищи по команде используют скрипт с параллельным ssh-соединением с tmux на удаленном экземпляре, потому что эти Mac почти всегда дежурят для сборки приложений iOS.

В последнее время произошло то, что в значительной степени связано с обновлением Catalina Update: пользователь сценария не может отсоединить tmux и освободить соединение от удаленного экземпляра.

Если пользователь отключен от сеанса tmux и вышел из системы с удаленного сервера, пробное соединение SSH на следующий компьютер завершится неудачно с ошибкой входа в систему через SSH. (Текущие соединения, которые поддерживает скрипт и находятся в действии, сохраняются без закрытия соединения.)

Я попробовал параллельный вход SSH на основе пароля с UsePAM yes как на Mac, так и на удаленном сервере, но ничего не изменилось. Также пробовал коды ниже, но в работе ничего не изменилось.

i) проверьте ssh_config и sshd_config удаленного сервера (https://qiita.com/sonots/items/2d7950a68da0a02ba7e4)

in ~/.bashrc and /etc/bashrc

agent="$HOME/.ssh/agent"
if [ -S "$SSH_AUTH_SOCK" ]; then
    case $SSH_AUTH_SOCK in
    /tmp/*/agent.[0-9]*)
        ln -snf "$SSH_AUTH_SOCK" $agent && export SSH_AUTH_SOCK=$agent
    esac
elif [ -S $agent ]; then
    export SSH_AUTH_SOCK=$agent
else
    echo "no ssh-agent"
fi

ii) разрешение пересылки ssh-агента на удаленный сервер (https://qiita.com/hirotaka-tajiri/items/5197c8fa7f32d766c9cc)

in ~/.ssh/config

ForwardAgent yes
in /etc/ssh/sshd_config

AllowAgentForwarding yes
in /etc/ssh/ssh_config

ForwardAgent yes

iii) Добавить ключи к агенту в ~ / .ssh / config удаленного сервера

Host *
  AddKeysToAgent yes

Могу ли я еще что-нибудь сделать для решения проблемы, связанной с сеансом, или мне следует сохранить сеанс в режиме tmux?