Показать страницуИстория страницыСсылки сюдаЭкспорт в PDFНаверх Эта страница только для чтения. Вы можете посмотреть её исходный текст, но не можете его изменить. Сообщите администратору, если считаете, что это неправильно. ====== Двухфакторная аутентификация на Windows Server 2019 ====== С момента написания прошлой заметки [[software:microsoft:2012-otp|Двухфакторная аутентификация на Windows Server 2012]] процедуру установки и настройки упростили, теперь все можно делать быстрее и проще. Открывать RDP для всего мира довольно чревато - какая-нибудь зараза вполне может подобрать пароль. С другой стороны, использовать VPN тоже далеко не всегда удобно или возможно по разным причинам. Одно из решений - двухфакторная аутентификация. Мне нравится multiOTP - это крайне мощная штука, много чего умеет - Windows, Hyper-V, VMWare, RADIUS и совместима практически со всем. <callout title="Настройки времени" type="danger"> Время на сервере и вашем устройстве (телефон, компьютер) должно совпадать, иначе ключи будут генерироваться неверно! </callout> <callout title="Внимание" type="danger"> При установке необходимо все сделать аккуратно и внимательно, в противном случае придется подключаться локально консолью или загружаться в безопасный режим! </callout> ===== Установка multiOTP ===== Примечание: продукт очень быстро допиливают, в более новых версиях процедура установки может немного различаться * Качаем и устанавливаем VisualC++ (x86 и x64) с сайта Microsoft: https://aka.ms/vs/16/release/vc_redist.x64.exe и https://aka.ms/vs/16/release/vc_redist.x86.exe * Загружаем multiOTP с сайта https://github.com/multiOTP/multiOTPCredentialProvider/releases (есть еще полная версия тут: https://download.multiotp.net/ но в нее понапихано много лишнего) * Устанавливаем, заполняем следующим образом поля настроек: * Первый экран * **multiOTP Login Title**: приветственная фраза которая будет написана на экране входа в систему * **URL of your multiOTP server(s), separated by semi-colons**: удаляем все, поле должно быть пустым * **No remote server, local multiOTP only**: - включено * **Secret shared with your multiOTP server(s)**: удаляем все, поле должно быть пустым * Второй экран * **OTP authentication mandarity for remote desktop only** - выбрано, т.к. требуется проверка только для подключений по RDP * **Enable cache support on this machine if authorized by the server(s)** - включено * Третий экран: Next -> Install На этом установка закончена. На это этапе желательно НЕ ПЕРЕЗАГРУЖАТЬ сервер, требуется добавить хотя бы одного пользователя с административными правами. Далее добавляем ВСЕХ пользователей, которым нужен доступ по RDP по описанной выше процедуре. Если пользователь присутствует в системе но не добавлен в multiOTP - он не сможет удаленно подключиться. При настройке **OTP authentication mandarity for remote desktop only** пользователи могут входит в систему локально с консоли. ===== Управление пользователями ===== При добавлении пользователя создается персональный файл настроек (в моем случае это C:\Program Files (x86)\multiOTP\users\) с расширением db, представляющий обычный текстовый файл в формате "ключ/значение". Если пользователь многократно неверно вводит пароль и ключ авторизации, то блокируется не windows-пользователь, а именно аккаунт multiOTP (параметр locked). Вручную его можно разблокировать изменив locked=1 на locked=0 ==== Добавление пользователей ==== * Создаем в системе нового пользователя (или будем использовать уже существующего) * Открываем консоль, переходим в папку с multiOTP (в моем случае это C:\Program Files (x86)\multiOTP) * Создаем секрет для этого пользователя: <code>multiotp.exe -fastcreatenopin ИМЯ_ПОЛЬЗОВАТЕЛЯ</code> * Создаем QR-файл для добавления в аутентификатор: <code>multiotp.exe -qrcode ИМЯ_ПОЛЬЗОВАТЕЛЯ QR_ИМЯ_ПОЛЬЗОВАТЕЛЯ.png</code> * Открываем аутентификатор (например Google Authenticator) и сканируем полученный QR-код ==== Отключение/блокировка пользователей и включение обратно ==== <code> multiotp -[des]activate user </code> <code> multiotp -[un]lock user </code> ==== Удаление пользователя ==== <code> multiotp -delete user </code> <code> multiotp -user-info user </code> ===== Устанавливаем аутентификатор ===== Для генерации OTP-паролей необходимо установить аутентификатор - это может быть плагин для браузера (Google Chrome: Authenticator) или отдельное приложение на Android (приложение "Google Authenticator") или iOS. Запускаем аутентикатор, создаем новый аккаунт: нажимаем "Добавить", выбраем QR-код, сканируем полученный код ===== Тестирование ===== Тестируем вход под добавленными пользователями, все должно быть Ок. <callout type="warning"> Примечание: если компьютер не в домене, указывайте имя пользователя в формате SERVER\Username </callout> ===== Удаление multiOTP ===== Отключить multiOTP можно удалением программы через Панель управления или импортировав файл реестра: https://download.multiotp.net/credential-provider/multiOTPCredentialProvider-unregister.reg Если потеряли возможность войти в систему - необходимо войти локально под пользователем (как вариант - в безопасном режиме). ===== Замена логотипа ===== Для логотипа используется файл loginLogo.bmp в папке с multiOTP (в моем случае это C:\Program Files (x86)\multiOTP) Разрешение: 128х128, формат bmp {{tag>2019 windows_server OTP multiotp two-factor_authentication двухфакторная_аутентификация двухфакторная_авторизация MultiOTP}} software/microsoft/2019-otp.txt Последнее изменение: 2021/11/14 22:21 — 127.0.0.1