Não é possível permitir que usuários efetuem login via SSH (Bash, OpenSSH, CentOS 6.5)

5

Estou executando uma máquina CentOS 6.5 remotamente via SSH. Eu uso chaves RSA e desabilitei a autenticação de senha. O problema que estou tendo é que sempre que eu adiciono um novo usuário e quero que ele faça o login via SSH, eles não têm acesso.

No começo, isso parecia um problema simples. Teses são o que eu já tentei:

  • Verificou a chave do pub em busca de erros óbvios
  • Garantiu as permissões corretas em authorized_keys e ~ / .ssh
  • Verifique se eles estão na lista AllowUsers em ssh_config
  • Permissões de firewall verificadas
  • Verifique se a chave privada está sendo usada
  • SSHD reiniciado

Aqui está o que eu defini em sshd_config :

PermitRootLogin no
AllowUsers keving moman muser

E é isso que meu log está me dizendo:

Login attempted when not in AllowUsers list:
    muser : 3 Time(s)
    root : 127 Time(s)

Por que o SSH não permite login enquanto a lista AllowUsers lista obviamente muser? Existe outro lugar onde isso pode ser definido?

ATUALIZAÇÃO: Eu tentei fazer login nessa conta em minha máquina depois de adicionar minha chave de pub ao arquivo authorized_keys do usuário com a sinalização detalhada -v . Estes são os resultados (com um IP falso e uma chave de host do servidor por motivos de segurança):

$ ssh -v [email protected]
OpenSSH_6.6.1, OpenSSL 1.0.1i 6 Aug 2014
debug1: Reading configuration data /c/Users/[user]/.ssh/config
debug1: Connecting to 111.111.111.111 [111.111.111.111] port 22.
debug1: Connection established.
debug1: identity file /c/Users/[user]/.ssh/id_rsa type 1
debug1: identity file /c/Users/[user]/.ssh/id_rsa-cert type -1
debug1: identity file /c/Users/[user]/.ssh/id_dsa type -1
debug1: identity file /c/Users/[user]/.ssh/id_dsa-cert type -1
debug1: identity file /c/Users/[user]/.ssh/id_ecdsa type -1
debug1: identity file /c/Users/[user]/.ssh/id_ecdsa-cert type -1
debug1: identity file /c/Users/[user]/.ssh/id_ed25519 type -1
debug1: identity file /c/Users/[user]/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.6.1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3
debug1: match: OpenSSH_5.3 pat OpenSSH_5* compat 0x0c000000
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<3072<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: RSA [censored]
debug1: Host '111.111.111.111' is known and matches the RSA host key.
debug1: Found key in /c/Users/[user]/.ssh/known_hosts:4
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /c/Users/[user]/.ssh/id_rsa
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic
debug1: Trying private key: /c/Users/[user]/.ssh/id_dsa
debug1: Trying private key: /c/Users/[user]/.ssh/id_ecdsa
debug1: Trying private key: /c/Users/[user]/.ssh/id_ed25519
debug1: No more authentication methods to try.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
    
por gillytech 21.10.2014 / 00:52

2 respostas

13

Como @toppledwagon sugere nos comentários a minha pergunta, eu verifiquei /var/log/security e com certeza houve uma entrada para permissões ruins na árvore ~/.ssh/authorized_keys incluindo o diretório pessoal.

Depois de fazer essas edições, consegui fazer login na conta do usuário por meio do ssh com as chaves RSA:

$ chmod g-w /home/your_user
$ chmod 700 /home/your_user/.ssh
$ chmod 600 /home/your_user/.ssh/authorized_keys

Ref: link

Depois de ajustar essas permissões, consegui fazer o login. Foi interessante observar que eu já tinha o arquivo .ssh dir e authorized_keys definido como 700 e 600 , respectivamente. Por algum motivo, o diretório inicial não foi definido corretamente.

Obrigado a todos que ajudaram nos comentários.

    
por 22.10.2014 / 00:10
3
  1. Em /etc/ssh/sshd_config , adicione o grupo do seu usuário a AllowGroups .
  2. Reinicie o sshd service sshd restart
por 08.04.2015 / 21:29