Двухфакторная аутентификация SSH на нескольких серверах

Я новичок, когда дело доходит до двухфакторной аутентификации. У меня есть общая идея реализации двухфакторной аутентификации на одном сервере. Но мне было интересно, есть ли стандартное решение для его реализации на нескольких серверах.

СЦЕНАРИЙ:

Итак, есть куча машин *nix (около 50), для которых я хочу включить двухфакторную аутентификацию. Если я включу двухфакторную аутентификацию ssh с использованием Google authenticator ( https://www.digitalocean.com/community/tutorials/how-to-protect-ssh-with-two-factor-authentication) на всех компьютерах, это не кажется как хорошая идея для генерации и отслеживания отдельных кодов авторизации. Есть ли способ, которым я могу упростить весь процесс.

EX:
Можно ли как-то использовать двухфакторную аутентификацию ssh один раз и переслать ее с моими ssh-запросами на все машины? Как прокси-машина, которая может обрабатывать OAuth для остальной части моего стека? Также существуют ли существующие системы / программное обеспечение / услуги, которые могут облегчить внедрение? Я также открыт для новых архитектурных проектов.

Заранее спасибо!

PS:
В настоящее время мы используем проверку подлинности на основе ssh-ключа на всех наших компьютерах.

2 ответа

Если вашей основной целью является однократная аутентификация и доступ ко всем вашим машинам без повторной аутентификации, вы можете использовать аутентификацию на основе хоста с помощью промежуточного хоста: https://www.digitalocean.com/community/tutorials/how-to-configure-ssh-key-based-authentication-on-a-linux-server.

(Извините, если вы уже знали об этом варианте.)

Если у вас есть изолированная сеть (никто не может использовать вашу подсеть), вы можете отключить общедоступный доступ SSH для всех машин (будем называть их частными), за исключением одной / двух машин (общедоступных машин).

Общедоступные машины имеют двухфакторную аутентификацию.

Частные машины не имеют двухфакторной аутентификации. Порт SSH частных компьютеров доступен только с определенного IP-адреса (например, вашей подсети или IP-адреса общедоступных компьютеров).

Так обычно делают люди в среде AWS с общедоступной подсетью. Экземпляры только с частным IP-адресом, доступные только из экземпляров, имеющих публичный доступ.

Таким образом, всякий раз, когда вы хотите получить доступ к вашим частным машинам, вы должны сначала войти на публичный компьютер. И тогда, оттуда, вы можете войти на любые машины.

Другие вопросы по тегам