VPN Ubuntu MikroTik: Полное руководство по PPTP туннелю

  • Главная
  • Linux
  • VPN Ubuntu MikroTik: Полное руководство по PPTP туннелю
ДатаФев 25, 2026

Введение

В этом руководстве мы подробно разберем, как настроить VPN Ubuntu MikroTik соединение с использованием PPTP протокола. Вы узнаете, как поднять безопасный туннель между Ubuntu клиентом и сервером MikroTik, настроить автоматический запуск при загрузке системы и решить распространенные проблемы подключения.

Почему PPTP? Несмотря на существование более современных протоколов (WireGuard, OpenVPN), PPTP остается востребованным благодаря:

  • Простоте настройки
  • Встроенной поддержке в большинстве ОС
  • Минимальным требованиям к ресурсам
  • Совместимости со старым оборудованием

⚠️ Важно: PPTP считается устаревшим протоколом. Для критически важных данных рекомендуем использовать L2TP/IPsec или WireGuard.

Подготовка и IP-адреса

Перед началом настройки определимся с сетевой схемой. Вот примерные IP-адреса, которые мы будем использовать:

Компонент IP-адрес Назначение
MikroTik (WAN) Публичный IP Внешний адрес сервера
MikroTik (PPTP) 10.41.0.1 Адрес туннеля на сервере
Ubuntu Client 10.41.0.5 Адрес туннеля на клиенте
Локальная сеть 10.40.0.0/24 Сеть за MikroTik
VPN пул 10.41.0.10-100 Адреса для клиентов

Требования к системе

  • MikroTik RouterOS v6 или v7
  • Ubuntu 20.04/22.04 LTS
  • Доступ к терминалу обоих устройств
  • Открытые порты на фаерволе (1723/tcp, GRE)

Настройка сервера MikroTik

Подключитесь к MikroTik через WinBox или терминал и выполните следующие команды:

1. Создание пула адресов


/ip pool add name=pptp-pool ranges=10.41.0.10-10.41.0.100

2. Настройка PPP профиля


/ppp profile add name=pptp-profile local-address=10.41.0.1 remote-address=pptp-pool use-encryption=yes

3. Создание пользователя VPN


/ppp secret add name=vpnuser password=strongpassword profile=pptp-profile service=pptp

4. Включение PPTP сервера


/interface pptp-server server set enabled=yes

5. Настройка Firewall


/ip firewall filter add chain=input protocol=tcp dst-port=1723 action=accept comment="Allow PPTP TCP"
/ip firewall filter add chain=input protocol=gre action=accept comment="Allow PPTP GRE"

6. Настройка NAT (для доступа в интернет)


/ip firewall nat add chain=srcnat src-address=10.41.0.0/24 action=masquerade comment="NAT for PPTP"

7. Добавление маршрута к клиенту


/ip route add dst-address=10.40.0.0/24 gateway=pptp-out1

Настройка клиента Ubuntu

1. Установка необходимых пакетов


sudo apt update
sudo apt install pptp-linux ppp -y

2. Создание конфигурации подключения


sudo nano /etc/ppp/peers/mikrotik-pptp

Добавьте следующее содержимое (замените IP на ваш):


pty "pptp 46.229.97.57 --nolaunchpppd"
name vpnuser
password strongpassword
noauth
require-mppe-128
require-mschap-v2
refuse-eap
refuse-chap
refuse-mschap
noipdefault
defaultroute
lock
nobsdcomp
novj
novjccomp
lcp-echo-interval 30
lcp-echo-failure 4

3. Настройка файла секретов


sudo nano /etc/ppp/chap-secrets

Добавьте строку:


vpnuser * strongpassword *

4. Установка правильных прав


sudo chmod 600 /etc/ppp/chap-secrets
sudo chmod 600 /etc/ppp/peers/mikrotik-pptp

5. Тестовое подключение


sudo pppd call mikrotik-pptp debug nodetach

При успешном подключении вы увидите:


CHAP authentication succeeded
MPPE 128-bit stateless compression enabled
local IP address 10.41.0.5
remote IP address 10.41.0.1

Проблемы и решения

В процессе настройки VPN Ubuntu MikroTik мы столкнулись с несколькими проблемами. Вот их решения:

Проблема 1: Опечатка в имени файла


pppd: Can't open options file /etc/ppp/peers/miktotik-pptp: No such file or directory

Решение: Исправить название файла с miktotik-pptp на mikrotik-pptp

Проблема 2: Конфликт аутентификации


LCP: timeout sending Config-Requests

Решение: Настроить MS-CHAPv2 на обоих концах туннеля

Проблема 3: Файл secrets не читается


peer refused to authenticate

Решение: Установить правильные права на файл:


sudo chmod 600 /etc/ppp/chap-secrets

Проблема 4: 🔑 Критическая ошибка noauth


The remote system is required to authenticate itself but I couldn't find any suitable secret

Решение: Добавить опцию noauth в конфиг подключения. Это разрешает клиенту аутентифицироваться у сервера, не требуя ответной аутентификации.

Проблема 5: Неверный путь к pppd


/us/bin/pppd: No such file or directory

Решение: Исправить путь на /usr/sbin/pppd (проверить через which pppd)

Проблема 6: Нет обратного маршрута

Пинг с Ubuntu идет, но обратно — нет.

Решение: Добавить маршрут на клиенте:


sudo ip route add 10.40.0.0/24 via 10.41.0.1 dev ppp0

Автоматизация запуска

Способ 1: rc.local (Рекомендуется)


sudo nano /etc/rc.local

Добавьте содержимое:


#!/bin/bash
sleep 30
/usr/sbin/pppd call mikrotik-pptp &
exit 0

Сделайте файл исполняемым:


sudo chmod +x /etc/rc.local
sudo systemctl enable rc-local

Способ 2: Cron (Альтернатива)


sudo crontab -e

Добавьте строку:


@reboot sleep 60 && /usr/sbin/pppd call mikrotik-pptp

Способ 3: Скрипт маршрутов (ip-up)

Для автоматического добавления маршрутов создайте скрипт:


sudo nano /etc/ppp/ip-up.d/99-add-vpn-route

Содержимое:


#!/bin/bash
ip route add 10.40.0.0/24 via 10.41.0.1 dev $1 2>/dev/null

Сделайте исполняемым:


sudo chmod +x /etc/ppp/ip-up.d/99-add-vpn-route

Проверка после перезагрузки

После настройки автозапуска перезагрузите сервер и выполните проверку:

1. Проверка процесса


ps aux | grep pppd

2. Проверка интерфейса


ip addr show ppp0

Ожидаемый результат:


4: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP>
inet 10.41.0.5 peer 10.41.0.1/32 scope global ppp0

3. Проверка маршрутов


ip route show | grep ppp0

4. Проверка связи


ping 10.41.0.1
ping 10.40.0.1

5. Проверка с вашего компьютера


ping 10.40.5.100
ssh silver@10.40.5.100

FAQ

❓ Почему не работает автозапуск VPN?

Проверьте:

  • Правильность пути к pppd (which pppd)
  • Права на файл rc.local (chmod +x)
  • Статус службы (systemctl status rc-local)
  • Логи (journalctl -u rc-local)

❓ Как изменить IP-адреса в настройках?

Отредактируйте файлы:

  • /etc/ppp/peers/mikrotik-pptp — не требуется (IP берется от сервера)
  • MikroTik: /ip pool и /ppp profile
  • Маршруты: /etc/ppp/ip-up.d/99-add-vpn-route

❓ Можно ли использовать L2TP вместо PPTP?

Да, L2TP/IPsec безопаснее. Настройка сложнее, но рекомендуется для продакшена. Требуется установка пакетов network-manager-l2tp и настройка IPsec.

❓ Как отключить VPN?


sudo pkill -9 pppd
sudo pkill -9 pptp

❓ Почему пинг идет только в одну сторону?

Добавьте обратный маршрут на Ubuntu:


sudo ip route add 10.40.0.0/24 via 10.41.0.1 dev ppp0

И проверьте фаервол на MikroTik (разрешите forward между pptp и LAN).

❓ Как посмотреть логи подключения?


sudo grep ppp /var/log/syslog | tail -n 50
sudo journalctl -u ppp --no-pager -n 30

❓ Безопасно ли использовать PPTP?

PPTP считается устаревшим. Для важных данных используйте:

  • WireGuard (современный, быстрый)
  • L2TP/IPsec (хорошая совместимость)
  • OpenVPN (проверенный временем)

✅ Заключение

Теперь у вас есть полностью настроенное VPN Ubuntu MikroTik соединение с автоматическим запуском при загрузке системы. Туннель работает стабильно, маршрутизация настроена корректно, и вы можете безопасно подключаться к серверу из любой точки сети.

Полезные команды для будущего:


# Статус VPN
ps aux | grep pppd

# Перезапуск VPN
sudo pkill -9 pppd && sudo pppd call mikrotik-pptp &

# Логи
sudo grep ppp /var/log/syslog | tail -n 50

# Отключить VPN
sudo pkill -9 pppd

Добавить комментарий

Get started today

With Phox Shared Hosting you get all the features, tools

© 2016-2023 Phox inc. all rights reserved.