Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
mikrotik:ssl:ssl [2019-02-13 09:26] GreyWolf [HotSpot] |
mikrotik:ssl:ssl [2024-02-02 22:00] (текущий) GreyWolf [Let's Encrypt RouterOS] |
||
---|---|---|---|
Строка 2: | Строка 2: | ||
Здесь описана работа с HTTPS/SSL сертификатами на устройствах MikroTik. | Здесь описана работа с HTTPS/SSL сертификатами на устройствах MikroTik. | ||
- | В приведённых примерах использованы сертификаты от [[letsencrypt:letsencrypt|Let's Encrypt]]. | + | В приведённых примерах показана работа с сертификатами от [[letsencrypt:letsencrypt|Let's Encrypt]]. |
- | FIXME | + | Для работы нужны следующие файлы: |
+ | - cert.pem | ||
+ | - chain.pem | ||
+ | - privkey.pem | ||
====== Ручной режим ====== | ====== Ручной режим ====== | ||
Строка 19: | Строка 22: | ||
</code> | </code> | ||
- Проверить ''www-ssl'' <code ini>/ip service print</code> | - Проверить ''www-ssl'' <code ini>/ip service print</code> | ||
+ | - {{anchor:hotspot}}Чтобы разрешить использовать сертификат в [[mikrotik:hotspot:hotspot|HotSpot]] нужно выполнить:<code ini> | ||
+ | /ip hotspot profile set hsprof1 login-by=https ssl-certificate=cert.pem | ||
+ | </code> | ||
+ | <WRAP round important 60%> | ||
+ | Если в журнале устройства появляется ошибка "got CRL with bad signature, issued by DST root CA X3 ::: Digital signature Trust Co. ::: " необходимо добавить сертификат IdenTrust DST корневого CA X3, загруженный [[https://www.identrust.com/certificates/trustid/root-download-x3.html|по адресу]], в хранилище сертификатов маршрутизатора. | ||
- | ====== HotSpot ====== | + | </WRAP> |
- | Для того, чтобы разрешить использовать сертификат в [[mikrotik:hotspot:hotspot|HotSpot]] нужно выполнить следующую команду: | ||
- | <code ini> | ||
- | /ip hotspot profile set hsprof1 login-by=https ssl-certificate=cert.pem | ||
- | </code> | ||
====== Let's Encrypt RouterOS ====== | ====== Let's Encrypt RouterOS ====== | ||
- | FIXME | ||
- | Использование скрипта проекта [[https://github.com/gitpel/letsencrypt-routeros|Let's Encrypt RouterOS / Mikrotik]] | + | Использование скрипта проекта [[github>gitpel/letsencrypt-routeros|Let's Encrypt RouterOS / Mikrotik]] для автоматизации процесса работы с сертификатами от [[letsencrypt:letsencrypt|Let's Encrypt]]. |
+ | ===== letsencrypt-routeros.sh ===== | ||
- | Готовый скрипт {{:mikrotik:ssl:letsencrypt-routeros.sh|}}, он отличается от оригинального следующим: | + | Авторизация на устройстве производится ключом [[ssh:ssh#KEYS|SSH]] |
- | - Добавлено копирование цепочки сертификатов ''chain.pem'' ([[https://github.com/mr-GreyWolf/letsencrypt-routeros/blob/patch-1/letsencrypt-routeros.sh|Ссылка на заплатку]] ) | + | |
- | - Добавлены команды для установки сертификата www-ssl и указание сертификата в профиле HotSpot. | + | |
- | В данном примере имя ''HotSpot'' профиля ''hsprof1'' | + | |
- | <code bash letsencrypt-routeros.sh> | + | Готовый скрипт {{letsencrypt-routeros.sh|}}, он отличается от оригинального следующим: |
+ | - Добавлено копирование цепочки сертификатов ''chain.pem'' ([[https://github.com/mr-GreyWolf/letsencrypt-routeros/blob/patch-1/letsencrypt-routeros.sh|Ссылка на заплатку]] ) | ||
+ | - Добавлены команды для установки сертификата www-ssl и указание сертификата в профиле HotSpot. В данном примере имя ''HotSpot'' профиля ''hsprof1'' <code bash letsencrypt-routeros.sh> | ||
$routeros /ip service set www-ssl certificate=$DOMAIN.pem_0 | $routeros /ip service set www-ssl certificate=$DOMAIN.pem_0 | ||
Строка 49: | Строка 53: | ||
</code> | </code> | ||
+ | <hidden Пример выполнения скрипта> | ||
+ | Пример выполнения ''./letsencrypt-routeros.sh'' | ||
+ | <code> | ||
+ | uptime: 6w6d22h11m15s | ||
+ | version: 6.44 (stable) | ||
+ | build-time: Feb/25/2019 14:11:04 | ||
+ | factory-software: 6.36.1 | ||
+ | free-memory: 202.0MiB | ||
+ | total-memory: 256.0MiB | ||
+ | cpu: MIPS 1004Kc V2.15 | ||
+ | cpu-count: 4 | ||
+ | cpu-frequency: 880MHz | ||
+ | cpu-load: 6% | ||
+ | free-hdd-space: 4848.0KiB | ||
+ | total-hdd-space: 16.3MiB | ||
+ | write-sect-since-reboot: 19348 | ||
+ | write-sect-total: 41673 | ||
+ | bad-blocks: 0% | ||
+ | architecture-name: mmips | ||
+ | board-name: hEX | ||
+ | platform: MikroTik | ||
+ | Connection to RouterOS Successful! | ||
+ | certificates-imported: 1 | ||
+ | private-keys-imported: 0 | ||
+ | files-imported: 1 | ||
+ | decryption-failures: 0 | ||
+ | keys-with-no-certificate: 0 | ||
+ | |||
+ | certificates-imported: 0 | ||
+ | private-keys-imported: 1 | ||
+ | files-imported: 1 | ||
+ | decryption-failures: 0 | ||
+ | keys-with-no-certificate: 0 | ||
+ | |||
+ | certificates-imported: 0 | ||
+ | private-keys-imported: 0 | ||
+ | files-imported: 0 | ||
+ | decryption-failures: 0 | ||
+ | keys-with-no-certificate: 0 | ||
+ | </code> | ||
+ | </hidden> | ||
+ | |||
+ | ==== letsencrypt-routeros.settings ==== | ||
+ | |||
+ | |||
+ | Путь к файлам сертификата: ''/etc/letsencrypt/live/$DOMAIN/'' | ||
+ | |||
+ | <code ini letsencrypt-routeros.settings> | ||
+ | ROUTEROS_USER=admin | ||
+ | ROUTEROS_HOST=10.0.254.254 | ||
+ | ROUTEROS_SSH_PORT=22 | ||
+ | ROUTEROS_PRIVATE_KEY=/opt/letsencrypt-routeros/id_dsa | ||
+ | DOMAIN=vpnserver.yourdomain.com | ||
+ | </code> | ||
====== Ссылки ====== | ====== Ссылки ====== |