Настройка двухфакторной аутентификации в ОС ROSA Desktop — различия между версиями
Consta (обсуждение | вклад) |
Consta (обсуждение | вклад) |
||
Строка 107: | Строка 107: | ||
== Настройка операционной системы ROSA Desktop Fresh R9 Gnome для работы двухфакторной аутентификации == | == Настройка операционной системы ROSA Desktop Fresh R9 Gnome для работы двухфакторной аутентификации == | ||
− | === Установка приложения на компьютер. === | + | |
− | Сперва установите google-authenticator: | + | === Установка приложения на компьютер и синхронизация часов. === |
+ | |||
+ | '''Сперва обязательно проверьте точное время и убедитесь, что оно верное!''' | ||
+ | |||
+ | Иначе ничего не выйдет. Если время отличается от эталонного - сначала настройте его как можно точнее. | ||
+ | |||
+ | Для настройки времени можно использовать программу '''drakclock'''. Запустите её ('''ALT+F2''' и напишите '''drakclock''') и проверьте время и часовой пояс. | ||
+ | |||
+ | Хорошим решением будет использование любого сервера времени из списка программы drakclock. Либо вы можете сами вписать любой сервер времени, по Вашему желанию. | ||
+ | |||
+ | Например, можно использовать наши собственные серверы времени - '''''ntp.rosalinux.ru''''' и '''''ntp2.rosalinux.ru'''''. | ||
+ | |||
+ | [[File:drakclock.png|200px|center|thumb|Рисунок 1. Синхронизация времени с помощью '''drakclock'''.]] | ||
+ | |||
+ | Затем установите '''google-authenticator''': | ||
'''urpmi google-authenticator''' | '''urpmi google-authenticator''' | ||
=== Установка приложения на смартфон (планшет). === | === Установка приложения на смартфон (планшет). === | ||
+ | |||
+ | Прежде чем Вы установите приложение: | ||
+ | |||
+ | Не забывайте про время. Первым делом, проверьте точное время. Если на вашем смартфоне или планшете оно неправильное, то обязательно установите его верно! | ||
+ | |||
+ | Иначе ничего не получится. Сверьтесь с документацией на Ваш телефон или планшет, чтобы установить на нём точное время. | ||
==== Для смартфона/планшета с системой Android© ==== | ==== Для смартфона/планшета с системой Android© ==== | ||
Строка 139: | Строка 159: | ||
'''google-authenticator''' | '''google-authenticator''' | ||
− | [[File:2FA_pic1.png|640px|center|thumb|Рисунок | + | [[File:2FA_pic1.png|640px|center|thumb|Рисунок 2. Получение QR кода или цифрового ключа.]] |
=== Ввод QR кода (цифрового ключа) в приложение на смартфоне (планшете). === | === Ввод QR кода (цифрового ключа) в приложение на смартфоне (планшете). === | ||
Строка 150: | Строка 170: | ||
Пример сканирования QR кода на рисунке ниже: | Пример сканирования QR кода на рисунке ниже: | ||
− | [[File:2FA_pic2.png|200px|center|thumb|Рисунок | + | [[File:2FA_pic2.png|200px|center|thumb|Рисунок 3. Пример сканирования QR кода приложением на смартфоне.]] |
=== Создание на компьютере и ввод в смартфон QR кода для обычного пользователя. === | === Создание на компьютере и ввод в смартфон QR кода для обычного пользователя. === | ||
Строка 163: | Строка 183: | ||
'''google-authenticator''' | '''google-authenticator''' | ||
− | В ответ Вы увидите еще один QR-код для пользователя. Пример QR-кода уже показан на '''рисунке | + | В ответ Вы увидите еще один QR-код для пользователя. Пример QR-кода уже показан на '''рисунке 2'''. |
Далее, как уже было описано выше, введите (просканируете) в Ваш смартфон (планшет) еще один QR-код. Или введите шестнадцатизначный ключ. | Далее, как уже было описано выше, введите (просканируете) в Ваш смартфон (планшет) еще один QR-код. Или введите шестнадцатизначный ключ. | ||
− | Пример этой операции уже показан на '''рисунке | + | Пример этой операции уже показан на '''рисунке 3'''. |
+ | |||
+ | Повторите операции по генерации QR-кодов столько раз, сколько потребуется для каждого отдельного пользователя. | ||
+ | |||
+ | Не забываете для этого каждый раз переключаться в контекст нового пользователя. | ||
+ | |||
+ | === Настройка графического менеджера GDM === | ||
+ | |||
+ | Eсли у Вас установлена ОС ROSA Fresh R9 с графическим окружением GNOME, то ниже описывается как настроить Gnome Dislay Manager (GDM) для работы с 2FA. | ||
+ | |||
+ | Для настройки GDM Вам потребуются полномочия администратора '''root'''. | ||
+ | |||
+ | Отредактируйте файл '''/etc/pam.d/gdm-password'''. Измените верхние строки, так, как указано в примере: | ||
+ | |||
+ | '''#%PAM-1.0''' | ||
+ | '''auth required pam_env.so''' | ||
+ | '''auth required pam_unix.so''' | ||
+ | '''auth sufficient pam_google_authenticator.so''' | ||
+ | '''auth sufficient pam_succeed_if.so user ingroup nopasswdlogin''' | ||
+ | |||
+ | Помните, что настройки модуля PAM применяются немедленно. Никакой перезагрузки выполнять не нужно. Теперь у Вас настроена 2FA для входа в графическую оболочку. | ||
+ | |||
+ | Введите первый пароль как обычно. | ||
+ | |||
+ | [[File:gdmscreen2.png|640px|center|thumb|Рисунок 3. Ввод пароля в GDM]] | ||
+ | |||
+ | Запустите приложение на вашем смартфоне, выберете учетную запись и приготовьтесь ввести одноразовый пароль. | ||
+ | |||
+ | Помните, что он действует 30 секунд. В приложении обычно имеется индикатор срока действия. | ||
+ | |||
+ | [[File:2FA_pic3.png|200px|center|thumb|Рисунок 3. Работа генератора одноразового пароля на смартфоне.]] | ||
+ | |||
+ | Введите цифры с экрана смартфона в менеджер входа GDM как только будет запрошен. | ||
+ | |||
+ | [[File:gdmscreen1.png|640px|center|thumb|Рисунок 4. Ввод одноразового пароля в GDM]] |
Версия 22:59, 17 июня 2017
Настройка двухфакторной аутентификации в ОС РОСА 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 Программы для смартфонов или планшетов, необходимые к установке.
- 2 Настройка операционной системы ROSA Desktop Fresh R9 Gnome для работы двухфакторной аутентификации
- 2.1 Установка приложения на компьютер и синхронизация часов.
- 2.2 Установка приложения на смартфон (планшет).
- 2.3 Создание на компьютере QR кода (ключа) для администратора (root).
- 2.4 Ввод QR кода (цифрового ключа) в приложение на смартфоне (планшете).
- 2.5 Создание на компьютере и ввод в смартфон QR кода для обычного пользователя.
- 2.6 Настройка графического менеджера GDM
Применимость
Назначение
Инструкция предназначена для описания процесса настройки двухфакторной аутентификации (2FA) в ОС ROSA Desktop Fresh R9.
Зачем использовать двухфакторную (многофакторную) аутентификацию и для чего она вообще нужна?
Двухфакторная (многофакторная) аутентификация нужна для усиления безопасности при попытке входа в операционную систему и во всех остальных случаях, требующих подтверждения подлинности пользователя. Таким образом, она существенно повышает безопасность всякий раз, когда требуется ввести пароль.
Пароль требуется при необходимости:
- осуществить штатный вход в графическую оболочку ОС;
- разблокировать компьютер (ноутбук) при работающем хранителе экрана;
- осуществить повторный вход (скажем, требуется войти в систему параллельно еще раз);
- осуществить удаленное подключение к операционной системе (например по протоколу SSH);
- осуществить вход в текстовый терминал GETTY (ALT+F2...F6);
- переключить контекст пользователя - если нужно использовать su, sudo или выполнить действия от имени другого пользователя или администратора root.
А теперь представьте:
- Вы подозреваете, что кому-то возможно стал известен Ваш текущий пароль, а поменять его сразу нет возможности;
- Ваш текущий пароль кто-то может подсмотреть во время ввода, к примеру незаметно встав у Вас за спиной;
- Вы подключаетесь к своему компьютеру по SSH из интернет-кафе или используя чужой компьютер. Можно предположить, что когда Вы набираете на чужом компьютере символы Вашего имени и пароля - информация может быть перехвачена и использована злоумышленником;
- Вы опасаетесь, что ваш пароль слишком слабый или очевидный. И может быть легко подобран в уме злобными железными дядьками и тётьками из Мегатрона.
Во всех перечисленных случаях хорошей мерой противодействия может быть использование двухфакторной аутентификации. И в этом Вам поможет это руководство. Дочитав его до конца, Вы научитесь настраивать еще один барьер безопасности в своей системе. И Вам останется лишь криво ухмыляться (ну или адски гоготать), глядя на работу интернет-бота, тщетно пытающегося подобрать пароли к Вашей системе.
Многофакторная (в т.ч. двухфакторная) аутентификация основана на принципе, гласящем, что для подтверждения подлинности пользователя необходимо сочетание нескольких факторов:
- Пользователь знает что-то, чего не знает никто (например, свой пароль);
- Пользователь имеет что-то, чего не имеет никто (это может быть, например, одноразовый пароль или токен, содержащий ключ, и т.п.);
- Пользователь неотъемлемо обладает чем-то (как субъект материального мира), чем кроме него, не обладает никто (например отпечаток пальца, радужка глаза, голос, и т.п.). В последнем случае, речь, как правило, идет о применении т.н. биометрической аутентификации или биометрии.
Для ОС ROSA Desktop Fresh R9 мы предлагаем использовать двухфакторную аутентификацию с использованием одноразовых TOTP паролей, которые актуальны всего 30 секунд. Такая настройка рекомендуется нами как наиболее приемлемая и удобная для пользователя.
Для ее применения, в целом, не нужно производить никаких особенно сложных настроек и не требуется применять никаких редких программ или использовать дорогостоящее оборудование. И 2FA можно будет использовать после правильной настройки без всякого подключения к сети Internet.
Список поддерживаемых ОС семейства РОСА.
В настоящее время поддерживаются следующие ОС (не ниже):
- 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.
Что Вам потребуется для настройки.
- Вам понадобится установить на компьютер из нашего репозитория программу google-authenticator.
- Вам понадобится смартфон или планшет (Windows Phone©, Android© или Apple© iOS©, без разницы), который превратится в ваш токен с ключом и станет генератором одноразовых паролей;
- Время на смартфоне и на компьютере должно будет совпадать, это ключевое. Допустимо только незначительное отклонение времени между устройствами;
- Для синхронизации времени лучше всего использовать серверы точного времени.
- Например, Вы можете использовать наши публичные и общедоступные серверы времени: ntp.rosalinux.ru и ntp2.rosalinux.ru или любые другие по Вашему желанию.
- Шапочка из фольги (шутка).
Ограничения, о которых нужно знать.
- Если Вы утратите смартфон или там сядет батарейка, то Вы не сможете без своего работающего смартфона зайти в ОС штатным способом;
- Если у Вас будет отличаться время на компьютере и на телефоне, то Вы тоже не сможете зайти в ОС штатным способом;
- Помните, что с ростом безопасности снижается удобство использования. Вам теперь постоянно придется иметь под рукой работающий телефон и вводить два пароля вместо одного;
Что Вы получите в итоге.
- Существенно вырастет безопасность. Теперь можно не опасаться, что Вы случайно или специально скомпрометируете пароль пользователя или даже администратора (root);
- Вам не потребуется покупать дорогостоящее оборудование или программное обеспечение, чтобы повысить безопасность. Вы сможете сделать это себе бесплатно после несложной настройки (или соседу за тысячу рублей);
- Вы будете знать, что Ваша система повышения безопасности - только Ваша, и ничья еще, никакие сторонние сервисы не используются;
- Вы будете на практике использовать современные технологии информационной безопасности в повседневной жизни;
- Кто-то может перенять Ваш опыт, и начать использовать 2FA и тоже повысит безопасность своей системы;
- Вы теперь сможете повысить свою самооценку перед родными, друзьями и знакомыми :)))
Принцип настройки и работы 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 секунд (по-умолчанию).
Программы для смартфонов или планшетов, необходимые к установке.
Ниже приведен список бесплатных программ (на момент написания статьи) для генерации одноразовых паролей. Мы постарались охватить в этом руководстве весь спектр современных смартфонов, по крайней мере, абсолютное большинство. Помимо бесплатных приложений, есть еще и платные. Но в данном руководстве мы их описывать не будем. Мы в руководстве охватили только самые популярные приложения для телефона. Нет нужды описывать их все.
Для смартфона/планшета с системой Android©
- установите программу FreeOTP Authenticator;
- установите программу Google Authenticator;
Для смартфона/планшета компании Apple© с системой iOS©
- установите программу FreeOTP Authenticator;
- установите программу Google Authenticator;
Для смартфона с системой Microsoft© Windows Phone© или планшета Microsoft© Surface©
- установите программу Microsoft Authenticator.
Настройка операционной системы ROSA Desktop Fresh R9 Gnome для работы двухфакторной аутентификации
Установка приложения на компьютер и синхронизация часов.
Сперва обязательно проверьте точное время и убедитесь, что оно верное!
Иначе ничего не выйдет. Если время отличается от эталонного - сначала настройте его как можно точнее.
Для настройки времени можно использовать программу drakclock. Запустите её (ALT+F2 и напишите drakclock) и проверьте время и часовой пояс.
Хорошим решением будет использование любого сервера времени из списка программы drakclock. Либо вы можете сами вписать любой сервер времени, по Вашему желанию.
Например, можно использовать наши собственные серверы времени - ntp.rosalinux.ru и ntp2.rosalinux.ru.
Затем установите google-authenticator:
urpmi google-authenticator
Установка приложения на смартфон (планшет).
Прежде чем Вы установите приложение:
Не забывайте про время. Первым делом, проверьте точное время. Если на вашем смартфоне или планшете оно неправильное, то обязательно установите его верно!
Иначе ничего не получится. Сверьтесь с документацией на Ваш телефон или планшет, чтобы установить на нём точное время.
Для смартфона/планшета с системой Android©
- установите программу FreeOTP Authenticator;
- установите программу Google Authenticator;
Для смартфона/планшета компании Apple© с системой iOS©
- установите программу FreeOTP Authenticator;
- установите программу Google Authenticator;
Для смартфона с системой Microsoft© Windows Phone© или планшета Microsoft© Surface©
- установите программу Microsoft Authenticator.
Создание на компьютере QR кода (ключа) для администратора (root).
Затем переключитесь на Вашем компьютере в контекст суперпользователя (администратора) root:
su - или sudo -i
Для администратора лучше в первую очередь настроить одноразовый пароль. Так как если что-то пойдет не так, то Вы возможно получите сложности при дальнейшей настройке. И тогда Вам пригодится уже настроенный вход администратора (root). Создайте ключ для администратора командой (лучше всего это делать в терминале xterm):
google-authenticator
Ввод QR кода (цифрового ключа) в приложение на смартфоне (планшете).
Затем запустите на Ваш смартфон или планшет уже установленное выше приложение, и, следуя его подсказкам, просканируйте получившийся QR-код. Либо, если Ваше приложение не поддерживает сканирование QR кодов, то вручную введите шестнадцатизначный ключ, сгенерированный прямо под QR кодом и подписанный как:
Your new secret key is: ABCDEFGH12345678
Пример сканирования QR кода на рисунке ниже:
Создание на компьютере и ввод в смартфон QR кода для обычного пользователя.
Создание QR кода для рядового пользователя системы ничем не отличается от создания его для администратора. Сперва запустите xterm. Затем переключитесь в контекст этого пользователя командой:
su - <имя_желаемого_пользователя>,
и выполните команду:
google-authenticator
В ответ Вы увидите еще один QR-код для пользователя. Пример QR-кода уже показан на рисунке 2.
Далее, как уже было описано выше, введите (просканируете) в Ваш смартфон (планшет) еще один QR-код. Или введите шестнадцатизначный ключ. Пример этой операции уже показан на рисунке 3.
Повторите операции по генерации QR-кодов столько раз, сколько потребуется для каждого отдельного пользователя.
Не забываете для этого каждый раз переключаться в контекст нового пользователя.
Настройка графического менеджера GDM
Eсли у Вас установлена ОС ROSA Fresh R9 с графическим окружением GNOME, то ниже описывается как настроить Gnome Dislay Manager (GDM) для работы с 2FA.
Для настройки GDM Вам потребуются полномочия администратора root.
Отредактируйте файл /etc/pam.d/gdm-password. Измените верхние строки, так, как указано в примере:
#%PAM-1.0 auth required pam_env.so auth required pam_unix.so auth sufficient pam_google_authenticator.so auth sufficient pam_succeed_if.so user ingroup nopasswdlogin
Помните, что настройки модуля PAM применяются немедленно. Никакой перезагрузки выполнять не нужно. Теперь у Вас настроена 2FA для входа в графическую оболочку.
Введите первый пароль как обычно.
Запустите приложение на вашем смартфоне, выберете учетную запись и приготовьтесь ввести одноразовый пароль.
Помните, что он действует 30 секунд. В приложении обычно имеется индикатор срока действия.
Введите цифры с экрана смартфона в менеджер входа GDM как только будет запрошен.