Yubikey для доступа на Терминальный сервер. Руководство по настройке.

Перед нами задача: Защитить удаленный доступ на терминальный сервер при помощи ключа Yubikey. Этот ключ в дальнейшем будет использовать администратор сервера при доступе через RDP для повышения безопасности системы.

В качестве сервера мы взяли виртуальную машину Windows 2008R2, в качестве клиента у нас работает Windows 7 Professional.

Замком будет служить программа Rohos Logon Key, установленная на сервере. В качестве ключа выберем Yubikey.

На клиенте не устанавливаем ничего. Подключаем Yubikey к его USB порту.

Запускаем на клиенте программу Remote desktop connection и настраиваем доступ так, чтобы серверу были доступны носители, порты и смарт-карты, подключенные к клиенту.

Нажимаем кнопку Connect. Включается аутентификация на сетевом уровне. Здесь надо выбрать пользователя и вручную ввести пароль. Когда мы настроим Yubikey, это окно по-прежнему будет появляться, и администратору нужно будет все равно вводить свой пароль, так как это есть первый фактор безопасности в нашей двухфакторной защите.

После этого мы входим на сервер. Запускаем здесь программу Rohos Logon Key и выполняем команду Setup a Key. Если сервер успешно распознал наш Yubikey, подключенный к клиентскому компьютеру, программа пишет USB device Yubikey has been found, как на картинке ниже. Если же такого сообщения нет, следует выйти и проверить настройки программы Удаленный рабочий стол а также работоспособность Yubikey.  В этом же окне можно выбрать другого пользователя, например, если мы делаем ключ для другого администратора. Для этого выберите ссылку Select user… 

Если вы не знаете пароля другого администратора, для которого вы создаете ключ, просто не вводите его. Yubikey все равно будет связан с его учетной записью.

Если все хорошо, введите пароль и нажмите кнопку Setup Key. Появится окно ввода OTP:

Коснитесь ненадолго своего Yubikey или прикройте пальцем его окошко, в зависимости от конструкции ключа. Долгое касание — это уже другая команда! Оно производится при использовании второго слота ключа, а мы используем первый.

Программа должна сообщить вам, что ключ успешно настроен. Но это еще не все! Программа Rohos Logon Key еще не настроена запрещать пользователю входить без ключа.  В следующий раз система возьмет пароль из аутентификации сетевого уровня, а про ключ вас даже не спросит. Создастся впечатление, что мы зря настраивали Yubikey.

Для испытания ключа запретим вход без него для текущего пользователя. То есть для того, которому мы только что создали ключ. Открываем опции программы Rohos Logon Key и выбираем For listed users из третьего списка.

Но и это еще не все. Теперь сервер заперт для человека, которому мы создали ключ. Если наш ключ не заработает по какой-то причине, сервер окажется для него недоступным. На всякий случай сделайте на сервере еще одного администратора, но не создавайте для него ключ.

Теперь можно испытывать. Выходим из удаленного сеанса и запускаем его снова. На сетевом уровне следует ввести пароль в окне Windows Security.  Ok, это первый уровень защиты.

При входе на сервер появляется окно ввода OTP от программы Rohos Logon Key. Это — второй уровень. Касаемся Yubikey, и если все работает, попадаем в удаленный сеанс.

Следующий этап — настройка аварийного входа. В главном окне программы Rohos Logon Key или в окне Options выбираем команду Setup emergency logon. Выбираем 3-4 вопроса и вводим ответы на них. Не пожалейте двух минут вашего времени, потом вспомните добрым словом.

И наконец, завершающий этап: запрет на вход без ключа для всех удаленных пользователей. Открываем опции программы и выбираем For remote desktop login из третьего списка.

Ну вот и все, дорогие сисадмины. Теперь ваш сервер защищен, по крайней мере при доступе через RDP.