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

Доступ к веб-серверу на VPN-клиенте через общедоступный IP-адрес VPN-сервера

Я пытаюсь получить доступ к веб-серверу, работающему на ПК, который находится за брандмауэром, которым я не управляю, используя VPN-соединение (openvpn). По сути, я хочу использовать общедоступный IP-адрес своего VPN-сервера для доступа к веб-серверу на удаленном ПК за брандмауэром.

Согласно изображению,http://193.105.1.1:8085 представит веб-сайт, расположенный по адресу 192.168.1.1:8080

Извините, если этот вопрос уже был рассмотрен. Я пытался найти что-то подобное, но на самом деле не знаю, что искать.

Достаточно просто!

Для простоты рассмотрим машину A - 193.105.1.1 и машину B - 192.168.1.1.

  1. Установите сервер OpenVPN на машину A

    Я предпочитаю Ubuntu 18.04 и скрипт установщика Nyr OpenVPN

    Просто запустите это в терминале

    wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh

  2. Предполагая, что у вас уже есть установка apache или nginx на компьютере B, убедитесь, что он прослушивает все интерфейсы.

  3. На машине B установите клиент OpenVPN, чтобы подключиться к вашему серверу!

    Запустите этот код в терминале, чтобы установить OpenVPN Client.

    sudo apt-get install openvpn

  4. Теперь нам нужно настроить машину A для маршрутизации трафика с общедоступного IP-адреса на внутренний IP-адрес OpenVPN, машине B будет назначен адрес 10.8.0.2, если вы использовали скрипт Nyr.

Настроим маршрутизацию!

  1. Включить брандмауэр ufw
  2. sudo ufw enable ssh && sudo ufw enable
  3. sudo nano /etc/default/ufw
  4. Измените "DEFAULT_INPUT_POLICY" и "DEFAULT_FORWARD_POLICY" на ACCEPT. Сохраните и закройте файл.
  5. sudo nano /etc/ufw/sysctl.conf
  6. Раскомментируйте "et / ipv4 / ip_forward = 1". Сохраните и закройте файл.
  7. sudo nano /etc/ufw/before.rules
  8. В конце строки после строки «COMMIT» добавить следующее

    * нац

    -F

    : PREROUTING ACCEPT [0: 0]

    -A PREROUTING -i eth0 -d 193.105.1.1 -p tcp -m multiport --dports 23: 65535 -j DNAT --to-destination 10.8.0.2

    -A POSTROUTING -s 10.8.0.0/24! -d 10.8.0.0/24 -j МАСКАРАД

    COMMIT

Измените eth0 на имя вашего сетевого интерфейса.

Сохраните и перезагрузите оба сервера! Подключите машину B к машине A с помощью клиента OpenVPN.