openvpn_настройка





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

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

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

1
2
/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) Создаем сертификат сервера:

1
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) Создаем клиентский шаблон сертификата:

1
/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) Создаем сертификат для клиента:

1
2
/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 во второй команде. Т.е. для добавления следующего сертификата клиента команды должны быть, например такими:

1
2
/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 адресов для наших клиентов:

1
/ip pool add name=OVPN_srv_pool ranges=192.168.100.2-192.168.100.254
Создаем профиль для OpenVPN:

1
/ppp profile add name=OVPN_server local-address=192.168.100.1 remote-address=OVPN_srv_pool
Включаем аторизацию:

1
/ppp aaa set accounting=yes
Добавляем пользователя:

1
/ppp secret add name=test-user-1 password=P@ssword1 service=ovpn profile=OVPN_server
Это имя пользователя и пароль будут нужны при покдключении.

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

1
/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) Выполним экспорт сертификатов:

1
2
/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 можно подключиться.

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

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




Тик как клиент

Настройка OpenVPN клиента на роутере Mikrotik
Настройка OpenVPN клиента на роутере Mikrotik

1)    Необходимо добавить сертификаты (клиентские сертификат и ключ (client.crt, client.key и по желанию корневой (ca.crt)) на роутер:

Процесс создания сертификатов был рассмотрен в статье о настройке OpenVPN сервера на Mikrotik

Внимание!!! Не передавайте никому закрытый ключ сертификата – “ca.key”, имея его можно создавать сертификаты подписанные данным ключом.

2)    Заходим на Mikrotik посредством утилиты winbox, переходим в раздел Files и копируем туда наши сертификаты: client.crt, client.key и ca.crt(опционально)



3)    После этого произведём импорт сертификатов, идём в раздел System – Certificates, выбираем поочередно сертификаты из списка (client.crt->client.key(-> ca.crt)) и жмём кнопку Import



4)    Получится следующая картина:



5)    Само соединение OpenVPN настраивается в меню PPP->Нажимаем кнопку «+» -> в выпадающем списке выбираем OVPN Client



6)    На вкладке Dial Out указываем адрес сервера, логин/пароль, порт, клиентский сертификат и тип шифрования



7)    После этого открываем терминал и проверяем, поднялось ли соединение:



 

Готово!