Pull to refresh

Comments 86

>Откройте Google Play Store на вашем Android-устройстве
2.Найдите через поиск «google authenticator»
3.Тапните по наименованию от компании Google Inc.
4.Тапните «Установить»
5.Тапните «Принять»
6.Дождитесь завершения установки

Это хабр или одноклассники?
В одноклассниках написали бы «трогните» вместо «тапните» :)

Это не повод переводить шлак.

Без ынтернета работать не будет.
Для защиты от просто случайных любопытных достаточно обычного пароля.
А для чувствительных данных есть truecrypt, veracrypt и т.д.

Вообще-то будет прекрасно работать и без интернета. Почитайте про TOTP алгоритм.

Почитал, идея очень понравилась. В предлагаемом решении используется именно TOTP?

Да, google authenticator, как и многие TFA решения используют данный алгоритм.
Можно глянуть вики.

UFO just landed and posted this here
Моветон — писать андроид через «й».
или утечёт через очередную из 100500 дырок

Что утечёт?
или батарейка сядет в самый ответственный момент

Вы логинитесь на компьютере. Подключите USB шнур к нему и подзарядитесь. Шнурок-то не сложно с собой таскать.
Подключите USB шнур к нему и подзарядитесь.

А у меня на телефоне сломан USB разъём. (Я вторую батарейку зарядником заряжаю и меняю. Без шуток.)

Починить разъем не дешевле, чем покупать батарейку и каждый раз такое неудобство терпеть?

Смотрел — разъём напаян планарной пайкой (естественно), а я привык паять по-старинке — "в дырочки". "Неудобства" на 10 секунд — открыл крышку, сменил батарейку, закрыл крышку; заодно почти всегда есть запасная батарейка, что скорее преимущество.

UFO just landed and posted this here
>В итоге: зачем с этим связываться?

Так не связывайтесь. Вас ведь не заставляют

>Плюс куча невменяемых приложений в маркете которым нужен полный доступ ко всему, даже фонарику нужен и вайфай и блютус и платные смс,

По-моему, вы слишком много читали журнал хацкер.
И,… это,… а зачем вы их таких невменяемых ставите?
UFO just landed and posted this here
А вы попробуйте себе всякую дрянь не ставить (и хацкер не читать), глядишь, жизнь и наладится.
Кстати, я бы с удовольствием почитал описание типов атак, от которых вы так старательно бережётсь.
UFO just landed and posted this here
Мда. А ещё он грабит корованы…
есть менее безопасный и более дешёвый способ — использовать в качестве этого обычную флешку и настроить pam_usb
>батарейка сядет в самый ответственный момент
Для этого есть резервные коды.

Как отнесутся к такому Chef / Ansible? Если Chef ещё может и ничего — всё-таки там не требуется логин, ноды сами вытягивают данные, то Ansible требует установки SSH соединений с управляющей машины.

Я когда-то писал статью о 2FA для SSH на основе google authenticator, более подробную: https://habrahabr.ru/post/186376/ — упоминал в примере конфигурации плагин pam_access.so, он может определённым IP адресам отключать 2FA.
То есть, в таком случае работает старый добрый, IP-спуфинг с перебором паролей...(Хотя тут стоит вспомнить про преимущество SSH без пароля).
Нельзя просто вклбючить 2FA для избранных учёток, а служебным оставить аутентификацию по ключу?
А как это всё выглядит в гуй через k/gdm?
Я для локального входа настраивал PAM исключительно по LastPass Authenticator. GDM3 выглядит ровно так же. Сначала выбираешь пользователя или вводишь его логин если отключен список, после вводишь «Verification Code» в поле, куда раньше пароль вводился.

Думаю с KDM/SDDM ситуация аналогична.
Ужасная реализация. Лучше в сейф комп спрятать.
Поставил +1 за перевод/труд. И надо бы -1 за идею, реализацию и вообще выбор гугла и андроида как секьюрной части системы. Но это уже к автору, а не к переводчику.

Сама идея хорошая (когда требуется подтверждение доступа «штукой из вне»), но как заметили выше, есть смарткарты, ест токены, есть дофига чего «железного», вместо того, чтобы сливать свои данные в гугл или давать гуглу управлять доступом к машине. Или использовать гребаную звонилку!

И не вопрос о том, что какой-нибудь хрен мне сейчас ответит "Я лучше доверю свои данные гуглу чем @#$%", а в том, что год от года люди, которые отвечают или хотят отвечать за безопасность тупеют, и вся надежда на старых параноиках.

На компьютере Джека, Оливии или Васи — пофигу, особенно если они используют линукс вида ради, и работают с виндузятным софтом. Так что и теги неправильные: сервер и безопасность.
А теперь давайте рассмотрим итоговую стоимость системы, на смарткартах, токенах и т.п. или купить дешевый android-телефон, выключить в нем радиомодуль и установить на него FreeOTP и пользоваться сканером в виде камеры и qr-кодов.
Токены и смарткарты стоят от 20 баксов.
Ок, умножаем на количество серверов, куда нужно ходить. И для каждого отдельный токен. Недёшево выходит. Для смарткарты — ещё ридер таскать.
На один токен можно несколько ключей записать. Посмотрите в сторону yubico
или наоборот, один ключ на всех серверах (это не тоже что и один пароль на всех)
Смарткарты — фигня, вы попробуйте ридеры дешево купите!
К тому же на каждый чих своя карта или тем более токен, вы осознаете с какой сумкой будете ходить, если у вас много серверов, машин, аккаунтов?
Для лаптопа можно найти на 8 баксов с Амазона.
По моему тут речь шла о большом брате — владельце смартфона, операционки и соответственно данных под ее контролем (в любой момент на конкретный смартфон может прилететь обновление, сливающее вся и все разработчику и вы не сможете это ни отменить ни проследить).

ну купите аппаратный TOTP, как это относится к теме статьи? Она — про двухфакторную авторизацию, а не про производителей смартфонов.

Тем самым и относится, что Анроид, что Гугл, что приложение от гугла.

Скачайте исходникки и проведите аудит?


Статья решает конкретную проблему — двухфакторную авторизацию. И да, это безопаснее, чем просто ssh ключи.

Во-первых:
Open source version of Google Authenticator (except the Android app)


Во-вторых:
На кой черт мне проводить аудит их софта с гитхаба и расковыривать приложение под Андроид и проводить и его аудит, если мне нужна авторизация через звонилку как козе баян?

Ну и, в третьих:
кража — ssh и мобилка (но пароли и там и там, мобилка равна по защите если юзер шифровал данные на устройстве)
вирусы — мобилка
Android app — мобилка
Ведро говнософта-из-коробки — мобилка

Как минимум 4 потенциальных уязвимости к мобилке и 1 к ssh.
Хорошо, вы умудрились заразить свою андроид-мобилку трояном (вирусов на эту платформу всё ещё нет). Что сможет троян? Особенно если у вас не рутованное устройство…

В одной из теорий заговора предполагается, что все устройства на андроиде изначально заражены трояном.

UFO just landed and posted this here
This project is an older fork of the one on the Play store. It's an older version that doesn't get changes synced to it from the Play store version.

Та версия, что в play market — закрытая. Причём версия с гитхаба ещё и ходит на google.com для обхода проблемы с кривым временем на устройстве. Никакого криминала, просто использует заголовок Date.

Если вы не доверяете гуглу, то используйте вместо Google Authenticator любую другую TOTP программу. Например, Authy.
Authy хранит на своих серверах шифрованный, по их словам, бэкап. Лучше FreeOTP, она разработана Red Hat и исходники открыты.
Вы считаете, что это менее безопасно, чем без 2fa? Всяко лучше просто пароля, телефон надо ещё сначала украсть, а украсть телефон и подобрать пароль одновременно — куда сложнее, чем просто подобрать пароль. Если нет средств на аппаратные ключи, почему не использовать это решение?
Предложенное решение — очень хороший компромисс между безопасностью с одной стороны и стоимостью и масштабируемостью с другой. Оно явно более надежное, чем просто пароль. Гораздо лучше работает с виртуалками и по vpn, чем смарткарты (можно перезапустить парочку серверов из электрички через планшет, со смарткартами не пройдет такой номер). И масштабируется в разы лучше (развернуть на десять серверов так же легко, как и на два).
Никто вас не заставляет пользоваться Гугловскими продуктами, вы можете скачать Google Authentificator на iOS устройство, или использовать аналоги Google Authentificator, работающие по этому же алгоритму
> Ваша Linux-машина теперь гораздо более защищена, чем это было до двухфакторной аутентификации. Несмотря на то, что некоторым этот процесс может показаться хлопотным, я настоятельно рекомендую ее настроить…

С чего бы это?

Если есть физический доступ к десктопу.
Где, в этом переводном туторе про шифрование?
Ну, в этом туториале ещё не написано, что не стоит в качестве пароля использовать qwertyuiop. Возможно, это потому, что статья про другое. Не?
Мой первый комментарий к конкретной цитате из перевода. Давайте, если и вести диалог, то применительно к нему?

Если смысл его для вас непонятен, сформулирую еще раз подробнее, при наличии физического доступа к десктопу, что двухфакторная авторизация, что однофакторная, что запуск DE без логина, что загрузка в single — в плане защиты одно и тоже.

И очень плохо, что про это в статье нет ни слова. Видимость защищенности — много хуже, чем отсутствие этой самой защищенности.
Ну, если вам непонятно, я поясню.
Во-первых, с чего вы взяли, что есть физический доступ к десктопу?
Во-вторых, в статье не сказано ни слова о десятках других необходимых пунктах регламента защиты. Она только про один из них.
В третьих, про шифрование уже сказали.
Как минимум, записанный на бумажке, приклеенной к монитору, пароль для входа становится недостаточным для входа стороннего человека :)
UFO just landed and posted this here
Есть одно но — у Google Authenticator нет бэкапа, и в случае утери\поломки\форматирования телефона, есть риск нарваться на проблемы.
Использую аналог Authy. Он и в Хроме, и на андроиде активен, + синхронизация.
Работает только на ubuntu 16.x и выше?
Работать будет везде, где используется PAM.
Круть за вопрос теперь минусуют :) Еще!
У меня украли (сломался, утопил, потерял) смартфон. Что делать?
после выполнения команды google-authenticator будут сформированны запасные пин коды для таких случаев
Еще можно сделать бэкап папки /data/data/com.google.android.apps.authenticator2/databases (потребуется рут) и потом подсунуть ее в новое устройство с установленным Google Authenticator (работает, скорее всего, не только для него, для Yandex Authenticator тоже работает).
Покупать новый телефон, восстановить данные с бекапа, продолжать пользоваться.
У меня в Ubuntu 14.04 метод с файлом /etc/pam.d/common-auth не сработал, при попытке залогинится через любую учетную запись система отказывалась принимать пароли.

Решилось так, добавил строку auth required pam_google_authenticator.so в конец файла /etc/pam.d/sshd, в файле /etc/ssh/sshd_config в строчке ChallengeResponseAuthentication поменял no на yes. После перезапуска сервиса ssh все заработало.
А как заводить нового пользователя? Вот пришел новый админ и ему нужно дать доступ на сервер. Как я понимаю эта авторизация должна настраиваться лично пользователем, но он не сможет попасть на сервер, пока не настроит эту авторизацию…
Что чаще? У вас воруют SSH-ключ и пароль или ломают вебсайтик и запускают локалрут сплоет на сервере, который год не перезагружался? От чего эта защита?)
Чаще у вас дохнет телефон, на который настроена эта штука. Проблема на ровном месте. На SSH необходимо и достаточно иметь ключи. Можно быстро сбацать скрипт, чтобы хранить половину ключа на телефоне.
Меня одного смущает команда «sudo su username» вместо «sudo -u username -i»?
это нормальная тема, просто перевод...)
Вероятно полезная штука, но у меня на ноуте в /etc/sudoers стоит NOPASSWD для %root :)
Пользовался 2FA для SSH от DuoSecurity на большом количестве серверов.

Платно, централизованное управление.

Chef работает, так как использует pull модель для получения данных.
У Ansible возникли бы проблемы.

Если не нравится Android/iPhone как устройство для аунтификации:
— можно получать 2FA код через SMS
— можно купить аппаратные tokens
pull для ансибла реализуется тривиальным хаком с git pull && ansible-playbook -i hosts site.yml --limit `hostname`

Или использованием готового скрипта ansible-pull, который фактически делает тоже самое.

Sign up to leave a comment.

Articles