Parece que você configurou sua chave de cliente para exigir uma senha para abrir a chave antes de se conectar ao servidor. Ele não será registrado pelo seu servidor porque isso ocorre na máquina do cliente.
Eu já configurei o login para ssh com as teclas e ele funciona bem. O problema é que, quando estou me conectando ao servidor com a chave e a senha incluída, não vejo nenhuma tentativa de login com falha quando digito uma senha incorreta. Não há tentativas de login com falha usando a digitação:
/var/log/audit/audit.log
ou
/var/log/secure
Outras palavras eu posso digitar a senha para chave até que eu morra sem qualquer ação. Você tem alguma idéia de como logar para tentativas de login com falha no ssh usando a chave com senha?
OS são: Servidor Red Hat Enterprise Linux versão 7.3 (Maipo)
Obrigado antecipadamente.
Este é o log do servidor quando eu digitei muitas vezes senha errada:
Connection from my_ip port 51115 on server_ip port 22
sshd[3639]: Found matching RSA key: 00:12:23 ...
sshd[3639]: Postponed publickey for some_user from ip_address port 51115 ssh2 [preauth]
Basicamente, a frase secreta que protege a chave SSH é completamente uma questão do lado do cliente. Considere que mesmo ssh-keygen
permite alterar a frase secreta sem uma conexão com qualquer servidor ( ssh-keygen -p -f id_rsa
). É claro que isso exige conhecer a frase-senha antiga, mas você pode (tentar) adivinhar sem sugerir o servidor que está fazendo isso.
Dito isto, ao se conectar a um servidor, o cliente SSH oferece ao servidor todas as chaves que ele tem antes pedindo uma senha para descriptografar a chave. Você notará que, se você se conectar a um host que não aceita sua chave, a frase secreta nunca será solicitada.
$ ssh -v -v somehost
...
debug1: Offering RSA public key: /...
debug2: we sent a publickey packet, wait for reply
debug1: Server accepts key: pkalg ssh-rsa blen 407
debug2: input_userauth_pk_ok: fp blah
debug1: key_load_private_type: incorrect passphrase supplied to decrypt private key
Enter passphrase for key '/...':
Tecnicamente, você pode modificar o servidor para detectar um cliente que ofereça uma chave, mas não efetua a autenticação com ela. Mas isso não ajudaria, já que qualquer atacante poderia simplesmente tentar descriptografar as chaves antes de tentar autenticar. Novamente, isso é possível mesmo com os utilitários usuais: é o que você faz ao executar ssh-agent
.
Se uma chave não for suficiente para você, as versões atuais do OpenSSH permitem que o servidor exija uma chave e uma senha. A documentação fornece isso como um exemplo para exigir primeiro uma chave, depois uma senha (usando "senha" ou "teclado"). autenticação "interativa":
AuthenticationMethods publickey,password publickey,keyboard-interactive