Как настроить перенаправление портов через OpenVPN с VDS-сервера на операционной системе Linux?

Как настроить VPN-подключение к машине с белым IP и открытыми портами, чтобы можно было открыть Apache2 хост на локальном Linux-сервере, находящемся дома, если на локальной машине нет открытых портов?
  • 15 февраля 2024 г. 16:48
Ответы на вопрос 2
Для настройки перенаправления портов через OpenVPN на VDS-сервере в операционной системе Linux, вам потребуется выполнить следующие шаги:

1. Установите OpenVPN на VDS-сервере, если он еще не установлен. В Ubuntu или Debian это можно сделать с помощью следующей команды:
   ```
   sudo apt-get install openvpn
   ```

2. Сгенерируйте файл конфигурации сервера OpenVPN на VDS-сервере. Создайте новый файл с названием, например, "server.conf":
   ```
   sudo nano /etc/openvpn/server.conf
   ```

3. Вставьте следующие настройки в файл конфигурации сервера:
   ```
   port <VPN порт> # Номер порта, который будет слушать сервер OpenVPN
   proto udp # Используйте udp или tcp в зависимости от ваших требований
   dev tun # Используйте tun для маршрутизации IP-пакетов, tun для Ethernet-фреймов
   ca /etc/openvpn/keys/ca.crt # Путь к корневому сертификату для сервера
   cert /etc/openvpn/keys/server.crt # Путь к сертификату сервера
   key /etc/openvpn/keys/server.key # Путь к закрытому ключу сервера
   dh /etc/openvpn/keys/dh2048.pem # Путь к параметрам Диффи-Хеллмана
   server 10.8.0.0 255.255.255.0 # IP-адрес и маска подсети для VPN-сервера
   push "redirect-gateway def1 bypass-dhcp" # Маршрутизация всех пакетов VPN-клиента через сервер
   push "dhcp-option DNS 8.8.8.8" # Опциональные DNS-серверы
   keepalive 10 120 # Количество секунд между keepalive-проверками
   cipher AES-256-CBC # Используйте криптографический алгоритм на свое усмотрение
   auth SHA256 # Алгоритм аутентификации
   user nobody # Используйте ненужного пользователя
   group nogroup # Используйте ненужную группу
   persist-key
   persist-tun
   status /var/log/openvpn/status.log # Путь к файлу статуса VPN-сервера
   verb 3 # Уровень подробности логирования
   ```

4. Сохраните и закройте файл конфигурации сервера. Затем запустите следующую команду, чтобы разрешить IP-передачу и маршрутизацию:
   ```
   sudo sysctl -w net.ipv4.ip_forward=1
   ```

5. Запустите OpenVPN-сервер:
   ```
   sudo systemctl start openvpn@server
   ```

6. Добавьте OpenVPN-сервер в автозагрузку:
   ```
   sudo systemctl enable openvpn@server
   ```

Теперь настройте VPN-подключение на вашей машине.

1. Сгенерируйте файл конфигурации клиента OpenVPN, например "client.ovpn":

   ```
   client
   dev tun
   proto udp
   remote <IP адрес VDS-сервера> <VPN порт>
   resolv-retry infinite
   nobind
   persist-key
   persist-tun
   ca ca.crt
   cert client.crt
   key client.key
   remote-cert-tls server
   cipher AES-256-CBC
   auth SHA256
   comp-lzo
   verb 3
   ```

2. Создайте директорию "keys" и скопируйте в нее следующие файлы:
   - Ваш клиентский сертификат (client.crt)
   - Ваш
Да, возможно. ПОдними между ними любой ВПН либо сеть типа ZeroTier (например nebula slack ), и пробрось порты с помощью iptables 
не забудь включить маскард в ядре
Похожие вопросы