В связи с тем, что вопрос использования частных VPN серверов ставится все чаще, поскольку все больше и больше ресурсов блокируются на территории страны без разбора, то я рекомендую следующее решение. Вы устанавливаете свой частный VPN сервер заграницей (например, на базе CentOS), а в вашем офисе или квартире вы ставите сетевое оборудование, которое маршрутизирует весь ваш трафик через этот VPN сервер. В качестве такого устройства — надежного и стабильного я рекомендую использовать роутеры MikroTik.
В этой статье я рассказываю, как настроить роутер MikroTik для маршрутизации интернет трафика через VPN на примере hAP ac lite. К сожалению, все статьи, что я читал на эту тему обзорные и не полные, в них отсутствуют некоторые необходимые шаги.
Предположим, что ваш роутер подключен к интернет через Ethernet и провайдер выдает IP динамически. Пусть наш Ethernet порт подключенный к кабеля провайдера называется в Mikrotik «ether1 wan» и он получил IP 10.54.194.83/20 и ходит он через шлюз 10.54.192.1. Создадим VPN туннель поверх этого соединения.
1. Откройте Winbox Mikrotik.
2. Добавьте новый интерфейс PPTP:
- «Interfaces» > «+» > PPTP Client
- «Name»: любое
- «Type»: PPTP Client
3. Далее выберите вкладку «Dial Out»
- «Connect to»: IP или FQDN вашего сервера
- «User»: <Имя пользователя VPN>
- «Password»: <Ваш пароль>
- «Profile»: default encryption
- «Keepalive Timeout»: 60 или оставьте пустым
- Add default route: enable
- Default route distance: 1
- «Allow»: mschap2, mschap1, chap (только если требует VPN сервер)
Нажимаем Apply и проверяем, что соединение установилось — статус connected, running.
4. Переходим на вкладку «IP» > «Route List» и проверяем в таблице наличие маршрута созданного VPN подключением.
Если ваш VPN сервер выдает IP адреса сети 172.16.0.0/16, то должна появиться строка Dst. address = 172.16.0.1 с gateway = «your_VPN_conenction reachable». Reachable здесь показывает, что само соединение работает и доступно.
Помимо этого должна появиться строка Dst. address = 0.0.0.0/0 с gateway = «your_VPN_conenction reachable» и distance = 1. Если такой строки нет, то её нужно создать, нажав + в окне Routes.
Поскольку Ethernet WAN соединение, которое является DHCP клиентом, создает свою запись в маршрутах с сетью назначения 0.0.0.0/0 и дистанцией = 1, то это будет конфликтовать с VPN туннелем. Необходимо удалить эту строку, чтобы запись с distance = 1 осталась одна. Далее, необходимо добавить статический маршрут через сеть провайдера с адресом назначения 0.0.0.0/0, но дистанцией 2 или более. Это нужно для того, чтобы в случае, когда VPN не доступен или отключен, пустить весь трафик через через шлюз провайдера.
Также проверьте, что для работы сети провайдера есть динамический или статический маршрут с дистанцией 0 и интерфейсом по умолчанию — вашим WAN портом. В нашем случае это 10.54.194.83/20, ходящий через DHCP WAN интерфейс 10.54.194.83.
В нашем примере сеть VPN это de4.vpnbook.com, VPN сеть доступна через шлюз — 172.16.36.1 с дистанцией 0. Этот маршрут добавлен автоматически VPN соединением (динамические маршруты букву D в первой колонке):
5. Осталось только добавить несколько правил файервола, которые разрешат использование PPTP.
Для этого открываем раздел IP> → Firewall → NAT и нажимаем +. Перед нами открывается страница добавления нового правила, заполняем её следующим образом:
- На закладке General:
- Chain: srcnat
- Out interface: название вашего PPTP соединения
- На закладке Action:
- Action: masquerade.
L2TP клиент настраивается аналогично, разница во 2 и 3 шаге. Также там необходимо включить IPsec и ввести ввести ключ IPsec в поле IPsec secret.