Как настроить аутентификацию по одноразовому паролю?
У меня есть домашняя сеть, к которой я получаю удаленный доступ. Но я беспокоюсь о безопасности. Хотя у меня есть надежные пароли, я боюсь, что кто-то получит мой пароль и использует его для получения доступа.
Я слышал об "одноразовых паролях" и даже стал их использовать в моем университете. Мы просто нажимали кнопку на устройстве (или запускали приложение на телефоне) и получали сгенерированный пароль, который работал бы в течение следующей минуты или около того.
- Как я могу настроить что-то подобное?
- Существуют ли системы, которые просты в использовании и настройке?
- Кто-нибудь играл с SDK одной из этих систем?
- Где я могу получить стартовый комплект?
РЕДАКТИРОВАТЬ: я работаю в смешанной сети Linux и Windows, и я смутно надеюсь использовать это для аутентификации в обеих операционных системах. (Нет, контроллера домена нет, но я могу настроить его с помощью Samba, я полагаю.)
5 ответов
В Linux это называется S/Key: здесь
Не гизмо кнопки, но вы заполняете ее и распечатываете список одноразовых паролей, чтобы носить с собой. Чтобы заставить его работать со смешанной средой, вам нужно, чтобы он работал на вашем Windows-боксе, затем заставить Linux-систему авторизоваться на этом или (проще) запустить его на Linux, а затем связать его с Samba, чтобы Windows могла его аутентифицировать.
Google твой друг.
S/Key отлично подходит для недорогой реализации OTP. Если вы действительно беспокоитесь об этом, то также переживайте о том, что ваши сессии будут захвачены после того, как они будут инициированы. В этом случае вы можете рассмотреть SSH туннель для шифрования вашего трафика. SSH также лучше подходит для туннелирования других приложений через него после настройки доступа. Наконец, если у вас нет простого способа носить с собой SSH-клиента (или не доверять SSH-клиентам других людей), есть несколько веб-SSH-клиентов, которые вы можете предложить со своего собственного сервера - так что это под вашим контролем, но доступно из любого браузера.
Один из подходов может быть следующим:
Вам нужно будет создать программу, которая будет генерировать пароль, который будет приниматься только вашей домашней системой в течение определенного периода времени.
Например Когда вы запустите программу, выходные данные будут действительны в течение определенного промежутка времени и будут приняты вашей домашней системой безопасности, поскольку система также будет генерировать одинаковые выходные данные при сопоставлении хеша, хитрость заключается в том, чтобы получить одинаковый хеш в обоих местах.,
Я думаю, это потребует еще большего мозгового штурма!!!!
Первое, что вам нужно решить, это то, какой протокол аутентификации будет вашим стандартом. Я рекомендую Radius, особенно для двухфакторной аутентификации на предприятии. Радиус поддерживается всеми основными провайдерами VPN и сетей, а также всеми основными провайдерами 2FA.
Затем рассмотрите услуги, которые вы хотите защитить. Для Linux это обычно означает PAM. К счастью, добавить 2FA в Linux через pam довольно безболезненно: http://www.wikidsystems.com/support/wikid-support-center/how-to/pam-radius-how-to/. Для служб Windows вы захотите направить их через ISA или VPN.
Вы можете настроить все ваши запросы радиуса для прохождения через AD, используя плагин MS radius IAS / NPS. http://www.networkworld.com/news/2010/050710-two-factor-authentication-through-windows-server.html?source=nww_rss
Наконец, при выборе решения 2FA просто убедитесь, что они поддерживают радиус.
Что касается SDK, то это ситуация для каждого поставщика. Вот ссылка на нашу: http://www.wikidsystems.com/downloads/network-clients
хт, ник
В качестве дополнения к посту renegadeMind, один из способов сделать это - иметь программу на обоих концах, которая генерирует последовательность случайных чисел. Свойство генераторов псевдослучайных чисел (PRNG) заключается в том, что если вы запустите их с одинаковым начальным числом, они будут продолжать генерировать одинаковую последовательность случайных чисел. Таким образом, в зависимости от вашего опыта (или наличия технологий) вы можете настроить свою сеть на генерацию нового пароля каждые x минут. Затем вы можете взять с собой часть программного обеспечения, которое будет работать на телефоне или другом встроенном оборудовании, которое вычислит, какой шаг в последовательности выполняет PRNG, и затем отобразит текущий пароль для вас.
Сказав, что безопасность вашей системы будет ограничена выбранным вами начальным числом и временем, в течение которого каждый ключ действителен.
В дополнение к этому, вероятно, есть программное решение, которое сделает это за вас. ИМХО, лучше взять существующую реализацию, чем заново изобретать колесо.
Изменить: В Википедии есть хорошая статья здесь. Часть о конкретных технологиях OTP, вероятно, будет наиболее актуальной.
Удачи, хотя!