Настройка двухфакторной аутентификации в ОС ROSA Desktop
Настройка двухфакторной аутентификации в ОС РОСА Desktop Fresh R9
Содержание
- 1 Применимость
- 1.1 Назначение
- 1.2 Зачем использовать двухфакторную (многофакторную) аутентификацию и для чего она вообще нужна?
- 1.3 Что Вам потребуется для настройки.
- 1.4 Ограничения, о которых нужно знать.
- 1.5 Что Вы получите в итоге.
- 1.6 Список поддерживаемых ОС семейства РОСА.
- 1.7 Принцип настройки и работы 2FA в ОС ROSA Desktop Fresh R9.
- 1.8 Программы для смартфона, которые поддерживают работу 2FA.
- 2 Настройка операционной системы для работы двухфакторной аутентификации
- 3 Настройка DNS
- 4 Включение доверительных отношений
- 5 Настройка рабочей станции
Применимость
Назначение
Инструкция предназначена для описания процесса настройки двухфакторной аутентификации (2FA) в ОС ROSA Desktop Fresh R9.
Зачем использовать двухфакторную (многофакторную) аутентификацию и для чего она вообще нужна?
Двухфакторная (многофакторная) аутентификация нужна для усиления безопасности при попытке входа в операционную систему и во всех остальных случаях, требующих подтверждения подлинности пользователя. Таким образом, она существенно повышает безопасность вообще всякий раз, когда требуется ввести пароль.
Пароль требуется при необходимости:
- осуществить штатный вход в графическую оболочку;
- разблокировать компьютер (ноутбук) при работающем хранителе экрана;
- осуществить повторный вход (скажем, требуется войти в систему параллельно еще раз);
- осуществить удаленное подключение к операционной системе (например по протоколу SSH);
- осуществить вход в текстовый терминал GETTY (ALT+F2...F6);
- переключить контекст пользователя - если нужно использовать su, sudo или выполнить действия от имени другого пользователя или администратора root.
А теперь представьте:
- Вы подозреваете, что кому-то возможно стал известен Ваш текущий пароль, а поменять его сразу нет возможности;
- Ваш текущий пароль кто-то может подсмотреть во время ввода, к примеру незаметно встав у Вас за спиной;
- Вы подключаетесь к своему компьютеру по SSH из интернет-кафе или используя чужой компьютер. Можно предположить, что когда Вы набираете на чужом компьютере символы Вашего имени и пароля - информация может быть перехвачена и использована злоумышленником;
- Вы опасаетесь, что ваш пароль слишком слабый или очевидный. И может быть легко подобран в уме злобными железными дядьками и тётьками из Мегатрона.
Во всех перечисленных случаях хорошей мерой противодействия может быть использование двухфакторной аутентификации. И в этом Вам поможет это руководство. Дочитав его до конца, Вы научитесь настраивать еще один барьер безопасности в своей системе. И Вам останется лишь криво ухмыляться (ну или адски гоготать), глядя на работу интернет-бота, тщетно пытающегося подобрать пароли к Вашей системе.
Двухфакторная (многофакторная) аутентификация основана на принципе, гласящем, что для подтверждения подлинности пользователя необходимо сочетание нескольких факторов:
- Пользователь знает что-то, чего не знает никто (например, свой пароль);
- Пользователь имеет что-то, чего не имеет никто (это может быть, например, одноразовый пароль или токен, содержащий ключ, и т.п.);
- Пользователь неотъемлемо обладает чем-то (как субъект материального мира), чем кроме него, не обладает никто (например отпечатком пальца или уникальной радужкой оболочки глаза, и т.п.). В последнем случае, речь, как правило, идет о применении биометрической аутентификации.
Для ОС ROSA Desktop Fresh R9 мы предлагаем использовать двухфакторную аутентификацию с использованием одноразовых TOTP паролей, которые актуальны всего 30 секунд. Такая настройка рекомендуется нами как наиболее приемлемая и удобная для пользователя. Для ее применения, в целом, не нужно производить никаких особенно сложных настроек и не требуется применять никаких редких программ или использовать дорогостоящее оборудование. И 2FA можно будет использовать после правильной настройки даже без подключения к сети Internet.
Что Вам потребуется для настройки.
- Вам понадобится установить на компьютер из нашего репозитория программу google-authenticator.
- Вам понадобится смартфон (Windows Mobile©, Android© или Apple© iOS©, без разницы), который превратится в ваш токен с ключом и станет генератором одноразовых паролей;
- Время на телефоне и на компьютере должно будет совпадать, это ключевое. Допустимо только незначительное отклонение времени между устройствами;
- Для синхронизации времени лучше всего использовать серверы точного времени.
- Например, Вы можете использовать наши публичные и общедоступные серверы времени: ntp.rosalinux.ru и ntp2.rosalinux.ru или любые другие по Вашему желанию.
- Шапочка из фольги (шутка).
Ограничения, о которых нужно знать.
- Если Вы утратите телефон или там сядет батарейка, то Вы не сможете без своего работающего телефона зайти в ОС штатным способом;
- Если у Вас будет отличаться время на компьютере и на телефоне, то Вы тоже не сможете зайти в ОС штатным способом;
- Помните, что с ростом безопасности снижается удобство использования. Вам теперь постоянно придется иметь под рукой работающий телефон и вводить два пароля вместо одного;
Что Вы получите в итоге.
- Существенно вырастет безопасность. Теперь можно не опасаться, что Вы случайно или специально скомпрометируете пароль пользователя или даже администратора (root);
- Вам не потребуется покупать дорогостоящее оборудование или программное обеспечение, чтобы повысить безопасность. Вы сможете сделать это себе бесплатно после несложной настройки (или соседу за тысячу рублей);
- Вы будете знать, что Ваша система повышения безопасности - только Ваша, и ничья еще, никакие сторонние сервисы не используются;
- Вы будете на практике использовать современные технологии информационной безопасности в повседневной жизни;
- Кто-то может перенять Ваш опыт, и начать использовать 2FA и тоже повысит безопасность своей системы;
- Вы теперь сможете повысить свою самооценку перед родными, друзьями и знакомыми :)))
Список поддерживаемых ОС семейства РОСА.
В настоящее время поддерживаются следующие ОС (не ниже):
- ROSA Desktop Fresh R9 GNOME;
- ROSA Desktop Fresh R9 KDE (обязательно изменить менеджер входа с KDM на LightDM);
- ROSA Desktop Fresh R9 PLASMA (обязательно изменить менеджер входа с SDDM на LightDM);
- Любая ОС РОСА (Fresh/RED) платформы 2014.1 или 2016.1 с менеджером входа GDM либо LightDM.
Принцип настройки и работы 2FA в ОС ROSA Desktop Fresh R9.
Работа 2FA в ОС РОСА базируется на следующих принципах:
- требуется установить программу google-authenticator;
- будет использоваться односторонний алгоритм аутентификации по одноразовым паролям на основе времени TOTP (Time-based One Time Password Algorithm, RFC 6238);
- на компьютере при установке и первичной настройке для каждого пользователя генерируется 80-битный секретный ключ. Он отображается с помощью QR кода (по-умолчанию) или отображается как 16-ти (по-умолчанию), 26-ти или 32-ух значный код в кодировке Base32.;
- QR код фотографируется прямо с экрана компьютера приложением телефона (или в телефонное приложение вручную вводится образованный на компьютере цифровой 16-ти значный код);
- приложение на телефоне создает HMAC-SHA1 используя этот секретный QR код (16-ти значный код) в качестве основы (ключа) для расчетов;
- затем часть HMAC извлекается и преобразуется в шестизначный (по-умолчанию) одноразовый пароль, отображаемый на экране телефона;
- одноразовый пароль действует 30 секунд (по-умолчанию).
Программы для смартфона, которые поддерживают работу 2FA.
Ниже приведен список бесплатных программ (на момент написания статьи) для генерации одноразовых паролей. Мы постарались охватить в этом руководстве весь спектр современных смартфонов, по крайней мере, абсолютное большинство. Помимо бесплатных приложений, есть еще и платные. Но в данном руководстве мы их описывать не будем. Мы в руководстве охватили только самые популярные приложения для телефона. Нет нужды описывать их все.
Для смартфона/планшета с системой Android©
- установите программу FreeOTP Authenticator;
- установите программу Google Authenticator;
Для смартфона/планшета компании Apple© с системой iOS©
- установите программу FreeOTP Authenticator;
- установите программу Google Authenticator;
Для смартфона с системой Microsoft© Windows Mobile© или планшета Microsoft© Surface©
- установите программу Microsoft Authenticator.
Настройка операционной системы для работы двухфакторной аутентификации
Сперва установите google-authenticator:
urpmi google-authenticator"
Полный же список пакетов, включШаблон:---- Шаблон:---
Инсталляция
В SoftwareCenter найдите пакет «настройка двухфакторной аутентификации в ос rosa desktop», и установите его.
- Через консоль
- в консоли наберите следующую команду:
urpmi настройка двухфакторной аутентификации в ос rosa desktop
Если не можете найти пакет, подключите репозитории. Как подключать репозитории написано здесь.ая сам изначальный сервер IPA и DNS устанавливается командой:
yum install -y "*ipa-server" "*ipa-server-trust-ad" bind bind-dyndb-ldap
Заново получим билет для пользователя admin, т. к. в него будет добавлена новая информация, касающаяся возможности установки доверительных отношении с доменом AD. Затем настроим сервер IPA для установки доверительных отношений
kinit admin ipa-adtrust-install --netbios-name=IPA -a mypassword1
Далее рекомендуется настроить синхронизацию времени между контроллерами домена AD и IPA.
Настройка DNS
Необходимо добавить данные о DNS зоне IPA сервера в домен AD:
dnscmd 127.0.0.1 /ZoneAdd lintest.ru /Forwarder 192.168.76.82
Добавим информацию о DNS зоне домена AD в настройки DNS домена IPA:
ipa dnszone-add test.dom --name-server=windc.test.dom --admin-email='hostmaster@test.dom' --force --forwarder=192.168.76.93 --forward-policy=only --ip-address=192.168.76.93
Проверить настройки DNS можно:
- На сервере IPA командой:
dig SRV _ldap._tcp.test.dom
При этом в зоне AD должна быть найдена информация об ответственных серверах с каталогом LDAP в этой зоне;
- на сервере AD командами (как показано на рис.1):
nslookup > set type=srv > _ldap._tcp.ad_domain > _ldap._tcp.ipa_domain > quit
Включение доверительных отношений
Включим доверительные отношения между с AD командой:
ipa trust-add --type=ad test.dom --admin Administrator --password
Active directory domain administrator's password: ------------------------------------------------- Added Active Directory trust for realm "test.dom" ------------------------------------------------- Realm name: test.dom Domain NetBIOS name: TEST Domain Security Identifier: S-1-5-21-994480235-3382885224-2559249864 Trust direction: Two-way trust Trust type: Active Directory domain Trust status: Established and verified
Если вы получили ошибку вида:
ipa: ERROR: неверный(ое) Gettext('missing base_id', domain='ipa', localedir=None): pysss_murmur is not available on the server and no base-id is given
То необходимо установить пакет python-sss-murmur командой:
yum install python-sss-murmur
После чего перезагрузить домен IPA командой:
/etc/init.d/ipa restart
Далее повторить попытку включения доверительных отношений, не забыв перед этим заново получить билет администратора домена:
kinit admin
Настройка рабочей станции
Для осуществления возможности авторизации пользователя AD в домене IPA по средством Kerberos, на ПК, где будет осуществляться авторизация нужно добавить два параметра в файл /etc/krb5.conf. В секцию [realms]:
[realms] LINTEST.RU = { --- auth_to_local = RULE:[1:$1@$0](^.*@TEST.DOM$)s/@TEST.DOM/@test.dom/ auth_to_local = DEFAULT
Где TEST.DOM — соответственно имя вашего домена AD.
Далее можно входить на ПК из IPA домена с использованием пользователя AD с указанием логина в виде user@TEST.DOM