{{description>Описание способа реализации двухфакторной авторизации через OTP на Windows}}
====== Реализация 2AF через OTP на Windows ======
[[ http://wiki.mihanik.net/doku.php?id=операционные_системы:windows:удалённый_рабочий_стол:реализация_2fa_через_otp_на_windows&do=export_pdf | Экспорт в PDF ]] ~~ODT~~
Дата создания: 2026/02/10 14:30 (C) mihanik
===== Дано =====
Компьютер под управлением ОС Windows, к которому вы подключаетесь через удалённый рабочий стол.
===== Надо =====
Усилить безопасность подключения к компьютеру с использованием двухфакторной авторизации (2FA).
===== Решение =====
==== Шаг 1 ====
Для реализации 2FA через OTP на Windows нам понадобится open source продукт под названием **multiOTP** [[https://github.com/multiOTP/multiotp/wiki/]], а точнее его отдельный компонент **multiOTPCredentialProvider** [[https://github.com/multiOTP/multiOTPCredentialProvider]]
И так, открываем страницу [[https://github.com/multiOTP/multiOTPCredentialProvider]] .
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-01.png?direct&600 |}}
Проматываем немного ниже и скачиваем Microsoft Visual C + + Redistributable 2015-2022
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-02.png?direct&600 |}}
Открываем пупку с загрузками и устанавливаем Visual C++ Redistributable
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-03.png?direct&600 |}}
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-04.png?direct&600 |}}
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-05.png?direct&600 |}}
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-06.png?direct&600 |}}
==== Шаг 2 ====
Теперь переходим на страницу с [[https://download.multiotp.net/credential-provider/ | multiOTPCredentialProvider]]
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-07.png?direct&600 |}}
И скачиваем последнюю версию программного продукта
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-08.png?direct&600 |}}
Распаковываем архив
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-09.png?direct&600 |}}
Можем запускать установщик.
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-10.png?direct&600 |}}
==== Шаг 3 ====
Установку опишу просто скриншотами
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-11.png?direct&600 |}}
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-12.png?direct&600 |}}
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-13.png?direct&600 |}}
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-14.png?direct&600 |}}
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-15.png?direct&600 |}}
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-16.png?direct&600 |}}
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-17.png?direct&600 |}}
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-18.png?direct&600 |}}
==== Шаг 4 ====
Теперь нужно настроить **КАЖДОМУ** пользователю доступ по RDP с использованием 2FA.
Открываем командную строку от имени администратора.
Как это сделать можно посмотреть [[операционные_системы:windows:работа_в_командной_строке:как_открыть_окно_командной_строки_windows_от_имени_администратора|тут]]
Создаём папку, которая нам потом понадобится для хранения QR-кодов пользователей
md c:\multiotp
Переходим в папку с установленным **multiOTP**
cd "C:\Program Files\multiOTP"
Для пользователя **mihanik** задаём вход через **multiOTP**
multiotp.exe -debug -display-log -create mihanik TOTP A5FA39B90E408D3838E1 6
Здесь:
* mihanik - имя пользователя
* A5FA39B90E408D3838E1 - любой 160 битный ключ (Hexadecimal, Шестнадцатеричный ключ, 20 символов), можно создать в [[https://numbergenerator.org/random-16-digit-hex-codes-generator#!numbers=1&length=20&addfilters= | онлайн генераторе]] .
* 6 - количество символов в одноразовом пароле
И сразу же создадим пользователю qr код для добавления в аутентификатор:
multiotp.exe -qrcode mihanik "c:\multiotp\totp_mihanik.png"
Код добавляем в программу атентификатор на своём смартфоне.
Например, **Яндекс.Ключ**
==== Шаг 5 ====
Теперь пробуем подключиться к компьютеру посредством RDP.
Видим, что нас просят указать код для подключения
{{ :операционные_системы:windows:удалённый_рабочий_стол:otp-2fa-19.png?direct&600 |}}
Этот код будет показываться только при подключении по RDP
==== Шаг 6 ====
Вводим код из аутентификатора, попадаем на удалённый рабочий стол.
===== Источники =====
* https://vk.com/wall-95686747_42520
[[#top|⇑ Наверх ⇑]]