Como posso configurar uma segunda chave SSH + usuário para um único servidor?

0

Eu tenho uma chave SSH que é protegida por frase-senha. A autenticação para o servidor é apenas por chave SSH, a autenticação por senha está desativada. Tanto o servidor quanto minha área de trabalho executam o Ubuntu 14.04 e a autenticação com essa chave e o servidor é testado e funcionando.

Meu objetivo é ter cron copiar arquivos da minha máquina desktop para o servidor via rsync . Eu pretendo criar um novo 'backups-user' (com direitos limitados) no servidor e ter o cron em execução no meu desktop para copiar os arquivos para o servidor como este segundo usuário. Isso deve evitar a necessidade de inserir a frase secreta da minha chave SSH primária.

Meu problema é que eu continuo recebendo erros de "Permissão negada (publickey)" quando tento ssh-copy-id a segunda chave SSH para o servidor.

Ambas as chaves SSH (públicas e privadas) foram criadas e estão em ~/.ssh/ na minha área de trabalho. O usuário 'backups-user' foi criado no servidor, mas não consigo fazer login como esse usuário ainda.

Eu estou indo sobre isso da maneira errada, ou existe um método melhor de automatizar o que eu quero fazer?

Aqui está a saída de ssh -v :

tom@desktop:~$ ssh -v [email protected]
OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to XX.XX.XX.XX [XX.XX.XX.XX] port 22.
debug1: Connection established.
debug1: identity file /home/tom/.ssh/id_rsa type -1
debug1: identity file /home/tom/.ssh/id_rsa-cert type -1
debug1: identity file /home/tom/.ssh/id_dsa type -1
debug1: identity file /home/tom/.ssh/id_dsa-cert type -1
debug1: identity file /home/tom/.ssh/id_ecdsa type -1
debug1: identity file /home/tom/.ssh/id_ecdsa-cert type -1
debug1: identity file /home/tom/.ssh/id_ed25519 type -1
debug1: identity file /home/tom/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1p1 Ubuntu-2ubuntu2
debug1: match: OpenSSH_6.6.1p1 Ubuntu-2ubuntu2 pat OpenSSH_6.6.1* compat 0x04000000
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr [email protected] none
debug1: kex: client->server aes128-ctr [email protected] none
debug1: sending SSH2_MSG_KEX_ECDH_INIT
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ECDSA (redacted)
debug1: Host 'XX.XX.XX.XX' is known and matches the ECDSA host key.
debug1: Found key in /home/tom/.ssh/known_hosts:2
debug1: ssh_ecdsa_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
debug1: Next authentication method: publickey
debug1: Offering RSA public key: tom@Desktop
debug1: Authentications that can continue: publickey
debug1: Offering RSA public key: tom@Desktop
debug1: Authentications that can continue: publickey
debug1: Trying private key: /home/tom/.ssh/id_rsa
debug1: Trying private key: /home/tom/.ssh/id_dsa
debug1: Trying private key: /home/tom/.ssh/id_ecdsa
debug1: Trying private key: /home/tom/.ssh/id_ed25519
debug1: No more authentication methods to try.
Permission denied (publickey).
    
por Tom Brossman 28.07.2014 / 19:38

1 resposta

2

ssh-copy-id basicamente inicia uma conexão SSH e copia as chaves perdidas. O problema, no entanto, está em iniciar a conexão SSH. Como somente a autenticação de chave pública é permitida, o servidor só pode aceitar a chave pública de backups-user . No entanto, não há chaves SSH relacionadas a backup-user no servidor. Portanto, ninguém (remotamente) pode efetuar login como backups-user .

Você precisará permitir temporariamente a autenticação de senha ou copiar o arquivo de chave pública para o diretório inicial e usar sudo cp id_rsa.pub ~backups-user/.ssh/authorized_keys no servidor para copiar a chave pública no diretório inicial desse usuário.

    
por saiarcot895 28.07.2014 / 21:13