Não é possível conectar a instância do Google Compute Engine via SSH no navegador

3

Eu sou novo no google cloud, acabei de implantar minha primeira instância estava funcionando bem até ontem, usei a última vez para definir o servidor de e-mail usando este tutorial servidor de e-mail , mas agora não consigo conectar ssh no navegador e também com o google cloud sdk no terminal.

O site está funcionando bem, não sei o que aconteceu Por favor, ajude

a mensagem de erro no navegador

Connection Failed, and we are unable to connect VM on port 22.

a mensagem de erro no terminal

Warning: Permanently added 'xxx.xxx.xxx.xxx' (ECDSA) to the list of known hosts.
Permission denied (publickey).
ERROR: (gcloud.compute.ssh) [/usr/bin/ssh] exited with return code [255].

E o console serial exibe seus shows

Jul 8 10:09:26 Instance sshd[10103]: error: Could not load host key:/etc/ssh/ssh_host_ed25519_key

Jul 8 10:09:27 Instance sshd[10103]: User username from 0.0.0.0 not allowed because not listed in AllowUsers

Jul 8 10:09:27 Instance sshd[10103]: input_userauth_request: invalid user username [preauth] Jul 8 10:09:27 Instance sshd[10103]: Connection closed by 0.0.0.0 [preauth] – 
    
por Rahul Singh 08.07.2015 / 15:34

1 resposta

5

Parece que você adicionou o arquivo de configuração AllowUsers in /etc/ssh/sshd_config .

Para resolver esse problema, você precisará anexar o disco de inicialização de sua instância de VM a uma instância íntegra como o segundo disco. Monte-o, edite o arquivo de configuração e corrija o problema.

Aqui estão os passos que você pode seguir para resolver o problema:

  1. Primeiro, tire um instantâneo do disco da sua instância, caso ocorra uma perda ou dano, você poderá recuperar seu disco.

  2. No Developers Console, clique em sua instância. Desmarque Delete boot disk when instance is deleted e exclua a instância. O disco de inicialização permanecerá em "Discos" e agora você pode anexar o disco a outra instância. Você também pode fazer este passo usando o comando gcloud :

    $ gcloud compute instances delete NAME --keep-disks all
    
  3. Agora, anexe o disco a uma instância íntegra como um disco adicional. Você pode fazer isso por meio do Developers Console ou usando o comando gcloud :

    $ gcloud compute instances attach-disk EXAMPLE-INSTANCE --disk DISK --zone ZONE
    
  4. SSH na sua instância saudável.

  5. Determine o local do disco secundário:

    $ ls -l /dev/disk/by-id/google-*
    
  6. Monte o disco:

    $ sudo mkdir /mnt/tmp
    $ sudo mount /dev/disk/by-id/google-persistent-disk-1-part1 /mnt/tmp
    

Onde google-persistent-disk-1 é o nome do disco

  1. Edite o arquivo de configuração sshd_config , remova AllowUsers line e salve-o.

    $ sudo nano /mnt/tmp/etc/ssh/sshd_config
    
  2. Agora, desmarque o disco:

    $ sudo umount /mnt/tmp
    
  3. Desanexe-o da instância da VM. Isso pode ser feito por meio do Developers Console ou usando o comando abaixo:

    $ gcloud compute instances detach-disk EXAMPLE-INSTANCE --disk DISK
    
  4. Agora crie uma nova instância usando seu disco de inicialização fixa.

por 08.07.2015 / 18:59