O PuTTY é um cliente SSH leve e veterano para Windows, útil quando quer sessões guardadas e uma janela gráfica de definições. Neste guia vai ligar-se ao seu VPS Linux Infrawire, manter a sessão ativa, passar à autenticação por chave com o PuTTYgen e o Pageant e transferir ficheiros com o pscp.
📋 Pré-requisitos
- Windows 10 ou 11.
- Um VPS Linux em execução (Ubuntu 24.04, Debian 12, AlmaLinux 9 ou Rocky 9).
- O endereço IP do VPS e a palavra-passe de root: na sua área de cliente encontra o IP e a palavra-passe root do VPS.
- O PuTTY instalado, que inclui
putty.exe,puttygen.exe,pageant.exeepscp.exe.
Com o winget, a instalação cabe numa linha de PowerShell:
PowerShellwinget install PuTTY.PuTTY
🔌 Criar e guardar uma sessão
- Abra o PuTTY. Na categoria Session, escreva
VPS_IPem Host Name (or IP address). - Mantenha Port em
22(ou na sua porta personalizada) e Connection type em SSH. - Na caixa Saved Sessions escreva um nome como
myvpse clique em Save. - Opcional: em Connection > Data, preencha Auto-login username com
rootpara não ser questionado. - Volte a Session, selecione
myvps, clique em Save outra vez e depois em Open.
Na primeira ligação, o PuTTY mostra um aviso PuTTY Security Alert com a impressão digital da chave do servidor. Clique em Accept apenas se confiar no servidor: a chave fica então memorizada no registo.
⏱️ Evitar desligações com o keepalive
As sessões inativas são muitas vezes cortadas por routers e firewalls. Abra Connection, defina Seconds between keepalives como 30, volte a Session e guarde novamente myvps. O PuTTY passa a enviar um pequeno pacote a cada 30 segundos.
🔑 Gerar um par de chaves com o PuTTYgen
Abra o PuTTYgen, escolha EdDSA (Ed25519) como tipo de chave e clique em Generate, movendo o rato sobre a área em branco. Depois:
- Introduza uma Key passphrase e confirme-a.
- Clique em Save private key e guarde o ficheiro
.ppknum local seguro. - Copie o texto de Public key for pasting into OpenSSH authorized_keys file.
Ligue-se com a sua palavra-passe e instale a chave pública no VPS (cole no ficheiro a linha copiada):
Bashmkdir -p ~/.ssh && chmod 700 ~/.ssh nano ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
No PuTTY, vá a Connection > SSH > Auth > Credentials, escolha o seu .ppk em Private key file for authentication, volte a Session e guarde. Para reutilizar uma chave privada OpenSSH existente, use o PuTTYgen: Conversions > Import key e depois Save private key.
🧩 Carregar a chave uma vez com o Pageant
O Pageant é o agente de chaves do PuTTY. Execute pageant.exe, que fica na área de notificação, clique com o botão direito no ícone, escolha Add Key, selecione o .ppk e introduza a frase-passe uma única vez. Enquanto o Pageant estiver ativo, o PuTTY e o pscp usam a chave sem a pedir de novo. Feche o Pageant para esquecer a chave.
📂 Transferir ficheiros com o pscp
O pscp.exe é a ferramenta de cópia em linha de comandos do PuTTY. Repare no -P maiúsculo para a porta. No PowerShell:
PowerShell# Enviar um ficheiro pscp -P 22 C:\Users\USER\Documents\site.zip root@VPS_IP:/root/ # Descarregar um ficheiro pscp -P 22 root@VPS_IP:/var/log/syslog C:\Users\USER\Downloads\ # Enviar uma pasta inteira pscp -r -P 22 C:\Users\USER\project root@VPS_IP:/root/ # Usar uma chave específica pscp -i C:\keys\vps.ppk site.zip root@VPS_IP:/root/
Se o pscp não for encontrado, chame-o com o caminho completo, por exemplo & 'C:\Program Files\PuTTY\pscp.exe'.
✅ Verificar a ligação
Depois de entrar, confirme que a chave é usada e que está na máquina certa:
Bashwhoami hostname cat /etc/os-release sudo grep 'Accepted publickey' /var/log/auth.log | tail -n 3
O último comando funciona em Ubuntu/Debian; em AlmaLinux/Rocky use sudo journalctl -u sshd | grep Accepted | tail -n 3. A barra de título do PuTTY mostra a sessão ligada e o Event Log (botão direito na barra de título) lista os passos de autenticação.
🛠️ Resolução de problemas
Network error: Connection timed out / refused. Verifique VPS_IP e a porta, se o VPS está iniciado e se o SSH escuta (sudo systemctl status ssh em Ubuntu/Debian, sshd em AlmaLinux/Rocky). Uma firewall local ou uma rede empresarial também podem bloquear a porta.
Server refused our key / Disconnected: No supported authentication methods available. A chave pública não foi colada numa só linha, está a usar-se o utilizador errado ou as permissões são demasiado abertas. Reveja o authorized_keys, execute chmod 700 ~/.ssh e chmod 600 ~/.ssh/authorized_keys e confirme que o .ppk corresponde à chave pública.
Unable to use key file (OpenSSH SSH-2 private key). O PuTTY não consegue ler esse formato. Converta a chave com o PuTTYgen (Conversions > Import key) ou atualize o PuTTY para uma versão recente.
A sessão bloqueia após alguns minutos. Defina o intervalo de keepalive descrito acima.
🚀 O PuTTY está agora configurado com sessão guardada, acesso por chave e transferência de ficheiros. Próximo passo: desativar o acesso por palavra-passe quando a sua chave funcionar.