Двухфакторная аутентификация

Материал из ALT Linux Wiki

(Различия между версиями)
Перейти к: навигация, поиск
(Об именах файлов в cacerts/)
 
(15 промежуточных версий не показаны.)
Строка 1: Строка 1:
{{Stub}}
{{Stub}}
-
= Настройка двухфакторной аутентификации в ALT Linux K 8.0 (KDE) =
+
== Настройка аутентификации с помощью профилей ==
-
== Двухфакторная аутентификация для входа на рабочую станцию ==
+
-
1. Установить следующие пакеты используя Менеджер пакетов Synaptic или интерфейс командной строки (apt-get install): {{pkg|opensc}}, {{pkg|pam_pkcs11}}, {{pkg|pcsc-lite-ccid}}, {{pkg|openssl-engine_pkcs11}}, {{pkg|nss-utils}}, {{pkg|libhal}};
+
Новая версия пакета {{pkg|pam_pkcs11}} (≥ 0.6.9-alt5) поддерживает настройку с использованием ''профилей''. Список доступных профилей выводится по команде
 +
 
 +
control pam-pkcs11-profile list
 +
 
 +
На сегодняшний день подготовлен профиль для аутентификации через токены RuToken ECP. Он станет доступен после установки пакета {{pkg|pkcs11-profiles-rutokenecp}}.
 +
Применить его можно командой
 +
 
 +
control pam-pkcs11-profile rutokenecp
 +
 
 +
Применение профиля относится только к конфигурации модуля <code>pam_pkcs11</code>, но оставляет без изменения системный механизм аутентификации. Поэтому следом нужно выбрать системный механизм аутентификации, основанный на <code>pam_pkcs11</code>. Например, команда
 +
 
 +
control system-auth pkcs11_strict
 +
 
 +
установит такой механизм аутентификации, при котором только пользователи из группы <code>wheel</code> (т.е. администраторы) имеют возможность входа в систему без токена, по паролю.
 +
 
 +
=== Что входит в профиль <code>rutokenecp</code>? ===
 +
 
 +
Профиль не только настраивает <code>pam_pkcs11</code> для работы с RuToken ECP, но также выбирает следующие умолчания для процедуры аутентификации:
 +
 
 +
# публичные сертификаты, которые удостоверяют подлинность пользовательских сертификатов, размещаются в директории <code>/etc/security/pam_pkcs11/cacerts</code> ('''Внимание!''' Имена файлов в данной директории должны соответствовать хэшам сертификатов. Прочтите страницу руководства <code>verify(1)</code>);
 +
# файлы с информацией об отозванных сертификатах размещаются в директории <code>/etc/security/pam_pkcs11/crls</code>;
 +
# публичный сертификат пользователя должен быть помещён в его ''домашнюю директорию'' <code>$HOME/.eid/</code>.
 +
 
 +
=== Дополнительные инструменты ===
 +
 
 +
Пакет {{pkg|card-actions}} предоставляет вариант скрипта <code>/usr/bin/card-removed</code>, который блокирует пользовательский сеанс, если токен был извлечён. (Другие варианты могут предоставляться другими пакетами через механизм ''альтернатив''.) Активировать эту полезную команду, можно командами
 +
 
 +
control pkcs11-events card_actions
 +
systemctl start pkcs11-eventmgr
 +
 
 +
в результате чего будут внесены необходимые изменения в файл <code>/etc/security/pam_pkcs11/pkcs11_eventmgr.conf</code> и включена служба <code>pkcs11-eventmgr</code> по наблюдению за токенами.
 +
 
 +
== Настройка двухфакторной аутентификации в Альт Рабочая станция К 8.0 (KDE5) ==
 +
=== Двухфакторная аутентификация для входа на рабочую станцию ===
 +
 
 +
1. Установить следующие пакеты используя Менеджер пакетов [[Synaptic|Synaptic]] или интерфейс командной строки (apt-get install): {{pkg|opensc}}, {{pkg|pam_pkcs11}}, {{pkg|pcsc-lite-ccid}}, {{pkg|openssl-engine_pkcs11}}, {{pkg|nss-utils}}, {{pkg|libhal}};
2. Для 64-битных систем установить следующие пакеты: {{pkg|libc.so.6}}, {{pkg|libdbus-1.so.3}}, {{pkg|libhal.so.1}}, {{pkg|libpcsclite.so.1}}, {{pkg|libstdc++.so.6}}, {{pkg|libusb-1.0.so.0}};
2. Для 64-битных систем установить следующие пакеты: {{pkg|libc.so.6}}, {{pkg|libdbus-1.so.3}}, {{pkg|libhal.so.1}}, {{pkg|libpcsclite.so.1}}, {{pkg|libstdc++.so.6}}, {{pkg|libusb-1.0.so.0}};
Строка 9: Строка 43:
3. Установить пакеты SafeNet Authentication Client, выполнив команду:
3. Установить пакеты SafeNet Authentication Client, выполнив команду:
<pre>
<pre>
-
rpm –ihv SafeNet*;
+
rpm -ihv SafeNet*
</pre>
</pre>
Строка 16: Строка 50:
5. Выполнить импорт корневого сертификата в формате Base64, путем выполнения команды:
5. Выполнить импорт корневого сертификата в формате Base64, путем выполнения команды:
<pre>
<pre>
-
certutil -A -n "Root CA" -t "CT,C,C" - a -d /etc/pki/nssdb -i <расположение сертификата>
+
certutil -A -n "Root CA" -t "CT,C,C" -a -d /etc/pki/nssdb -i <расположение сертификата>
</pre>
</pre>
Строка 68: Строка 102:
Далее аутентифицироваться с помощью токена:
Далее аутентифицироваться с помощью токена:
-
[[Файл:Login_token.png‎]]
+
[[Файл:Login_token.png‎|Аутентификация по сертификату в консоли]]
11. Для возможности аутентификации по сертификату в графическом интерфейсе необходимо выполнить команду:
11. Для возможности аутентификации по сертификату в графическом интерфейсе необходимо выполнить команду:
Строка 76: Строка 110:
Далее аутентифицироваться с помощью токена (в поле окна необходимо ввести PIN код ключевого носителя):
Далее аутентифицироваться с помощью токена (в поле окна необходимо ввести PIN код ключевого носителя):
-
[[Файл:Login_token_kde.png‎]]
+
[[Файл:Login_token_kde.png‎|Аутентификация по сертификату в графическом интерфейсе]]
12. Для того, чтобы отключить аутентификацию по паролю, необходимо выполнить следующую команду:
12. Для того, чтобы отключить аутентификацию по паролю, необходимо выполнить следующую команду:
Строка 83: Строка 117:
</pre>
</pre>
-
[[Файл:Password_off.png‎‎]]
+
[[Файл:Password_off.png|Аутентификация в консоли без пароля‎‎]]
-
== Двухфакторная аутентификация для работы в браузере Firefox ==
+
=== Двухфакторная аутентификация для работы в браузере Firefox ===
При инсталляции SafeNet Authentication Client приложение автоматически подгружает устройства защиты в браузер Firefox. Для верификации данного факта необходимо запустить браузер и перейти к пункту {{nav|Настройки|Дополнительные|Сертификаты|Устройства защиты}} и убедиться, что токен виден в приложении:
При инсталляции SafeNet Authentication Client приложение автоматически подгружает устройства защиты в браузер Firefox. Для верификации данного факта необходимо запустить браузер и перейти к пункту {{nav|Настройки|Дополнительные|Сертификаты|Устройства защиты}} и убедиться, что токен виден в приложении:
-
[[Файл:EToken_firefox.png‎‎]]
+
[[Файл:EToken_firefox.png‎‎|800px|Проверка подгрузки устройства защиты в браузер Firefox]]
 +
 
 +
В случае если модуль eToken отсутствует его нужно загрузить из папки {{path|/lib}} или {{path|/lib64}}:
 +
 
 +
[[Файл:Load_eToken.png‎‎|Загрузка eToken]]
 +
 
 +
[[Файл:Load_eToken1.png|800px|Выбор eToken]]
Далее можно использовать механизм двухфакторной аутентификации для доступа к веб-приложениям:
Далее можно использовать механизм двухфакторной аутентификации для доступа к веб-приложениям:
 +
 +
[[Файл:Firefox_login.png‎‎|Механизм двухфакторной аутентификации для доступа к веб-приложениям]]
 +
 +
== Настройка двухфакторной аутентификации в Альт Рабочая станция 8.1 (Mate) и Альт Сервер 8 ==
 +
=== Двухфакторная аутентификация для входа на рабочую станцию ===
 +
 +
1. Установить следующие пакеты используя Менеджер пакетов [[Synaptic|Synaptic]] или интерфейс командной строки (apt-get install): {{pkg|opensc}}, {{pkg|pam_pkcs11}}, {{pkg|pcsc-lite-ccid}}, {{pkg|openssl-engine_pkcs11}}, {{pkg|nss-utils}}, {{pkg|libhal}};
 +
 +
2. Для 64-битных систем установить следующие пакеты: {{pkg|libc.so.6}}, {{pkg|libdbus-1.so.3}}, {{pkg|libhal.so.1}}, {{pkg|libpcsclite.so.1}}, {{pkg|libstdc++.so.6}}, {{pkg|libusb-1.0.so.0}};
 +
 +
3. Установить пакеты SafeNet Authentication Client, выполнив команду:
 +
<pre>
 +
rpm -ihv SafeNet*
 +
</pre>
 +
 +
4. Подготовить токен (сформировать ключевую пару и сертификат). Данная операция может быть выполнена в среде Linux (используя openssl) или Windows (Microsoft CA);
 +
 +
5. Выполнить импорт корневого сертификата в формате Base64, путем выполнения команды:
 +
<pre>
 +
certutil -A -n "Root CA" -t "CT,C,C" -a -d /etc/pki/nssdb -i <расположение сертификата>
 +
</pre>
 +
 +
6. В конфигурационный файл {{path|/etc/security/pam_pkcs11/pam_pkcs11.conf}} внести следующие изменения:
 +
<pre>
 +
use_pkcs11_module = etoken;
 +
 +
debug = false;
 +
 +
pkcs11_module etoken {
 +
    module = /lib/libeToken.so.9
 +
    #/lib64 для 64 битных систем
 +
    description = "Gemalto SafeNet";
 +
    slot_num = 0;
 +
    support_threads = true;
 +
    ca_dir = /etc/pam_pkcs11/cacerts;
 +
    crl_dir = /etc/pam_pkcs11/crls;
 +
    cert_policy = signature;
 +
  }
 +
 +
use_mappers = cn; (Возможно использовать другие маперы subject, mail, etc)
 +
 +
mapper cn {
 +
        debug = false;
 +
        module = internal;
 +
        ignorecase = false;
 +
        mapfile = file:///etc/security/pam_pkcs11/cn_mapping;
 +
  }
 +
</pre>
 +
 +
7. Проверить корректность работы ключа eToken, выполнив команду:
 +
<pre>
 +
pklogin_finder debug
 +
</pre>
 +
[[Файл:EToken_Mate.png|Проверка корректности работы ключа eToken‎]]
 +
 +
8. Для возможности аутентификации по сертификату в консоли необходимо в файл {{path|/etc/pam.d/login}} вначале добавить строку:
 +
<pre>
 +
auth    [success=done authinfo_unavail=ignore ignore=ignore default=die] pam_pkcs11.so
 +
</pre>
 +
Для проверки под учетной записью root выполнить команду:
 +
<pre>
 +
init 3
 +
</pre>
 +
Далее аутентифицироваться с помощью токена:
 +
 +
[[Файл:Login_token1.png‎|Аутентификация по сертификату в консоли]]
 +
 +
9. Для возможности аутентификации по сертификату в графическом интерфейсе необходимо выполнить команду:
 +
<pre>
 +
control system-auth pkcs11
 +
</pre>
 +
Далее аутентифицироваться с помощью токена (в поле окна необходимо ввести PIN код ключевого носителя):
 +
 +
[[Файл:Login_token_mate.png‎|Аутентификация по сертификату в графическом интерфейсе]]
 +
 +
10. Для того, чтобы отключить аутентификацию по паролю, необходимо выполнить следующую команду:
 +
<pre>
 +
passwd –l <логин пользователя>
 +
</pre>
 +
 +
[[Файл:Password_off1.png‎‎]]
 +
 +
[[Файл:Password_off2.png|Аутентификация в консоли без пароля‎‎‎‎]]
 +
 +
=== Двухфакторная аутентификация для работы в браузере Firefox ===
 +
 +
При инсталляции SafeNet Authentication Client приложение автоматически подгружает устройства защиты в браузер Firefox. Для верификации данного факта необходимо запустить браузер и перейти к пункту {{nav|Настройки|Дополнительные|Сертификаты|Устройства защиты}} и убедиться, что токен виден в приложении:
 +
 +
[[Файл:EToken_firefox.png‎‎‎‎|800px|Проверка подгрузки устройства защиты в браузер Firefox]]
 +
 +
В случае если модуль eToken отсутствует его нужно загрузить из папки {{path|/lib}} или {{path|/lib64}}:
 +
 +
[[Файл:Load_eToken.png‎‎|Загрузка eToken]]
 +
 +
[[Файл:Load_eToken1.png|‎‎800px|Выбор eToken]]
 +
 +
Далее можно использовать механизм двухфакторной аутентификации для доступа к веб-приложениям:
 +
 +
[[Файл:Firefox_login1.png‎‎|800px|Механизм двухфакторной аутентификации для доступа к веб-приложениям]]
 +
 +
= Ссылки =
 +
* http://www.linuxquestions.org/questions/blog/vik-404221/configuring-pam_pkcs11-smart-card-logins-for-gentoo-64-bit-linux-35613/
 +
[[Категория:Admin]]
[[Категория:Admin]]

Текущая версия на 16:10, 26 июня 2017

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Содержание

Настройка аутентификации с помощью профилей

Новая версия пакета pam_pkcs11 (≥ 0.6.9-alt5) поддерживает настройку с использованием профилей. Список доступных профилей выводится по команде

control pam-pkcs11-profile list

На сегодняшний день подготовлен профиль для аутентификации через токены RuToken ECP. Он станет доступен после установки пакета pkcs11-profiles-rutokenecp. Применить его можно командой

control pam-pkcs11-profile rutokenecp

Применение профиля относится только к конфигурации модуля pam_pkcs11, но оставляет без изменения системный механизм аутентификации. Поэтому следом нужно выбрать системный механизм аутентификации, основанный на pam_pkcs11. Например, команда

control system-auth pkcs11_strict

установит такой механизм аутентификации, при котором только пользователи из группы wheel (т.е. администраторы) имеют возможность входа в систему без токена, по паролю.

Что входит в профиль rutokenecp?

Профиль не только настраивает pam_pkcs11 для работы с RuToken ECP, но также выбирает следующие умолчания для процедуры аутентификации:

  1. публичные сертификаты, которые удостоверяют подлинность пользовательских сертификатов, размещаются в директории /etc/security/pam_pkcs11/cacerts (Внимание! Имена файлов в данной директории должны соответствовать хэшам сертификатов. Прочтите страницу руководства verify(1));
  2. файлы с информацией об отозванных сертификатах размещаются в директории /etc/security/pam_pkcs11/crls;
  3. публичный сертификат пользователя должен быть помещён в его домашнюю директорию $HOME/.eid/.

Дополнительные инструменты

Пакет card-actions предоставляет вариант скрипта /usr/bin/card-removed, который блокирует пользовательский сеанс, если токен был извлечён. (Другие варианты могут предоставляться другими пакетами через механизм альтернатив.) Активировать эту полезную команду, можно командами

control pkcs11-events card_actions
systemctl start pkcs11-eventmgr

в результате чего будут внесены необходимые изменения в файл /etc/security/pam_pkcs11/pkcs11_eventmgr.conf и включена служба pkcs11-eventmgr по наблюдению за токенами.

Настройка двухфакторной аутентификации в Альт Рабочая станция К 8.0 (KDE5)

Двухфакторная аутентификация для входа на рабочую станцию

1. Установить следующие пакеты используя Менеджер пакетов Synaptic или интерфейс командной строки (apt-get install): opensc, pam_pkcs11, pcsc-lite-ccid, openssl-engine_pkcs11, nss-utils, libhal;

2. Для 64-битных систем установить следующие пакеты: libc.so.6, libdbus-1.so.3, libhal.so.1, libpcsclite.so.1, libstdc++.so.6, libusb-1.0.so.0;

3. Установить пакеты SafeNet Authentication Client, выполнив команду:

rpm -ihv SafeNet*

4. Подготовить токен (сформировать ключевую пару и сертификат). Данная операция может быть выполнена в среде Linux (используя openssl) или Windows (Microsoft CA);

5. Выполнить импорт корневого сертификата в формате Base64, путем выполнения команды:

certutil -A -n "Root CA" -t "CT,C,C" -a -d /etc/pki/nssdb -i <расположение сертификата>

6. В конфигурационный файл /etc/security/pam_pkcs11/pam_pkcs11.conf внести следующие изменения:

use_pkcs11_module = etoken;
debug = false;
pkcs11_module etoken {
    module = /lib/libeToken.so.9
    #/lib64 для 64 битных систем
    description = "Gemalto SafeNet";
    slot_num = 0;
    support_threads = true;
    ca_dir = /etc/pam_pkcs11/cacerts;
    crl_dir = /etc/pam_pkcs11/crls;
    cert_policy = signature;
  }

use_mappers = subject;

mapper subject {
        debug = false;
        module = internal;
        ignorecase = false;
        mapfile = file:///etc/security/pam_pkcs11/subject_mapping;
  }

7. Выполнить команду:

pkcs11_insect > /etc/security/pam_pkcs11/subject_mapping

и удалить все, за исключением имени субъекта (пример, /DC=local/DC=gemalto/OU=SAS/CN=mrozhnov/emailAddress=mrozhnov@gemalto.local);

8. Проверить корректность работы ключа eToken, выполнив команду:

pklogin_finder debug

EToken.png

9. Далее необходимо установить следующие пакеты: lightdm и lightdm-kde-greeter и выполнить перезагрузку рабочей станции;

10. Для возможности аутентификации по сертификату в консоли необходимо в файл /etc/pam.d/login вначале добавить строку:

auth    [success=done authinfo_unavail=ignore ignore=ignore default=die] pam_pkcs11.so

Для проверки под учетной записью root выполнить команду:

init 3

Далее аутентифицироваться с помощью токена:

Аутентификация по сертификату в консоли

11. Для возможности аутентификации по сертификату в графическом интерфейсе необходимо выполнить команду:

control system-auth pkcs11

Далее аутентифицироваться с помощью токена (в поле окна необходимо ввести PIN код ключевого носителя):

Аутентификация по сертификату в графическом интерфейсе

12. Для того, чтобы отключить аутентификацию по паролю, необходимо выполнить следующую команду:

passwd –l <логин пользователя>

Аутентификация в консоли без пароля‎‎

Двухфакторная аутентификация для работы в браузере Firefox

При инсталляции SafeNet Authentication Client приложение автоматически подгружает устройства защиты в браузер Firefox. Для верификации данного факта необходимо запустить браузер и перейти к пункту Настройки ▷ Дополнительные ▷ Сертификаты ▷ Устройства защиты и убедиться, что токен виден в приложении:

Проверка подгрузки устройства защиты в браузер Firefox

В случае если модуль eToken отсутствует его нужно загрузить из папки /lib или /lib64:

Загрузка eToken

Выбор eToken

Далее можно использовать механизм двухфакторной аутентификации для доступа к веб-приложениям:

Механизм двухфакторной аутентификации для доступа к веб-приложениям

Настройка двухфакторной аутентификации в Альт Рабочая станция 8.1 (Mate) и Альт Сервер 8

Двухфакторная аутентификация для входа на рабочую станцию

1. Установить следующие пакеты используя Менеджер пакетов Synaptic или интерфейс командной строки (apt-get install): opensc, pam_pkcs11, pcsc-lite-ccid, openssl-engine_pkcs11, nss-utils, libhal;

2. Для 64-битных систем установить следующие пакеты: libc.so.6, libdbus-1.so.3, libhal.so.1, libpcsclite.so.1, libstdc++.so.6, libusb-1.0.so.0;

3. Установить пакеты SafeNet Authentication Client, выполнив команду:

rpm -ihv SafeNet*

4. Подготовить токен (сформировать ключевую пару и сертификат). Данная операция может быть выполнена в среде Linux (используя openssl) или Windows (Microsoft CA);

5. Выполнить импорт корневого сертификата в формате Base64, путем выполнения команды:

certutil -A -n "Root CA" -t "CT,C,C" -a -d /etc/pki/nssdb -i <расположение сертификата>

6. В конфигурационный файл /etc/security/pam_pkcs11/pam_pkcs11.conf внести следующие изменения:

use_pkcs11_module = etoken;

debug = false;

pkcs11_module etoken {
    module = /lib/libeToken.so.9
    #/lib64 для 64 битных систем
    description = "Gemalto SafeNet";
    slot_num = 0;
    support_threads = true;
    ca_dir = /etc/pam_pkcs11/cacerts;
    crl_dir = /etc/pam_pkcs11/crls;
    cert_policy = signature;
  }

use_mappers = cn; (Возможно использовать другие маперы subject, mail, etc)

mapper cn {
        debug = false;
        module = internal;
        ignorecase = false;
        mapfile = file:///etc/security/pam_pkcs11/cn_mapping;
  }

7. Проверить корректность работы ключа eToken, выполнив команду:

pklogin_finder debug

Проверка корректности работы ключа eToken‎

8. Для возможности аутентификации по сертификату в консоли необходимо в файл /etc/pam.d/login вначале добавить строку:

auth    [success=done authinfo_unavail=ignore ignore=ignore default=die] pam_pkcs11.so

Для проверки под учетной записью root выполнить команду:

init 3

Далее аутентифицироваться с помощью токена:

Аутентификация по сертификату в консоли

9. Для возможности аутентификации по сертификату в графическом интерфейсе необходимо выполнить команду:

control system-auth pkcs11

Далее аутентифицироваться с помощью токена (в поле окна необходимо ввести PIN код ключевого носителя):

Аутентификация по сертификату в графическом интерфейсе

10. Для того, чтобы отключить аутентификацию по паролю, необходимо выполнить следующую команду:

passwd –l <логин пользователя>

Password off1.png

Аутентификация в консоли без пароля‎‎‎‎

Двухфакторная аутентификация для работы в браузере Firefox

При инсталляции SafeNet Authentication Client приложение автоматически подгружает устройства защиты в браузер Firefox. Для верификации данного факта необходимо запустить браузер и перейти к пункту Настройки ▷ Дополнительные ▷ Сертификаты ▷ Устройства защиты и убедиться, что токен виден в приложении:

Проверка подгрузки устройства защиты в браузер Firefox

В случае если модуль eToken отсутствует его нужно загрузить из папки /lib или /lib64:

Загрузка eToken

Выбор eToken

Далее можно использовать механизм двухфакторной аутентификации для доступа к веб-приложениям:

Механизм двухфакторной аутентификации для доступа к веб-приложениям

Ссылки

 
Личные инструменты