1

Я хочу, чтобы мое клиентское приложение OpenVPN (запущенное на A) завершало работу, когда оно не может подключиться (или переподключиться) к серверу (B). Я использую протокол UDP. И A, и B являются системами Linux.

Точнее, я продолжаю получать следующие записи журнала.

UDPv4 link remote: [AF_INET] [remote-ip]
TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
TLS Error: TLS handshake failed
SIGUSR1[soft,tls-error] received, process restarting
Re-using SSL/TLS context
UDPv4 link remote: [AF_INET] [remote-ip]
...

Я знаю, почему A не может получить доступ к B. Вместо того, чтобы перезапустить процесс, я хочу, чтобы OpenVPN вышел.

В man openvpn есть несколько опций, которые я пытался использовать.

  • Я установил resolv-retry для небольшого числа (не работает, адрес B может быть разрешен).
  • Я установил connect-retry-max на 1 (не работает, я использую UDP).

Я предполагаю, что я смотрю на какой-то вариант ....

РЕДАКТИРОВАТЬ: Справочная информация: я хочу сделать это из-за пробивки отверстия брандмауэра. B находится за брандмауэром, который разрешает только трафик SSH. Перед запуском клиента на A я запускаю скрипт, который позволяет трафику перетекать с A на B. Это работает некоторое время, но дыру в брандмауэре B необходимо «обновить» через некоторое время (например, из-за проблем с сетью, но также из-за того, что A имеет динамический IP-адрес). Поскольку нет никакого up-pre аналога down-pre и я не хочу применять патч и сам компилировать OpenVPN, чтобы добавить его, я запускаю скрипт-обертку на A, который пробивает новую дыру (в брандмауэре B ) и запускает OpenVPN каждый раз, когда OpenVPN останавливается. Это работало бы, если бы только OpenVPN должен был выйти ....

1 ответ1

0

Добавьте директиву --down в конфигурацию OpenVpn для вызова скрипта, когда OpenVpn закрывает туннель. Этот сценарий может закрыть приложение или событие лучше - бездельничать, пытаясь заново инициализировать пробивание отверстий напрямую.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .