PAM USB Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
Следующая версия Следующая версия справа и слева
wiki:pam_usb [2012/12/27 14:17]
дополнил
wiki:pam_usb [2012/12/27 15:52]
Строка 1: Строка 1:
 ====== PAM USB ====== ====== PAM USB ======
- +**PAM USB** -- модуль для [[PAM]] ​предоставляющий возможность ​аутентификации пользователя в ОС посредством <<​Flash>>​-накопителя в качестве ключа. Также ​он предоставляет функционал по блокированию/​разблокированию ​рабочего стола пользователя при отключении/​подключении накопителя-ключа. Для идентификации накопителя используется информация заложенная производителем и временные данные,​ которые записываются на этот накопитель,​ так что, даже при наличии накопителя с полностью идентичными данными производителя,​ аутентификация пользователя не произойдет.
-Данная программа ​предназначена для ​аутентификации пользователя в ОС посредством <<​Flash>>​-накопителя в качестве ключа. Также предоставляет функционал по блокировке/​разблокировке рабочего стола пользователя при отключении/​подключении накопителя-ключа. Для идентификации накопителя используется информация заложенная производителем и временные данные,​ которые записываются на этот накопитель,​ так что, даже при наличии накопителя с полностью идентичными данными производителя,​ аутентификация пользователя не произойдет.+
  
 <note important>​Не имеется достаточно информации по безопасности данного метода аутентификации</​note>​ <note important>​Не имеется достаточно информации по безопасности данного метода аутентификации</​note>​
  
 ===== Установка ===== ===== Установка =====
- +Функционал программы поставляется в пакетах ​''​libpam-usb''​''​pamusb-tools'' ​и их зависимостях. Установку можно произвести,​ например,​ выполнив с терминале команду 
-Функционал программы поставляется в пакетах ​<<libpam-usb>><<pamusb-tools>> ​и их зависимостях. Установку можно произвести,​ например,​ выполнив с терминале команду +<​code ​bash>sudo apt-get install libpam-usb pamusb-tools</​code>​
-<​code>​sudo apt-get install libpam-usb pamusb-tools</​code>​+
  
 ===== Настройка ===== ===== Настройка =====
- +Для исправной работы ​PAM USB требуется,​ что бы пользователь,​ аутентификацию которого будет происходить посредством накопителя-ключа,​ был членом группы пользователей <<​plugdev>>​ (см. [[http://​manpages.ubuntu.com/​manpages/​precise/​en/​man1/​pmount.1.html|man pmount]]). Добиться этого можно, например,​ командой в терминале 
-Для исправной работы ​программы «PAM USB» требуется,​ что бы пользователь,​ аутентификацию которого будет происходить посредством накопителя-ключа,​ был членом группы пользователей <<​plugdev>>​ (см. [[http://​manpages.ubuntu.com/​manpages/​precise/​en/​man1/​pmount.1.html|map pmount]]). Добиться этого можно, например,​ командой в терминале +<​code ​bash>sudo adduser $USER plugdev</​code>​ 
-<​code>​sudo adduser $USER plugdev</​code>​ +для добавления текущего пользователя в группу. Если же требуется добавить другого пользователя,​ то ''​$USER'' ​следует заменить на его имя (логин).
-для добавления текущего пользователя в группу. Если же требуется добавить другого пользователя,​ то <<$USER>> ​следует заменить на его имя (логин).+
  
 ==== Указание накопителей-ключей ==== ==== Указание накопителей-ключей ====
- 
- 
 Далее, необходимо подключить накопитель который будет использован в качестве ключа и выполнить в терминале команду Далее, необходимо подключить накопитель который будет использован в качестве ключа и выполнить в терминале команду
-<​code>​sudo pamusb-conf --add-device $FLASH</​code>​ +<​code ​bash>sudo pamusb-conf --add-device $FLASH</​code>​ 
-где ​<<$FLASH>> ​необходимо заменить на название <<​Flash>>​-накопителя которое будет использоваться для его обозначения в настройках <<PAM USB>>,​ это может быть произвольная текстовая строка из букв и цифр.+где ​''​$FLASH'' ​необходимо заменить на название <<​Flash>>​-накопителя которое будет использоваться для его обозначения в настройках <<PAM USB>>,​ это может быть произвольная текстовая строка из букв и цифр.
 Если в данный момент подключено несколько накопителей,​ то программа выведет сообщение вида Если в данный момент подключено несколько накопителей,​ то программа выведет сообщение вида
 <​code>​Please select the device you wish to add. <​code>​Please select the device you wish to add.
Строка 42: Строка 37:
 [Y/n]  [Y/n] 
 </​code>​ </​code>​
-если это подходящий накопитель,​ то следует ввести <<​y>>​ (<<​Yes>>​ — подтверждение) и нажать <​key>​enter</​key>​. Иначе ввести <<​n>>​ и нажать <​key>​enter</​key>​ (или <​key>​C-c</​key>​) и повторить команду для другого накопителя. Информация о накопителе будет записана в файл ​<</​etc/​pamusb.conf>> ​(см. [[https://​github.com/​aluzzardi/​pam_usb/​wiki/​Getting-Started|Getting Started]]).+если это подходящий накопитель,​ то следует ввести <<​y>>​ (<<​Yes>>​ — подтверждение) и нажать <​key>​enter</​key>​. Иначе ввести <<​n>>​ и нажать <​key>​enter</​key>​ (или <​key>​C-c</​key>​) и повторить команду для другого накопителя. Информация о накопителе будет записана в файл ​///​etc/​pamusb.conf// (см. [[https://​github.com/​aluzzardi/​pam_usb/​wiki/​Getting-Started|Getting Started]]).
  
 ==== Сопоставление пользователей и накопителей-ключей ==== ==== Сопоставление пользователей и накопителей-ключей ====
- 
 После того как добавлен накопитель-ключ,​ требуется указать для каких пользователей его использовать. Это производится выполнением команды в терминале После того как добавлен накопитель-ключ,​ требуется указать для каких пользователей его использовать. Это производится выполнением команды в терминале
-<​code>​sudo pamusb-conf --add-user $USER</​code>​ +<​code ​bash>sudo pamusb-conf --add-user $USER</​code>​ 
-для указания текущего пользователя,​ иначе ​<<$USER>> ​необходимо заменить на имя пользователя для которого будет использован данный накопитель-ключ. +для указания текущего пользователя,​ иначе ​''​$USER'' ​необходимо заменить на имя пользователя для которого будет использован данный накопитель-ключ. 
-Будет выведен список ранее добавленных в конфигурацию ​<<PAM USB>> ​накопителей,​ следует выбрать требуемый. +Будет выведен список ранее добавленных в конфигурацию PAM USB накопителей,​ следует выбрать требуемый. 
-<​note>​Для одного пользователя может использоваться только один ключ-накопитель,​ однако один накопитель может быть ключом для нескольких пользователей</​note>​ +<​note>​Для одного пользователя может использоваться только один ключ-накопитель,​ однако один накопитель может быть ключом для нескольких пользователей.</​note>​ 
-И если все указано верно, то на запрос <<​Save to /​etc/​pamusb.conf ?>> набрать <<​y>>​ и нажать <​key>​enter</​key>​ (иначе <<​n>>​ или <​key>​C-c</​key>​)+Если все указано верно, то на запрос <<​Save to /​etc/​pamusb.conf ?>> набрать <<​y>>​ и нажать <​key>​enter</​key>​ (иначе <<​n>>​ или <​key>​C-c</​key>​)
  
 ==== Проверка ==== ==== Проверка ====
- 
 Проверить исправность аутентификации пользователя по накопителю-ключу можно командой в терминале Проверить исправность аутентификации пользователя по накопителю-ключу можно командой в терминале
-<​code>​pamusb-check $USER --debug</​code>​ +<​code ​bash>​pamusb-check $USER --debug</​code>​ 
-для текущего пользователя,​ иначе необходимо заменить ​<<$USER>> ​на имя другого пользователя.+для текущего пользователя,​ иначе необходимо заменить ​''​$USER'' ​на имя другого пользователя.
 Если все пройдет успешно,​ будет выведено сообщение в конце Если все пройдет успешно,​ будет выведено сообщение в конце
 <​code>​* Access granted.</​code>​ <​code>​* Access granted.</​code>​
Строка 63: Строка 56:
  
 ===== Системные настройки ===== ===== Системные настройки =====
- +Модуль ​PAM USB добавляет себя в стек аутентификации за счет строчки в файле ​///​etc/​pam.d/​common-auth// (см. [[http://​www.rjsystems.nl/​en/​2100-pam-debian.php|PAM configuration guide for Debian]]) 
-Программа <<PAM USB>> ​добавляет себя в стек аутентификации за счет строчки в файле ​<</​etc/​pam.d/​common-auth>> ​(см. [[http://​www.rjsystems.nl/​en/​2100-pam-debian.php|PAM configuration guide for Debian]]) +<​code>​auth sufficient ​         pam_usb.so</​code>​ 
-<​code>​… +В [[Ubuntu]] 12.10 эта строчка добавляется автоматически при установке PAM USB. Если этой строчки нет, то следует её дописать,​ обязательно перед строчками
-auth sufficient ​         pam_usb.so +
-</​code>​ +
-В <<Ubuntu>> ​12.10 эта строчка добавляется автоматически при установке ​<<PAM USB>>. Если этой строчки нет, то следует её дописать,​ обязательно перед строчками+
 <​code>​auth [success=2 default=ignore] pam_unix.so nullok_secure try_first_pass <​code>​auth [success=2 default=ignore] pam_unix.so nullok_secure try_first_pass
 auth [success=1 default=ignore] pam_winbind.so krb5_auth krb5_ccache_type=FILE cached_login try_first_pass</​code>​ auth [success=1 default=ignore] pam_winbind.so krb5_auth krb5_ccache_type=FILE cached_login try_first_pass</​code>​
-<note warning>​Ошибки допущенные при редактировании этого файла могут навредить работе ОС. Обязательно сохраните оригинал этого файла перед редактированием</​note>​+<note warning>​Ошибки допущенные при редактировании этого файла могут навредить работе ОС. Обязательно сохраните оригинал этого файла перед редактированием.</​note>​
 Параметр <<​sufficient>>​ указывает,​ что наличия накопителя-ключа достаточно для аутентификации пользователя. Параметр <<​sufficient>>​ указывает,​ что наличия накопителя-ключа достаточно для аутентификации пользователя.
-<note warning>​Это может быть не приемлемо если Ваш пользователь является администратором в ОС, т.к. при подключенном накопителе-ключе запроса пароля не будет и возможно выполнение вредоносного кода с правами корневого пользователя <<​root>></​note>​+<note warning>​Это может быть не приемлемо если Ваш пользователь является администратором в ОС, т.к. при подключенном накопителе-ключе запроса пароля не будет и возможно выполнение вредоносного кода с правами корневого пользователя <<​root>>​.</​note>​
 Если же <<​sufficient>>​ заменить на <<​required>>​ (<<​обязательно,​ но не достаточно>>​) Если же <<​sufficient>>​ заменить на <<​required>>​ (<<​обязательно,​ но не достаточно>>​)
 <​code>​auth required ​         pam_usb.so</​code>​ <​code>​auth required ​         pam_usb.so</​code>​
Строка 79: Строка 69:
 Другой вариант <<​optional>>​ (<<​не обязательно>>​) Другой вариант <<​optional>>​ (<<​не обязательно>>​)
 <​code>​auth optional ​         pam_usb.so</​code>​ <​code>​auth optional ​         pam_usb.so</​code>​
-сделает наличие накопителя-ключа необязательным условием аутентификации. Это целесообразно,​ если ​<<PAM USB>> ​планируется использовать только для блокировки/​разблокировки рабочего стола.+сделает наличие накопителя-ключа необязательным условием аутентификации. Это целесообразно,​ если PAM USB планируется использовать только для блокирования/​разблокирования рабочего стола.
  
-===== Блокировка рабочего стола при отключении накопителя и наоборот ===== +===== Блокирование ​рабочего стола при отключении накопителя и наоборот ===== 
- +Удобная возможность заблокировать рабочий стол изъятием накопителя-ключа и разблокирования при повторном подключении этого накопителя реализована посредством утилиты <<​pamusb-agent>>​ входящей в комплект программного пакета PAM USB. Для начала необходимо открыть для редактирования файл ​///​etc/​pamusb.conf// любым текстовым редакторомнапример 
-Удобная возможность заблокировать рабочий стол изъятием накопителя-ключа и разблокирования при повторном подключении этого накопителя реализована посредством утилиты <<​pamusb-agent>>​ входящей в комплект программного пакета ​<<PAM USB>>. Для начала необходимо открыть для редактирования файл ​<</​etc/​pamusb.conf>>, например, командой в терминале +<​code ​bash>sudo gedit /​etc/​pamusb.conf</​code>​ где следует найти указание настроек для Вашего пользователя,​ которые записаны в виде 
-<​code>​sudo gedit /​etc/​pamusb.conf</​code>​ где следует найти указание настроек для Вашего пользователя,​ которые записаны в виде +<​code ​xml>…
-<​code>​ +
-+
 <user id="​USER">​ <user id="​USER">​
  <​device>​Flash</​device>​  <​device>​Flash</​device>​
 </​user>​ </​user>​
- +…</​code>​
-</​code>​+
 где вместо <<​USER>>​ написано имя Вашего пользователя. И дополнить данный фрагмент в конфигурационном файле строчками где вместо <<​USER>>​ написано имя Вашего пользователя. И дополнить данный фрагмент в конфигурационном файле строчками
-<​code>​+<​code ​xml>
 <agent event="​lock">​gnome-screensaver-command -l</​agent>​ <agent event="​lock">​gnome-screensaver-command -l</​agent>​
 <agent event="​unlock">​gnome-screensaver-command -d</​agent>​ <agent event="​unlock">​gnome-screensaver-command -d</​agent>​
 </​code>​ </​code>​
 до вида до вида
-<​code>​+<​code ​xml>
  
 <user id="​USER">​ <user id="​USER">​
Строка 109: Строка 96:
  
 Далее запустить <<​pamusb-agent>>​ командой Далее запустить <<​pamusb-agent>>​ командой
-<​code>​pamusb-agent</​code>​+<​code ​bash>​pamusb-agent</​code>​
 и проверить блокировку рабочего стола подключив и отключив накопитель-ключ. и проверить блокировку рабочего стола подключив и отключив накопитель-ключ.
  
-Если все в порядке,​ то следует добавить <<​pamusb-agent>>​ в автозапуск, ​напримероткрыв настройки командой +Если все в порядке,​ то следует добавить <<​pamusb-agent>>​ в автозапуск, ​открыв из скиска программ //Автоматически запускаемые приложения// или выполнив ​команду 
-<​code>​gnome-session-properties</​code>​ +<​code ​bash>​gnome-session-properties</​code>​ 
-и добавив пункт <<​pamusb-agent>>​+и добавив пункт <<​pamusb-agent>>​.
  
 ===== Решение проблем ===== ===== Решение проблем =====
- 
 Иногда может возникнуть ситуация,​ что разблокирования рабочего стола не происходит и при выполнении в терминале команды Иногда может возникнуть ситуация,​ что разблокирования рабочего стола не происходит и при выполнении в терминале команды
-<​code>​pamusb-check $USER --debug</​code>​+<​code ​bash>​pamusb-check $USER --debug</​code>​
 появляется сообщение появляется сообщение
-<​code>​… +<​code>​Pad checking failed</​code>​ 
-Pad checking failed +Возможное решение — удаление папки ​///​home/​$USER/​.pamusb// (см. [[http://​sourceforge.net/​mailarchive/​forum.php?​thread_name=48E40A38.40804%40gmail.com&​forum_name=pamusb-devel|pam_usb Mail]]). Однако если проблема продолжает возникать,​ следует проверить все настройки.
-</​code>​ +
-возможное решение — удаление папки ​<</​home/​$USER/​.pamusb>> ​(см. [[http://​sourceforge.net/​mailarchive/​forum.php?​thread_name=48E40A38.40804%40gmail.com&​forum_name=pamusb-devel|pam_usb Mail]]). Однако если проблема продолжает возникать,​ следует проверить все настройки.+
  
 ===== Ссылки ===== ===== Ссылки =====
-[[http://​habrahabr.ru/​company/​xakep/​blog/​127384/​|Инструкция на habrahabr.ru посвященная,​ в том числе, ​<<PAM USB>>]] +  * [[http://​habrahabr.ru/​company/​xakep/​blog/​127384/​|Инструкция на habrahabr.ru посвященная,​ в том числе, ​«PAM USB»]] 
 +  * [[http://​forum.ubuntu.ru/​index.php?​topic=210107|Обсуждение статьи на форуме]]
  
-{{tag>​pam_usb}} 
  
 +{{tag>​pam_usb Система Администрирование}}