Вы здесь

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


Как настроить OpenVPN сервер на 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=4096 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=4096 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=4096 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=blowfish128 default-profile=OVPN_server mode=ip netmask=24 require-client-certificate=yes certificate=srv-OVPN enabled=yes

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 tap
proto tcp
remote 1.2.3.4 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@ssw0rd1

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

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

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

 

 

0 0

Поделитесь статьей с друзьями в соц. сетях, возможно, она будет им полезна.


Если вам помогла статья, вы можете >>отблагодарить автора<<


Комментарии

Приветствую! Вы включаете ovpn-сервер с параметром mode=ip, а в файле конфигурации OpenVPN задаете dev tap, что соответствует значению mode=ethernet в свойствах сервера.Длина ключа в 4096 это уже перебор, 2048, если не 1024 для генерации на самом микротике было бы в самый раз, мой не самый слабый hAP ac не выдержал и ругнулся при подписи корневого сертификата, хоть и подписал в итоге. Однако при этом cipher вы задаете всего blowfish128, не включая поддержку aes ни в сервере, ни в настройках клиента.Время жизни сертификатов у вас везде разный - 10, 3 и 1 год соответственно, через год неожиданно клиент не сможет подключить, придется вспоминать и ломать голову, что же произошло.Спасибо за мануал, по нему впервые занялся настройкой ovpn, генерация и экспорт клиентских сертификатов средствами микротика "не отходя от кассы" привлекает, конечно.Не претендую на полную правоту, но мануал нужно все же допилить, чтобы меньше спотыкаться при знакомстве с OVPN.

13 0

с данными настройками роутер RB3011UiAS работает на ура, хотя длинну ключа можно и снизить при копирование мелких файлов замечен не большой провал в скорости

0 0

Оставить комментарий