Estou tentando há horas configurar corretamente o ssh MFA com a chave pública ou a senha sendo solicitada antes do código OTP no Debian 12.
Atualmente, consigo configurar publickey+MFA e password+MFA, mas não consigo configurar publickey|password+MFA
chave pública+MFA
Editar
/etc/pam.d/sshd
- Comentário
@include common-auth
- Adicione
auth required pam_google_authenticator.so
na linha depois
- Comentário
Crie um arquivo
/etc/ssh/sshd_config.d/mfa.conf
com o seguinte conteúdo
UsePAM yes
ChallengeResponseAuthentication yes
AuthenticationMethods publickey,keyboard-interactive
Com esta configuração consigo logar com publickey+MFA, porém ao usar a senha recebo umaPermission denied (publickey)
senha+MFA
Editar
/etc/pam.d/sshd
- Manter
@include common-auth
- Adicione
auth required pam_google_authenticator.so
na linha depois
- Manter
Crie um arquivo
/etc/ssh/sshd_config.d/mfa.conf
com o seguinte conteúdo
UsePAM yes
ChallengeResponseAuthentication yes
Com esta configuração consigo logar com password+MFA, porém ao utilizar a publickey auth o código OTP não é pedido
Tentei muitas configurações diferentes e fiz muitas pesquisas, mas não consigo encontrar uma maneira de configurar a autenticação como eu quero.
Por exemplo com
AuthenticationMethods publickey,keyboard-interactive password,keyboard-interactive
Consigo efetuar login corretamente com publickey+MFA, mas quando uso a senha recebo a mensagem "Permissão negada", mesmo usando a senha correta.
Eu até tentei usar um arquivo de configuração pam personalizado como segue
auth substack pam_unix.so
auth required pam_google_authenticator.so
auth requisite pam_deny.so
auth required pam_permit.so
Mas nada que tentei funciona corretamente
Não entendo por que é tão difícil configurá-lo, já que o sshd lida com isso nativamente, mas ao adicionar OTP MFA, ele não pode ser conectado diretamente após a autenticação básica do sshd
Se alguém encontrar uma maneira de obter essa configuração, ficarei feliz em saber.
desde já, obrigado