Programação · Servidores · segurança
O que é o SSH?
No momento em que aluga um VPS ou implementa num servidor remoto, depara-se com a mesma questão: como entra e corre comandos numa máquina que vive num centro de dados? A resposta é quase sempre SSH. Este guia explica o que é o SSH, como mantém a sua sessão segura e o punhado de comandos de que realmente precisa.
A definição curta
SSH – Secure Shell – é um protocolo para entrar num computador remoto e correr comandos através de uma ligação encriptada. Dá-lhe um terminal numa máquina noutro lugar, como se estivesse mesmo à sua frente, e cifra tudo o que passa entre si e o servidor. Essa encriptação é o ponto central: substituiu ferramentas mais antigas como o Telnet, que enviava palavras-passe e comandos em texto simples, ao alcance de qualquer um na rede.
Como funciona o SSH
Quando se liga, o seu cliente SSH e o servidor fazem um handshake rápido. Acordam as definições de encriptação e criam uma chave secreta partilhada, para que o resto da sessão seja privado. O servidor também prova a sua identidade com a própria chave, e é por isso que o cliente o avisa na primeira vez que vê um servidor novo. Depois disso, autentica-se – prova quem é – e obtém uma linha de comandos na máquina remota. Cada tecla premida e cada resposta a partir daí ficam encriptadas.

Palavras-passe vs chaves SSH
Pode entrar de duas formas. Uma palavra-passe é simples, mas mais fraca: pode ser adivinhada ou descoberta por força bruta, e os bots tentam isto em servidores públicos o dia todo. As chaves SSH são a melhor opção. Gera um par de ficheiros: uma chave privada que fica no seu computador e uma chave pública que copia para o servidor. O servidor só o deixa entrar se a sua chave privada corresponder, e a chave privada nunca sai da sua máquina. As chaves são mais seguras e mais práticas, já que dispensa escrever uma palavra-passe de cada vez.
Os comandos que realmente usa
- Ligar:
ssh user@server-addressabre uma sessão na máquina remota. - Criar um par de chaves:
ssh-keygengera as suas chaves privada e pública. - Copiar a chave para um servidor:
ssh-copy-id user@server-addressconfigura o início de sessão por chave. - Copiar ficheiros:
scp file user@server:/pathmove ficheiros pelo mesmo canal seguro.
Estes quatro cobrem a maior parte do trabalho do dia a dia. Liga-se, gere os seus contentores ou código e move ficheiros de um lado para o outro, tudo encriptado.
Onde se cruza com o SSH
O SSH está em todo o lado na programação. Usa-o para gerir um VPS ou servidor cloud, para enviar e obter código com o Git por SSH, para implementar apps e para criar um túnel seguro numa ligação. Se uma tarefa envolve uma máquina remota, o SSH é normalmente a forma de lá chegar. Aprendê-lo uma vez compensa em todos os servidores em que algum dia tocar.
Os compromissos honestos
O SSH é seguro, mas a segurança continua a depender de si. Deixar o início de sessão por palavra-passe ativo, ou expor a porta padrão com uma palavra-passe fraca, é a forma como os servidores são invadidos. A configuração segura é bem conhecida: use chaves SSH, desative o início de sessão por palavra-passe e mantenha a sua chave privada protegida. Os principiantes também sentem a linha de comandos como um obstáculo no início. Mas o básico aprende-se depressa, e a competência transfere-se para todos os servidores e plataformas cloud que vier a usar.
Perguntas frequentes
O que é o SSH em termos simples?
SSH, ou Secure Shell, é uma forma de entrar num computador noutro lugar e correr comandos nele através de uma ligação encriptada. Dá-lhe um terminal numa máquina remota como se estivesse à sua frente, cifrando tudo o que é enviado entre si e o servidor para que ninguém na rede o consiga ler.
Qual é a diferença entre uma palavra-passe SSH e uma chave SSH?
Uma palavra-passe é um segredo que escreve, e pode ser adivinhada ou descoberta por força bruta por bots. Uma chave SSH é um par de ficheiros: uma chave privada guardada na sua máquina e uma chave pública colocada no servidor. Só é deixado entrar se corresponderem, e a chave privada nunca sai do seu computador, o que torna as chaves mais seguras e mais práticas do que as palavras-passe.
Que porta usa o SSH?
O SSH usa por predefinição a porta TCP 22. Alguns administradores mudam-na para outra porta para reduzir as tentativas automáticas de início de sessão, mas isso é um pequeno obstáculo, não segurança a sério. As verdadeiras proteções são usar chaves SSH e desativar o início de sessão por palavra-passe, não esconder a porta.
O SSH é seguro?
Sim, o SSH é seguro quando bem configurado, porque encripta toda a sessão. A maioria das invasões vem de uma configuração fraca, não do próprio SSH – normalmente o início de sessão por palavra-passe deixado ativo com uma palavra-passe fácil de adivinhar. Usar chaves SSH, desativar o início de sessão por palavra-passe e proteger a sua chave privada tornam-no muito seguro.
Um servidor para praticar SSH
A melhor forma de aprender SSH é ter um servidor real onde entrar. Um VPS ou servidor cloud dá-lhe acesso root por SSH para implementar sites, APIs ou contentores. A Infomaniak – um fornecedor suíço respeitador da privacidade – oferece VPS e servidores cloud aos quais se liga e que gere inteiramente por SSH.
Ver Infomaniak Cloud →Link de afiliado – ajuda a suportar estes guias gratuitos.
Explore outras explicações claras no nosso índice de guias.