Как настроить OpenVPN сервер на Mikrotik

openvp сервер на оборудовании mikrotik

Привет. Сегодня хочу показать вам как на Mikrotik можно поднять OpenVPN Сервер. На микротике он не совсем полноценный, но бывают ситуации когда его использовать гораздо удобнее чем другие типы VPN соединений.

В сети есть много инструкций, как поднять OpenVPN сервере на маршрутизаторе Mikrotik, генерируя ключи при помощи openssl, мы же обойдемся без этой утилиты и всю настройку будем производить исключительно средсвами микротика.

Ниже я приведу список команд, которые нужно ввести в термнале:

1) Генерируем корневой сертификат:

/certificate add name=template-CA country="" state="" locality="" organization="" unit="" common-name="templ-OVPN-CA" key-size=2048 days-valid=3650 key-usage=crl-sign,key-cert-sign/certificate sign template-CA ca-crl-host=127.0.0.1 name="OVPN-CA"

2) Создаем сертификат сервера:

/certificate add name=template-SRV country="" state="" locality="" organization="" unit="" common-name="srv-OVPN" key-size=2048 days-valid=1095 key-usage=digital-signature,key-encipherment,tls-server/certificate sign template-SRV ca="OVPN-CA" name="srv-OVPN"

3) Создаем клиентский шаблон сертификата:

/certificate add name=template-CL country="" state="" locality="" organization="" unit="" common-name="client-ovpn-template" key-size=2048 days-valid=365 key-usage=tls-client

4) Создаем сертификат для клиента:

/certificate add name=template-CL-to-issue copy-from="template-CL" common-name="client-ovpn-1"/certificate sign template-CL-to-issue ca="OVPN-CA" name="client-ovpn-1"

В этих командах common-name в первой команде, должен соответствовать name во второй команде. Т.е. для добавления следующего сертификата клиента команды должны быть, например такими:

/certificate add name=template-CL-to-issue copy-from="template-CL" common-name="client-ovpn-2"/certificate sign template-CL-to-issue ca="OVPN-CA" name="client-ovpn-2"

5) Настраиваем собственно OpenVPN:

Добавляем pool адресов для наших клиентов:

/ip pool add name=OVPN_srv_pool ranges=192.168.100.2-192.168.100.254

Создаем профиль для OpenVPN:

/ppp profile add name=OVPN_server local-address=192.168.100.1 remote-address=OVPN_srv_pool

Включаем аторизацию:

/ppp aaa set accounting=yes

Добавляем пользователя:

/ppp secret add name=test-user-1 password=P@sswOrd1 service=ovpn profile=OVPN_server

Это имя пользователя и пароль будут нужны при покдключении.

Включаем OpenVPN сервер:

/interface ovpn-server server set auth=sha1 cipher=aes256-gcm default-profile=OVPN_server mode=ip netmask=24 require-client-certificate=yes certificate=srv-OVPN enabled=yes

Здесь я использую шифрование aes256-gcm, в старых версиях router os оно не поддерживалось. Если у вас нет возможности обновить систему, используйте другой тип, не забыв позже поправить конфигурацию клиента.

6) Выполним экспорт сертификатов:

/certificate export-certificate OVPN-CA export-passphrase=""/certificate export-certificate client-ovpn-1 export-passphrase=11111111

Соответственно во второй команде имя сертификата должно соответсвовать имени клиентского сертификата. В этой команде – запомните passphrase – она будет нужна при подключении.

7) Дальше нужно скопировать с микротика экспортированные сертификаты, например через winbox — пункт меню files.

8) Последний пункт — нужно создать 2 файла на компьютере:

1 — файл конфигруации OpenVPN, для клиентов client.ovpn. Выглядеть он должен так:

client
dev tun
–cipher AES-258-GCM
–data-ciphers AES-258-GCM
proto tcp
remote 45.135.135.214 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca cert_export_OVPN-CA.crt
cert cert_export_client-ovpn-1.crt
key cert_export_client-ovpn-1.key
–auth-user-pass user-pwd.txt
remote-cert-tls server
verb 3
route-delay 5
;Это маршрут до сети за микротиком (0.0 – сеть за микротиком, 100.1 – адрес микротика в ovpn)
;route 192.168.0.0 255.255.255.0 192.168.100.1
;это если нужно будет, что бы микротик был шлюзом по умолчанию
redirect-gateway def1

Тут измените поле remote, 1.2.3.4 — измените на адрес вашего микротика.

Что бы микротик не был шлюзом по умолчанию закомментируйте последнюю строчку и раскомментируйте предпоследнюю (;route 192.168.0.0 255.255.255.0 192.168.100.1) — за местро 192.168.0.0 впишите нужную вам сеть.

И второй файл – с логином и паролем user-pwd.txt:

test-user-1
P@sswOrd1

Вот и все, поместите скачанные сертфикаты и созданные файлы в одну папку. Теперь с помощью файла client.ovpn можно подключиться.

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

certificate issued-revoke имя сертификата

Друзья помогите этому контенту стать доступнее в социальных сетях.

Не проходи мимо жмакни по кнопке возможно кому то еще он будет полезен!

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *