--- title: Подключение к инфраструктуре посредством технологии виртуальной частной сети (VPN). --- # **Подключение к инфраструктуре посредством технологии виртуальной частной сети (VPN).** Версия 1.0 27.07.2021 **Цель**: получение доступа к офисной инфраструктуре 192.168.1.0/24 из рабочей станции "kali", которая также может предоставить доступ к своей инфраструктуре - в этом случае можно объединить сети разных инфраструктур. **План действий**: 1) Подключение рабочей станции "insider" из целевой инфраструктуры к OpenVPN-серверу; 2) Подключение "kali" (находится вне инфраструктуры) к OpenVPN-серверу; 3) Настройка NAT на компьютере "insider", для возможности подключения компьютера "kali" ко всем узлам инфраструктуры 192.168.1.0/24; 4) Настройка маршрутизации для доступа к сети 192.168.1.0/24 через сеть OpenVPN-сервера; ![](https://i.imgur.com/PR1PEtc.jpg) # **Установка OpenVPN на сервере.** **1) Получение информации о наличии обновлений установленных пакетов;** ``` apt update Для успешного выполнения должен быть интернет, в настройках (/etc/resolv.conf должен быть прописан DNS). В результате на экране отобразятся строки с информацией о актуальности пакетов. Hit: нет обновления для версии пакета Ign: пакет игнорируется, либо пакет слишком старый Get: доступна новая версия ``` **2) Установка curl;** `apt install curl` **3) Скачивание и сохранение скрипта установки OpenVPN;** `curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh` **4) Установка прав на выполнение скрипта;** `chmod +x openvpn-install.sh` **5) Запуск скрипта установки (8 пунктов, для выполнения пункта после ввода параметра нужно нажать "Enter");** `./openvpn-install.sh` * указать ip адрес где устанавливается OpenVPN; * снова указать указанный в предыдущем шаге ip адрес; * IPv6 не нужен - ввести "n" и нажать "Enter"; * выбрать порт по умолчанию (1194) - ввести "1" и нажать "Enter"; * выбрать протокол по умолчанию (UDP) - ввести "1" и нажать "Enter"; * выбрать DNS - выбрать AdGuard DNS путем ввода порядкового номера и нажать "Enter"; * компрессия не нужна - ввести "n" и нажать "Enter"; * шифрование не нужно - ввести "n" и нажать "Enter"; **6) После установки нужно ввести название профиля для подключения к VPN-серверу;** **7) В следующем пункте настройки выбрать "Add a passwordless client";** В результате в текущем каталоге создаться файл с профилем подключения. Для просмотра содержимого каталога необходимо ввести "ls -l". Для создания другого профиля подключения нужно повторно вызвать скрипт openvpn-install.sh. # **Настройка OpenVPN на сервере.** **1) В файле /etc/openvpn/server.conf комментируем следующие строки:** ``` #push "dhcp-option DNS 94.140.14.14" #push "dhcp-option DNS 94.140.15.15" #push "redirect-gateway def1 bypass-dhcp" ``` **2)** Для того, чтобы VPN-клиенты "видели" друг друга, **в выше указанном файле (server.conf) добавляем** `client-to-client` **3)** После завершения редактирования конфигурационного файла server.conf, **нужно перезапустить сервис OpenVPN**: `service openvpn restart` # **Установка OpenVPN на клиенте.** **1) Выполнение команд установки** ``` apt update apt install openvpn ``` **2) Получение файла для подключения к VPN-серверу** Нужно получить файл подключения, созданный при выполнении пункта 7 раздела "Установка OpenVPN на сервере". **3) Изменение расширения файла на ".conf";** **4) В полученном файле комментируем следующие строки:** ``` #explicit-exit-notify - уведомления при отключении; #ignore-unknown-option block-outside-dns #setenv opt block-outside-dns # Prevent Windows 10 DNS leak ``` **5) Команда для подключени к VPN-серверу:** `openvpn --config kali.conf` 6) Подтверждением корректного подключения будет служить полученный ip-адрес выданный VPN-сервером (команда *"ip a"* отобразит все доступные интерфейсы) и сообщение в терминале "Initialization Sequence Completed". **Перечисленные команды нужно выполнить на двух клиентах kali.conf - на компьютере, который вне инфраструктуры insider.conf - на компьютере, который внутри инфраструктуры.** # **Настройка OpenVPN на сервере для автоматического добавления маршрута** **1)** **На сервере OpenVPN в каталоге** индивидуальных клиентских конфигураций **/etc/openvpn/ccd создать конфигурационные файлы**: **создание файла insider:** `nano insider` в файле указать: `iroute 192.168.1.0 255.255.255.0` Данная строчка для настройки NAT на клиенте insider, другой подключенный клиент будет "видеть" компьютеры сети 192.168.1.0 через компьютер "insider". **создание файла kali:** `nano kali` в файле указать `push "route 192.168.1.0 255.255.255.0 XXX.XXX.XXX.XXX"` Вместо XXX.XXX.XXX.XXX нужно указать IP-адрес VPN-клиента выданный VPN-сервером. Данная строка необходима для настройки маршрута от компьютера "kali" до сети 192.168.1.0/24 через компьютер "insider". **2)** После завершения редактирования файлов, необходимо **перезапустить VPN-сервер** и соответственно **переподключить клиентов**. Перезапуск OpenVPN-сервера: `service openvpn restart` Подключение к OpenVPN-серверу на клиентах: На компьютере insider `openvpn --config insider.conf` На компьютере kali `openvpn --config kali.conf` ###### tags: `networks`