Инструменты пользователя

Инструменты сайта


mikrotik:rb3011uias:routeros:system:scripts:exp_cert_check

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
mikrotik:rb3011uias:routeros:system:scripts:exp_cert_check [2020/10/11 18:23]
Николай Солошин создано
mikrotik:rb3011uias:routeros:system:scripts:exp_cert_check [2022/02/12 11:40] (текущий)
Строка 1: Строка 1:
 ====== Проверка истечения срока действия сертификата на MikroTik ====== ====== Проверка истечения срока действия сертификата на MikroTik ======
  
 +Этот скрипт заточен для проверки сертификата HotSpot'а, но может быть легко адаптирован для других нужд.
 ===== Комментарии к коду ===== ===== Комментарии к коду =====
  
-# Functions used in the scriptThey are entered by the script "variable-initialization" when the device starts!+Инициализируем [[mikrotik:rb3011uias:routeros:system:scripts:variables_initialization|функцию отправки SMS и Email]].
  
 <code>:global sendEvent;</code> <code>:global sendEvent;</code>
  
-# Local variables+Эта переменная отвечает, как понятно из названия, за сколько дней до истечения срока сертификата начинать трубить.
  
 <code>:local attentionDays 3;</code> <code>:local attentionDays 3;</code>
  
-# Local variables used in the script+Объявляем прочие локальные переменные.
  
 <code>:local certDNSName; <code>:local certDNSName;
 :local expAfter;</code> :local expAfter;</code>
 +
 +Выясняем какой сертификат будем проверять и дату, после которой он будет недействителен. Если какая-то ошибка, пишем в системный лог.
  
 <code>:do { <code>:do {
Строка 26: Строка 28:
     :error "$errMsg";     :error "$errMsg";
   }</code>   }</code>
 +
 +Составляем мессаджи на будущее.
  
 <code>:local txtErrMsg "Certificate for \"$certDNSName\" expired!"; <code>:local txtErrMsg "Certificate for \"$certDNSName\" expired!";
 :local txtMsg "Less than $expAfter is left before the certificate for \"$certDNSName\" expires!";</code> :local txtMsg "Less than $expAfter is left before the certificate for \"$certDNSName\" expires!";</code>
  
-+Тело скрипта. Собственно, тут все просто и понятно. ;-)
-# Script body +
-#+
  
 <code>:if ( [:typeof $expAfter] = "nil" ) do={ <code>:if ( [:typeof $expAfter] = "nil" ) do={
Строка 55: Строка 57:
 ===== Код для импорта ===== ===== Код для импорта =====
  
-<file rsc exp-cert-check.rsc>add comment="\CF\F0\EE\E2\E5\F0\EA\E0 \E8\F1\F2\E5\F7\E5\ED\E8\FF \F1\F0\EE\EA\+<file rsc exp-cert-check.rsc>/system script 
 +add comment="\CF\F0\EE\E2\E5\F0\EA\E0 \E8\F1\F2\E5\F7\E5\ED\E8\FF \F1\F0\EE\EA\
     \E0 \E4\E5\E9\F1\F2\E2\E8\FF \F1\E5\F0\F2\E8\F4\E8\EA\E0\F2\E0 HotSpot" \     \E0 \E4\E5\E9\F1\F2\E2\E8\FF \F1\E5\F0\F2\E8\F4\E8\EA\E0\F2\E0 HotSpot" \
     dont-require-permissions=no name=exp-cert-check owner=petya policy=\     dont-require-permissions=no name=exp-cert-check owner=petya policy=\
Строка 116: Строка 119:
  
 Скрипт должен выполняться периодически. Параметры запуска смотрите в соответствующем [[mikrotik:rb3011uias:routeros:system:scheduler|разделе]]. Скрипт должен выполняться периодически. Параметры запуска смотрите в соответствующем [[mikrotik:rb3011uias:routeros:system:scheduler|разделе]].
 +
 +==== Пример ответных SMS ====
 +<code>Суббота 09:23
 +
 +Less than 3d10:52:56 is left before the certificate for "hotspot.site.ru" expires!
 +
 +Воскресенье 09:23
 +
 +Less than 2d10:52:56 is left before the certificate for "hotspot.site.ru" expires!
 +
 +Позавчера 09:23
 +
 +Less than 1d10:52:56 is left before the certificate for "hotspot.site.ru" expires!
 +
 +Вчера 09:23
 +
 +Less than 10:52:56 is left before the certificate for "hotspot.site.ru" expires!
 +
 +Сегодня 09:23
 +
 +Certificate for "hotspot.site.ru" expired!</code>
  
 ==== Политики запуска ==== ==== Политики запуска ====
Последнее изменение: 2022/02/12 11:40 (внешнее изменение)