![Невозможно получить доступ к Ubuntu Server, работающему на VirtualBox и удаленной машине](https://rvso.com/image/760970/%D0%9D%D0%B5%D0%B2%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%20%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B8%D1%82%D1%8C%20%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%20%D0%BA%20Ubuntu%20Server%2C%20%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D1%8E%D1%89%D0%B5%D0%BC%D1%83%20%D0%BD%D0%B0%20VirtualBox%20%D0%B8%20%D1%83%D0%B4%D0%B0%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B9%20%D0%BC%D0%B0%D1%88%D0%B8%D0%BD%D0%B5.png)
Я установил Ubuntu 20.04.1 Server как VM на VirtualBox, этот VirtualBox запущен на удаленном сервере моей школы и установлен GNS3
на этой VM (Ubuntu Server). Пока все в порядке. Но когда я пытаюсь использовать свою локальную машину (MacOS Catalina) и TunnelBlick
подключиться к этому удаленному серверу, я получаю ошибку: TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
.
На данный момент, прочитав несколько ответов, попробовал:
- от местного Mac
nc -uvz <remote server IP/also VM IP> 1194
Успех! - проверил client.ovpn, там указан правильный удаленный IP.
- может выполняться
scp
между хостом и виртуальной машиной с публичным IP-адресом — это означает, что IP-адрес виртуальной машины правильный и она достижима. - удалял и устанавливал
GNS3
несколько раз и обновлял файл конфигурации.
Пожалуйста, помогите мне с этим.
решение1
Позвольте мне ответить на ваш вопрос немного подробнее. Я понятия не имею о GNS3, но я знаю OpenVPN и TunnelBlick, который является клиентом MacOS для OpenVPN - и ваш вопрос связан с сетью. В вопросе отсутствуют важные вещи - мне придется сделать некоторые предположения, но я надеюсь направить вас на правильный путь, чтобы найти причину.
Вы упомянули, что удаленный сервер находится внутри вашей школы. Я предполагаю, что в вашей школе есть по крайней мере один брандмауэр, который владеет интерфейсом, содержащим публичный IP-адрес школы, который вы используете для доступа к своей виртуальной машине. Позвольте мне нарисовать это для пояснения:
FW remote server virtual machine
| | |
Pub. IP->|<--- priv. Subnet A ---> | <-- priv. Subnet B --> |
| | |
Опять же, я понятия не имею о сетевой инфраструктуре вашей школы, все это лишь предположение. Но это проясняет мою мысль: любое входящее соединение на публичный IP вашей школы должно быть транслировано на IP внутри подсети A вашего удаленного сервера. Это правило должно присутствовать внутри брандмауэра. Очевидно, что такое правило есть для порта SSH вашей виртуальной машины, иначе команда scp не сработает. Но то, что есть такое правило для порта ssh, не означает, что такое правило существует и для порта UDP 1194.
Если вы прошли брандмауэр и достигли интерфейса хоста удаленного сервера, необходимо снова выполнить трансляцию сетевого адреса - этот IP-пакет не предназначен для удаленного сервера, он предназначен для виртуальной машины - должно быть правило NAT для трансляции входящего трафика на IP-адрес виртуальной машины. Возможно, теперь у вас есть идея, с чего начать поиск причины ваших проблем.