====== Mikrotik: случайный пароль для гостевой WiFi сети ====== Освоить MikroTik вы можете с помощью онлайн-курса «Настройка оборудования MikroTik». В курсе изучаются все темы из официальной программы MTCNA. Автор – официальный тренер MikroTik. Материал подходит и тем, кто уже давно работает с оборудованием MikroTik, и тем, кто еще не держал его в руках. В состав входят 162 видеоурока, 45 лабораторных работ, вопросы для самопроверки и конспект. [[https://курсы-по-ит.рф/lp-mikrotik-mtcna?utm_source=wiki-rtza&utm_medium=cpc&utm_campaign=32| Узнать подробности]] Задача: генерировать случайный пароль для гостевой WiFi сети и отправлять ее на определенный адрес почты Решение: в Mikrotik нет нормального произвольного генератора паролей, поэтому либо пользуемся сторонним сервисом https://www.random.org/passwords/ либо командой ///certificate scep-server otp// Примечания: * Необходимо настроить переменные (имя профиля сети, длину пароля, настройки для отправки пароля по почте. * Скрипт по умолчанию меняет пароль для WiFi / wpa2-pre-shared-key / отправляет письмо на указанный адрес без копии. Если нужно что-то изменить, внесите изменения в скрипт. # MikroTik Random Password for WiFi (CAPsMAN) # Define name of your WiFi (CAPsMAN) profile :local wifiprofile security-guest # Define Password Length :local passlength 8 # Define the parameters for mail notification :local destmail my@email.ru #:local ccdestmail copy@email.ru :local content "New Wi-Fi password" :local emailauthuser me@email.ru :local emailfrom me@email.ru :local emailserver smtp.mail.ru :local emailauthpass my_password # Gets a new password ##:local new ([/tool fetch url="https://www.random.org/passwords/\?num=1&len=$passlength&format=plain&rnd=new" output=user as-value]->"data") # Trim line break simbol "\n" ##:local newPassword [ :pick $new 0 [ :find $new "\n" ] ]; :local new ([/certificate scep-server otp generate minutes-valid=0 as-value]->"password"); :local newPassword [:pick $new 0 $passlength ] # Set password to wifi profile /caps-man security set [find name="security-guest"] passphrase=$newPassword #Sendind e-mail /tool e-mail send server=$emailserver to="$destmail" subject=$content body="New Password for WiFi Guest is: $newPassword" user=$emailauthuser password=$emailauthpass from="$emailfrom" # Write a log line :log warning message="Wifi password for profile $wifiprofile has ben set to: $newPassword" :put $newPassword {{tag>mikrotik random wifi capsman случайный_пароль генератор_паролей}}