Мне нужно использовать клиент Fortigate SSL VPN для Windows (версия 5.4.1.0840) для подключения к нашей корпоративной сети.
Одна из самых неприятных вещей в этом программном обеспечении заключается в том, что всякий раз, когда клиент VPN отключается и повторно подключается к удаленному шлюзу VPN, он уничтожает все мои сеансы SSH. Это может происходить два или три раза в день из-за временных проблем с подключением между мной и центром обработки данных.
Несмотря на то, что на всех моих удаленных серверах в sshd_config
:
TCPKeepAlive yes
ClientAliveInterval 300
ClientAliveCountMax 10
И в моем SSH-клиенте ssh_config
:
Host *
ServerAliveInterval 300
ServerAliveCountMax 10
Всякий раз, когда клиент VPN ненадолго отключается и автоматически подключается снова, мои сеансы SSH умирают с:
kevin@my.remote.server.com ~
$ Connection reset by 1.2.3.4
@BUZZ2 ~
$
IP-адрес 1.2.3.4
это Linux-сервер, к которому я был подключен через SSH.
Это происходит с использованием SSH-клиентов PuTTY, Cygwin и Ubuntu bash (подсистема Windows для Linux).
Если я проверяю здесь локальный сервер, а затем либо дергаю свой кабель Ethernet, либо ненадолго отключаю Wi-Fi, то клиент и сервер SSH успешно сглаживают кратковременную потерю связи. Мое соединение не сбрасывается, просто этот VPN-клиент Fortigate, кажется, полностью уничтожает мои сеансы.
К вашему сведению: удаленный шлюз Fortigate - это Fortigate 600C с прошивкой 5.2.5 build 701.
Чтобы обойти эту проблему, я использую tmux на своих удаленных серверах, чтобы при повторном подключении все, что я делал, не улетучилось. Однако когда у меня есть десять или пятнадцать сессий SSH на ходу, это становится утомительным упражнением, чтобы снова подключиться к серверу по SSH и повторно подключиться к моим сессиям tmux.
Это просто характер этого конкретного продукта VPN или есть ли параметр конфигурации, который я могу изменить либо в клиенте VPN, либо в Fortigate 600, который не позволит ему полностью разрушить мои SSH-соединения?