O que é o SSH e como ligar a um servidor?
O SSH (Secure Shell) é um protocolo que dá acesso à linha de comandos de um servidor remoto através de uma ligação cifrada. Para ligar ao seu servidor, abra um terminal no seu computador e escreva ssh username@IP-address. Por predefinição, a ligação usa a porta TCP 22.
O SSH é a forma habitual de gerir um VPS. As palavras-passe e os comandos viajam cifrados, por isso é seguro usá-lo pela internet. O mesmo canal também transporta transferências de ficheiros (scp e sftp).
O que precisa para ligar
Precisa de três coisas: o endereço IP do servidor, um nome de utilizador, e uma palavra-passe ou uma chave SSH. No painel da Seturack, abra Os meus servidores e clique no seu servidor. O separador Resumo tem as linhas Endereço IP, Nome de utilizador e Palavra-passe. Nos servidores com uma aplicação de um clique, a página mostra também outra linha Palavra-passe perto do topo. Essa serve para entrar na aplicação. Para o SSH, use a linha Palavra-passe que está sob Nome de utilizador.
Ligar a partir do Windows, macOS e Linux
Abra um terminal: PowerShell no Windows, Terminal no macOS e no Linux. Escreva o comando abaixo. Use o valor da linha Nome de utilizador em vez de root, e o seu endereço em vez do IP de exemplo:
Na primeira vez, o SSH mostra a impressão digital do servidor, que identifica a máquina a que está a ligar. Escreva yes e prima Enter. O seu computador guarda a impressão digital e compara-a em todas as ligações seguintes. Depois cole a palavra-passe. Enquanto a escreve, não aparece nada no ecrã, o que é normal.
A impressão digital permite confirmar que a máquina a que chegou é mesmo o seu servidor. Para ter a certeza, abra a consola VNC no painel, execute no servidor o comando abaixo e compare o valor que começa por SHA256: com o que o seu terminal mostrou:
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub
No Windows 10 (versão 1809) e posteriores, o cliente OpenSSH é uma funcionalidade opcional. Se o comando ssh não for encontrado, adicione o Cliente OpenSSH em Funcionalidades opcionais, nas Definições. Ou execute isto numa janela do PowerShell aberta como administrador:
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
Se o SSH do servidor escuta noutra porta, acrescente -p. Para usar um ficheiro de chave específico, acrescente -i:
ssh -p 2222 -i ~/.ssh/id_ed25519 [email protected]
Depois de ligar, todos os comandos que escrever são executados no servidor. O whoami diz-lhe que utilizador é, e o exit fecha a ligação. Se a sua rede cair, os processos dessa sessão também terminam. Inicie as tarefas longas dentro do tmux e elas continuam a correr quando a ligação cai. Use tmux attach para voltar à sessão.
Transferência de ficheiros e um atalho
A mesma ligação também copia ficheiros. Do seu computador para o servidor, e do servidor de volta para o seu computador:
scp backup.zip [email protected]:/root/
scp [email protected]:/root/backup.zip .
Se não quiser escrever o IP de cada vez, acrescente estas três linhas ao ficheiro ~/.ssh/config do seu computador:
Host myserver
HostName 203.0.113.5
User root
A partir daí, basta ssh myserver.
Uma chave SSH em vez de palavra-passe
Entrar com uma chave elimina o risco de alguém adivinhar a sua palavra-passe, mas só se o acesso por palavra-passe também estiver desativado: adicionar uma chave não o desativa por si. Uma chave tem duas partes: a chave privada fica no seu computador e a chave pública vai para o servidor. O servidor só deixa entrar quem prove ter a chave privada. Crie o par no seu próprio computador. O comando é o mesmo no PowerShell do Windows:
ssh-keygen -t ed25519
Pede uma frase-passe, por isso não a deixe vazia. São criados dois ficheiros: id_ed25519 é a chave privada e nunca a deve partilhar. id_ed25519.pub é a chave pública. Pode adicionar a chave pública ao servidor de duas formas:
- No painel, cole o conteúdo do ficheiro
.pubna ferramenta Chaves SSH do separador Gestão. A chave fica ativa no próximo arranque do servidor. - No Linux e no macOS, se já consegue entrar com a palavra-passe:
ssh-copy-id [email protected]
Depois disso, o mesmo comando ssh liga sem pedir a palavra-passe do servidor. Se definiu uma frase-passe, pede essa. Desativar o acesso por palavra-passe é outra definição do SSH, e a ordem dos passos importa, ou pode ficar sem acesso. Tratamos disso no passo 4 de «Os primeiros 10 passos de segurança num VPS novo».
Erros comuns
| Mensagem | O que significa | O que fazer |
|---|---|---|
| Permission denied | O nome de utilizador ou a palavra-passe estão errados, ou a chave não está registada. | Copie e cole os valores de Nome de utilizador e Palavra-passe do painel. Se usa uma chave, confirme que o servidor foi reiniciado depois de a adicionar. |
| Connection refused | O serviço SSH não está a correr no servidor, ou a porta está fechada. | Confirme que o servidor está a correr. A partir da consola VNC, experimente systemctl start ssh. |
| Connection timed out | O seu pedido nunca chega ao servidor: o IP está errado, o servidor está desligado, ou uma firewall bloqueia a porta 22. | Verifique o IP e o estado do servidor, veja as regras da sua firewall e tente a partir de outra rede. |
| Too many authentication failures | O seu agente SSH ofereceu várias chaves e o servidor atingiu o limite de tentativas. | Ofereça só a chave que quer: ssh -o IdentitiesOnly=yes -i ~/.ssh/id_ed25519 [email protected] |
| REMOTE HOST IDENTIFICATION HAS CHANGED | A impressão digital do servidor neste IP mudou. Se reinstalou o servidor, é o esperado. | Se esperava a alteração, remova a entrada antiga com ssh-keygen -R 203.0.113.5. Se não esperava, não ligue. |
Se introduzir a palavra-passe errada várias vezes seguidas, o fail2ban (que corre nos servidores com aplicação de um clique) bloqueia o seu endereço IP durante algum tempo. Nesse período, a ligação pode expirar. Espere um pouco ou tente a partir de outra rede.
Se não conseguir ligar de todo
- Consola VNC: a ferramenta do separador Gestão abre o ecrã do servidor no navegador. Não depende do SSH, por isso pode verificar o serviço a partir daí.
- Se se esqueceu da palavra-passe: use a ferramenta Repor palavra-passe de root do separador Gestão.
Para os passos do painel em pormenor, veja o artigo de ajuda sobre SSH.
Comentários0
Ainda não existem comentários
Seja a primeira pessoa a partilhar a sua opinião.
Inicie sessão ou crie uma conta para deixar um comentário.