permissão de publickey SSH negada (Google Cloud Platform)

2

Executamos um pequeno punhado de servidores Debian no Google Cloud Platform. Novos servidores que configuramos, podemos adicionar chaves SSH no ponto de criação e acessar as máquinas via SSH sem nenhum problema. Máquinas mais antigas (lidas criadas nos últimos 1-3 meses) estamos tendo problemas para acessá-las via SSH.

Como caso de teste, criei um novo par de chaves id_rsa no meu Mac local usando ssh-keygen e adicionei a chave pública ao GCP. Meu IP tem permissão para acessar a caixa e meu usuário está no AllowUsers em ssh_config.

Aqui está a saída quando eu corro ssh -i ~/.ssh/*KEY* *USER*@*IP* -p *PORT* -v

OpenSSH_6.9p1, LibreSSL 2.1.8
debug1: Reading configuration data /Users/me/.ssh/config
debug1: /Users/me/.ssh/config line ****: Applying options for ****IP****
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line ****: Applying options for *
debug1: /etc/ssh/ssh_config line ****: Applying options for *
debug1: Connecting to ****IP**** [****IP****] port ****PORT****.
debug1: Connection established.
debug1: identity file /Users/me/.ssh/gcp type 1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/me/.ssh/gcp-cert type -1
debug1: identity file /Users/me/.ssh/gcp type 1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/me/.ssh/gcp-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.9
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.7p1
debug1: match: OpenSSH_6.7p1 pat OpenSSH* compat 0x04000000
debug1: Authenticating to ****IP****:****PORT**** as '****USERNAME****'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client [email protected] <implicit> none
debug1: kex: client->server [email protected] <implicit> none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: xxx
debug1: Host '[****IP****]:****PORT****' is known and matches the ECDSA host key.
debug1: Found key in /Users/me/.ssh/known_hosts:1
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
********************************************************************
*                                                                  *
* This system is for the use of authorized users only.  Usage of   *
* this system may be monitored and recorded by system personnel.   *
*                                                                  *
* Anyone using this system expressly consents to such monitoring   *
* and is advised that if such monitoring reveals possible          *
* evidence of criminal activity, system personnel may provide the  *
* evidence from such monitoring to law enforcement officials.      *
*                                                                  *
********************************************************************
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/me/.ssh/gcp
debug1: Authentications that can continue: publickey
debug1: Offering RSA public key: /Users/me/.ssh/gcp
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Permission denied (publickey).  

Apesar de minha chave ter sido encontrada, parece que meu cliente local não está tentando autenticar depois de se conectar. Não tenho certeza se esse é ou não um problema com o GCP não adicionar minha chave pública ao servidor corretamente ou se minha máquina local está ou não fazendo algo errado.

O Google parece ter mudado a forma como lida com as chaves nos últimos meses ( link ), mas parece que estou fazendo tudo corretamente, mas não consigo me conectar.

    
por gsdd 08.04.2016 / 15:08

1 resposta

2

Depois de algumas pesquisas, parece que o Google Cloud Platform está com bugs quando se trata de aplicar chaves SSH às nossas caixas do Debian. Adicionando as chaves globalmente em um nível de projeto, ou adicionando usuários manualmente à caixa Debian, adicionando chaves manualmente a authorized_keys para cada usuário, ele funciona. Adicioná-los em um nível de instância não funciona. Eu vou reportar o bug para o Google.

    
por 08.04.2016 / 18:13