OpenVPN — надёжное и гибкое решение для построения защищённых сетей. В этой статье мы пошагово настроим VPN-туннель между двумя маршрутизаторами MikroTik: один выступит в роли сервера, второй — клиента. Будем использовать сертификаты, шифрование AES-256 и протокол UDP.
1. Подготовка сертификатов (на сервере)
Все сертификаты создаются на серверном роутере. Нам понадобятся: корневой центр сертификации (CA), сертификат для сервера и сертификат для клиента.
# Создаём корневой CA
/certificate add name=ca country="RU" state="00" locality="MSK" organization="BITS LLC" unit="IT" common-name="ca" key-size=2048 days-valid=3650 key-usage=crl-sign,key-cert-sign
sign ca ca-crl-host=127.0.0.1
# Сертификат для OpenVPN-сервера
/certificate add name=ovpn-server country="RU" state="00" locality="MSK" organization="BITS LLC" unit="IT" common-name="ovpn-server" key-size=2048 days-valid=3650 key-usage=digital-signature,key-encipherment,tls-server
sign ovpn-server ca="ca"
# Сертификат для клиентского MikroTik
/certificate add name=mikrotik country="RU" state="00" locality="MSK" organization="BITS LLC" unit="IT" common-name="mikrotik" key-size=2048 days-valid=3650 key-usage=tls-client
sign mikrotik ca="ca"
# Экспортируем клиентский сертификат (с паролем 12345678)
/certificate export-certificate mikrotik type=pkcs12 export-passphrase=12345678
После выполнения последней команды на сервере появится файл mikrotik.p12. Его нужно скачать и перенести на клиентский роутер (например, через WinBox или FTP).
2. Настройка OpenVPN-сервера
2.1. Создаём профиль и учётную запись
# Профиль PPP: выдаём локальный и удалённый адреса
/ppp profile add local-address=10.0.99.10 name=ovpn remote-address=10.0.99.20
# Включаем учёт (опционально)
/ppp aaa set accounting=yes
# Учётная запись клиента
/ppp secret add name=ovpn password=123 profile=ovpn service=ovpn
2.2. Включаем сервер OpenVPN
/interface ovpn-server server set auth=sha1 certificate=ovpn-server cipher=aes256 default-profile=ovpn enabled=yes require-client-certificate=yes
Важно! По умолчанию сервер использует TCP и порт 1194. Для повышения производительности сменим протокол на UDP и порт на 1145:
/interface ovpn-server server set protocol=udp port=1145
2.3. Разрешаем входящий трафик в firewall
/ip firewall filter add action=accept chain=input dst-port=1145 protocol=udp
3. Настройка OpenVPN-клиента
На клиентском роутере необходимо импортировать полученный сертификат и создать интерфейс OVPN-клиента.
3.1. Импорт сертификата
Загружаем файл mikrotik.p12 на клиентский маршрутизатор (например, через WinBox в раздел Files). Затем выполняем:
/certificate import file-name=mikrotik.p12 passphrase=12345678
Система сама присвоит импортированному сертификату имя (обычно mikrotik.p12_0).
3.2. Создаём OVPN-клиент
/interface ovpn-client add certificate=mikrotik.p12_0 cipher=aes256 connect-to=<IP-адрес-сервера> name=ovpn-out password=123 user=ovpn
Замените <IP-адрес-сервера> на реальный внешний IP серверного роутера. Если сервер находится за NAT, потребуется проброс порта 1145/UDP.
3.3. (Опционально) Добавляем маршруты
Если нужно направлять трафик через туннель, пропишите маршруты:
/ip route add dst-address=192.168.0.0/16 gateway=ovpn-out
4. Проверка работоспособности
На клиенте проверьте, что интерфейс ovpn-out получил статус running:
/interface ovpn-client print
Проверьте выдачу IP-адресов и выполните ping с клиента на сервер:
/ping 10.0.99.10
Если пинг проходит — туннель работает.
Заключение
Мы настроили защищённый OpenVPN-туннель между двумя MikroTik с использованием сертификатов. Вся конфигурация компактна и надёжна. При необходимости вы можете адаптировать параметры (шифрование, порт, пул адресов) под свои нужды. Не забудьте сохранить конфигурацию и обеспечить безопасное хранение закрытых ключей.
Комментарии