Comments 24
Спасибо за инструкцию, надо будет попробовать на Archlinux настроить. А с putty и connectbot что, они умеют такое?
У меня их под рукой нет. Будет хорошо, если вы попробуете и отпишите — я допишу в пост.
Irssi Conectbot на Android — поддерживает.
SecureCRT — поддерживает, но в настройках соединения необходимо установить Keyboard-interactive
Putty — поддерживает.
По ключу:
Irssi Conectbot на Android — поддерживает.
SecureCRT — поддерживает, но в настройках соединения необходимо установить Keyboard-interactive и Publickey.
OpenSSH — поддерживает.
Putty — поддерживает.

Только всё равно надо вводить пароль для доступа во всех программах (google PAM модуль запрашивает и
Verification code и Password). Не могу понять почему.
Нужно из группы auth удалить другие модули. У вас может быть инклюд другого файла, где вписан pam_unix.so, он как раз и спрашивает пароль.
А куда делать удобная строка из предыдущей статьи в sshd_config?
auth [success=1 default=ignore] pam_access.so accessfile=/etc/ssh/two-factor-skip.conf
My fault. Дописал в статью, но теперь строка немного другая.
Кстати, сегодняшнее обновление Google Authentificator для IOS вышло с багом: при установке поверх имеющегося приложения, удаляются все настроенные ранее генераторы кодов. Как Google пропустили такую проблему при тестировании — непонятно. На этот момент приложение удалено (скрыто) из Apps Store.
И Amazon Web Services, как приличные люди, написали об этом всем кастомерам. В отличии от Google…
UFO landed and left these words here
UFO landed and left these words here
Сначала нужно получить ключ (который my_secret). Он передается google-authenticator'у в виде QR-кода (или его можно получить так). Как правило, реальный ключ, закодированный в base32. Он же передается на вход функции get_totp.

Далее поставить библиотеку onetimepass с помощью pip, как указано по ссылке выше.

Потом запустить python и набрать в нем код выше, заменив токен на свой.

Можно поэкспериментировать, добавив в ga аккаунт с ключом MFRGGZDFMZTWQ2LK.
В общем я так понял главный недостаток схемы — перестаёт работать вход по паролям.
Также хотел внести свои 5 копеек. Чтобы рисовался красивый QR-код, как указано в статье, необходима библиотека libqrencode3. В Debian, к примеру, её по умолчанию нет.
> В общем я так понял главный недостаток схемы — перестаёт работать вход по паролям.
Да.

> В Debian, к примеру, её по умолчанию нет.
Она есть и в jessie (testing), и в wheezy (stable). В статье описана настройка на jessie.
Она есть и в jessie (testing), и в wheezy (stable). В статье описана настройка на jessie.

Странно, я не нашёл в:
Debian GNU/Linux 6.0.7 (squeeze)
Debian GNU/Linux 7.0 (wheezy)
Debian GNU/Linux 7.1 (wheezy)
Linux Mint 13 Maya
CentOS release 6.4 (Final)
Debian GNU/Linux 7.0 (wheezy)
Debian GNU/Linux 7.1 (wheezy)


% apt-cache policy libqrencode3
libqrencode3:
  Installed: (none)
  Candidate: 3.3.0-2
  Version table:
     3.3.0-2 0
        500 http://ftp.debian.org/debian/ wheezy/main amd64 Packages


Про другие вами упомянутые версии не в курсе.
Всё верно:
Installed: (none)

Вы, вероятно, меня не правильно поняли или я неверно выразился. Я не говорил, что её нету в репозиториях. Она просто не установлена по умолчанию и, соответственно, без установки не рисуется QR-код.
А зачем ей быть установленной «по умолчанию»? :)

# apt-cache show libpam-google-authenticator |grep Depends
Depends: libc6 (>= 2.2.5), libpam0g (>= 0.99.7.1), libqrencode3


По зависимостям подтянется. Причём, поставится обязательно, т.к. «depends», а не «recommended» или «suggested».
:).
Потому что в Squeeze и Wheezy 7.1:
# apt-cache show libpam-google-authenticator 
N: Unable to locate package libpam-google-authenticator
E: No packages found

Соответственно надо собирать из исходников -> решать зависимости самим. Причём на отсутствие библиотеки libqrencode3 компиляция не ругается никак и всё работает. Просто не выводится QR-код.
Ну смотрите. В этой статье я указал

У меня используется Debian Jessie (testing), там всё доступно «из коробки»


В wheezy на сегодняшний момент, когда он стал stable, этого пакета уже нет. Однако ничто не мешает стандартным образом бэкпортировать пакет из jessie (testing). Более того, по-моему можно просто бинарный пакет поставить, судя по версиям в зависимостях.

В предыдущей статье, написанной два года назад, упоминался wheezy, но тогда он был testing и там этот пакет был.

Прошу прощения, если я недостаточно ясно осветил этот нюанс и упустил его в нашем общении.
Нашёлся squeeze ещё:

# apt-cache policy libqrencode3
libqrencode3:
  Installed: (none)
  Candidate: 3.1.1-1
  Version table:
     3.1.1-1 0
        500 http://mirror.yandex.ru/debian/ squeeze/main amd64 Packages
Only those users with full accounts are able to leave comments. Log in, please.