Ansible SSH Connection при использовании Google-Authenticator - PullRequest
0 голосов
/ 29 сентября 2019

Я хотел бы задать вопрос, который может не иметь ответа, но это спасет мою жизнь.

Итак, вчера я начал использовать google-authenticator для проверки второго фактора на всех моих серверах.

Я настраиваю все свои хосты с помощью Ansible, поэтому для меня очень важно иметь соединение с него, очевидно, поэтому, что я сделал, так это добавил эту строку в мой /etc/pam.d/ssh файл

auth [success=done default=ignore] pam_access.so accessfile=/etc/security/access-local.conf

, который, я думаю, возвращает успех, если я отвечаю правилам, которые я добавил в /etc/security/access-local.conf

#localhost doesn't need two step verification
+ : ALL : <<localnetworkip>>/24
+ : ALL : LOCAL
#All other hosts need two step verification
- : ALL : ALL

Так что я разрешаю любую машину из моей локальной сети.Это работает, когда я пытаюсь выполнить ssh от моего ansible к хосту (он не запрашивает у меня код подтверждения), но когда я пытаюсь запустить ansible playbook на том же локальном IP, я получаю:

фатально: [Host]: недостижимо!=> {"change": false, "msg": "Не удалось подключиться к хосту через ssh: разрешение отклонено (клавиатура-интерактив).", "unreachable": true}

Я думаюAnsible не знает, как обрабатывать взаимодействие с клавиатурой, кто-нибудь умудрился обойти это?

Спасибо

1 Ответ

0 голосов
/ 29 сентября 2019

Так что я понял, как обойти это, по крайней мере, для моего случая.

В конце я добавил следующее правило в / etc / ssh / sshd_config

Match Address <<localnetworkip>>/24
    AuthenticationMethods publickey keyboard-interactive

Итак, аутентификация Googleбольше не является обязательным из внутренней сети

...