# Организация OpenVPN L3 тоннеля вовнутрь инфраструктуры ## Подготовка и настройка устройств ### 1. Инфраструктура ![](https://hackmd.io/_uploads/Sy0LiUOVh.png) ### 2. Проверяем, что есть мост на Debian ![](https://hackmd.io/_uploads/HyaQiI_Nn.png) ### 3. Проверяем, чтобы присутствовал интернет ![](https://hackmd.io/_uploads/BJz128dVh.png) ### 4. На Kali-linux, которая будет служить OpenVPN сервером, проверяем настройки ![](https://hackmd.io/_uploads/H15phUO42.png) ### 5. Редактируем resolv.conf, чтобы настроить сервер (для апдейта) ![](https://hackmd.io/_uploads/rJbmA8dE3.png) ## Реализация тоннеля ### 1. Устанавливаем angristan/openvpn на Kali-linux ![](https://hackmd.io/_uploads/r1ooxv_E2.png) ### 2. Настраиваем openvpn-install.sh (Выбираем адрес интерфейса и адрес, который будет пробрасываться в конфиг для клиента) ![](https://hackmd.io/_uploads/SJSnWP_Vn.png) ![](https://hackmd.io/_uploads/B1WSMv_Vn.png) Проверим, что openvpn работает ![](https://hackmd.io/_uploads/BkFtMwuVn.png) ### 3. Проверяем и настраиваем config, отвечающий за установку соединения 1. Server.conf Нужно закомментировать строки, которые пушат DNS и дефолтный роутер (чтобы весь трафик шел через openvpn) ![](https://hackmd.io/_uploads/Skcn7P_43.png) 2. client.ovpn ![](https://hackmd.io/_uploads/rk9xBw_Nh.png) ### 4. Настраиваем Kali-OpenVPN-client ![](https://hackmd.io/_uploads/SkSUwPOEh.png) ![](https://hackmd.io/_uploads/SyUUOvuNn.png) ### 5. Разворачиваем openvpn ![](https://hackmd.io/_uploads/S1sPFvONn.png) ### 6. Забираем файлик client.ovpn с Kali и перекидываем в свою директорию ![](https://hackmd.io/_uploads/H1Et9v_Eh.png) ### 7. Запускаем подключение openVPN ![](https://hackmd.io/_uploads/rkagsvO42.png) ### 8. Добавляем маршрут до сети и пингуем 10.8.0.2, также анализируем трафик на интерфейсе tun0 клиента, используя tcpdump ![](https://hackmd.io/_uploads/SJPBzuOE2.png) ![](https://hackmd.io/_uploads/B1V3MzK4n.png) ### 9. Прописываем собственный "внутренний-впн" маршрут, который будет перенаправлять трафик Создаем файлик client внутри ccd и там прописываем маршрут до внутренней сети ![](https://hackmd.io/_uploads/HywYEud43.png) После этого добовляем маршрут до этой сети, и только теперь мы сможем с сервера пинговать сеть, которая находится за клиентом ![](https://hackmd.io/_uploads/BJGGrfFVh.png) ### 10. Разрешаем роутинг Тут раскомментировали не то ![](https://hackmd.io/_uploads/Hy0UBMFEh.png) Нужно вот это ![](https://hackmd.io/_uploads/r18jjMY43.png) ### 11. Создаем систему, которая начинает трафик с ens3 интерфейса (для этого настраиваем механизм NAT, позволяющий преобразовывать IP-адреса транзитных пакетов) ![](https://hackmd.io/_uploads/SJFcLfKEh.png) ### 12. Получаем результат Пингуем Lan фаейрвола ![](https://hackmd.io/_uploads/HyOQ3MKV3.png) ![](https://hackmd.io/_uploads/H17KhfY42.png) Подцепляемся к файерволу с Kali-server под ip-адресом Kali-client ![](https://hackmd.io/_uploads/B1S9pftV2.png) ![](https://hackmd.io/_uploads/r1FaazKNn.png)