Alguém pode explicar o 'PasswordAuthentication' no arquivo / etc / ssh / sshd_config?

23

Em esta página , a explicação dada é:

The option PasswordAuthentication specifies whether we should use password-based authentication. For strong security, this option must always be set to yes.

Mas não fornece cenários de casos de uso que esclarecem quando um Sim ou não seria apropriado. Alguém por favor pode elaborar mais?

    
por Zeta2 09.07.2010 / 07:44

4 respostas

19

Seu link aponta para documentação 10 anos desatualizada.

O SSH suporta várias maneiras de autenticar usuários, o mais comum é pedir um login e uma senha, mas você também pode autenticar o usuário com um login e uma chave pública. Se você definir PasswordAuthentication como no, não poderá mais usar um login e uma senha para autenticar e deverá usar um login e uma chave pública (se PubkeyAuthentication está definido como sim)

    
por 09.07.2010 / 07:50
48

Observe que a configuração PasswordAuthentication não controla TODA a autenticação baseada em senha. ChallengeResponseAuthentication geralmente também pede senhas.

A PasswordAuthentication controla o suporte para o esquema de autenticação de 'senha' definido no RFC-4252 (seção 8). A ChallengeResponseAuthentication controla o suporte para o esquema de autenticação 'keyboard-interactive' definido no RFC-4256. O esquema de autenticação "teclado-interativo" poderia, em teoria, perguntar a um usuário qualquer número de questões multifacetadas. Na prática, muitas vezes pede apenas a senha do usuário.

Se você deseja desativar totalmente a autenticação baseada em senha, defina BOTH PasswordAuthentication e ChallengeResponseAuthentication como 'no'. Se você é da mentalidade de cinto e suspensórios, considere configurar o UsePAM como 'não' também.

Autenticação baseada em chave pública / privada (ativada pela configuração PubkeyAuthentication) é um tipo separado de autenticação que não envolve o envio de senhas de usuário para o servidor, é claro.

Alguns argumentam que o uso de ChallengeResponseAuthentication é mais seguro do que PasswordAuthentication porque é mais difícil de automatizar. Portanto, eles recomendam deixar a PasswordAuthentication desabilitada enquanto deixa a ChallengeResponseAuthentication habilitada. Essa configuração também incentiva (mas não necessariamente evita) o uso da autenticação de chave pública para qualquer log-in automatizado do sistema. Mas, como o SSH é um protocolo baseado em rede, o servidor não tem como garantir que as respostas para ChallengeResponseAuthentication (também conhecidas como 'interativas por teclado') sejam realmente fornecidas por um usuário sentado em um teclado, desde que o (s) desafio (s) sempre e consiste apenas em pedir uma senha ao usuário.

    
por 03.01.2012 / 20:35
3

PasswordAuthentication é a implementação mais fácil, pois não há nada a fazer. A parte contrária é que você envia sua senha, através de uma conexão criptografada, para o servidor. Isso pode ser um problema de segurança se o servidor tiver sido comprometido, pois a senha poderá ser capturada.
Com a chave pública, sua senha não é transmitida para o servidor, é mais segura, mas precisa de mais configurações.

    
por 09.07.2010 / 13:13
0

Você pode defini-lo como não ao usar chaves ou forçar seu uso.

    
por 09.07.2010 / 07:48