sshd: como habilitar a autenticação PAM para usuários específicos em

9

Estou usando o sshd e permito logins com autenticação de chave pública.

Desejo permitir que usuários selecionados façam login com um módulo de autenticação de dois fatores do PAM.

Existe alguma maneira de permitir a autenticação de dois fatores do PAM para um usuário específico?

Da mesma forma - só quero habilitar a autenticação de senha para contas específicas. Quero que meu daemon SSH rejeite as tentativas de autenticação de senha para impedir que hackers pensem que eu não aceitarei autenticação de senha - exceto no caso em que alguém conhece minha conta secreta fortemente protegida, que está ativada por senha. Quero fazer isso nos casos em que meus clientes SSH não me permitem fazer chave secreta ou autenticação de dois fatores.

Brad
fonte
Qual produto de dois fatores?
Scott Pack
google-authenticator
Brad

Respostas:

8

Você provavelmente poderia lidar com isso com o pam_listfilemódulo. Crie um /etc/pam.d/sshdarquivo parecido com:

auth requisite  pam_listfile.so item=user sense=allow file=/etc/authusers
auth sufficient pam_securid.so
auth required   pam_deny.so

Isso permitiria que apenas as pessoas listadas na /etc/authuserscapacidade de se autenticar com um módulo de dois fatores (no nosso caso, secureid). Na verdade, eu não testei essa configuração, mas a teoria é sólida.

Você poderia simplificá-lo permitindo que qualquer pessoa se autenticasse usando autenticação de dois fatores; presumivelmente, apenas as pessoas com os dispositivos / configurações apropriadas seriam capazes de obter êxito, para que você tenha efetivamente o mesmo comportamento.

larsks
fonte
Estou fazendo algo meio semelhante - sshd permite Chal / Resp e chave secreta. Somente uma conta está realmente configurada para o desafio / resposta do Google Authenticator - portanto, outras contas DEVEM usar apenas a Chave Secreta. Eu acho que isso é tão bom quanto eu estou indo para obter ...
Brad
3

Usando a solução abaixo, o PAM Module (google authenticator) pode ser desativado para usuários específicos -

1) Crie um grupo de usuários na instância do Linux. O MFA / PAM será desativado para os usuários presentes neste novo grupo.

sudo groupadd <groupname>

2) Criar usuário ou adicionar usuário existente ao grupo recém-criado

sudo useradd <username>
sudo usermod -a -G <groupname> <username>

3) Edite o arquivo /etc/pam.d/sshd e adicione a instrução abaixo para pular o módulo PAM para o grupo recém-criado

auth [success=done default=ignore] pam_succeed_if.so user ingroup <groupname>

Opcional-

Se for necessário acesso total a esse novo grupo, adicione a linha abaixo ao arquivo visudo-

%<groupname>ALL=(ALL)       NOPASSWD: ALL

Quando um usuário será criado e adicionado ao novo grupo, o MFA será ignorado para esses usuários.

Referenciado a partir de - TechManyu Blog

Abhimanyu Garg
fonte