Como Instalar e Configurar o SSH no Linux

SSH (Secure Shell) é um protocolo de rede amplamente utilizado para acessar e gerenciar remotamente servidores e computadores de maneira segura. Se você está procurando acessar remotamente seu servidor Linux ou conectar-se a outras máquinas, este tutorial explicará como instalar e configurar o SSH no Linux.

1. O que é o SSH?

O SSH permite que os usuários se conectem a outro sistema de forma segura, enviando comandos e manipulando arquivos remotamente. É muito usado por administradores de sistemas, desenvolvedores e qualquer pessoa que precise acessar um servidor de maneira remota, de forma criptografada.

2. Verificando se o SSH já está instalado

A maioria das distribuições Linux modernas já vem com o SSH instalado, mas você pode verificar se ele está disponível executando o seguinte comando:

ssh -V

Se o SSH estiver instalado, você verá algo como:

OpenSSH_8.2p1, OpenSSL 1.1.1f  31 Mar 2020

Caso o SSH não esteja instalado, você verá um erro ou um comando não encontrado. Nesse caso, continue com as próximas etapas para instalá-lo.

3. Instalando o OpenSSH Server

Para usar o SSH para conectar-se a outros computadores, você precisa do cliente SSH. No entanto, se você deseja que seu computador aceite conexões SSH (por exemplo, se você quer acessar seu computador de outro lugar), você também precisará instalar o servidor OpenSSH.

Para distribuições baseadas no Debian/Ubuntu:

sudo apt update
sudo apt install openssh-server

Para distribuições baseadas no Red Hat/CentOS/Fedora:

sudo dnf install openssh-server

Após a instalação, o serviço SSH será automaticamente iniciado. Para verificar se ele está rodando corretamente, use o comando:

sudo systemctl status ssh

Você deve ver uma saída semelhante a:

● ssh.service - OpenBSD Secure Shell server
     Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
     Active: active (running)

Se o serviço não estiver ativo, você pode iniciá-lo com:

sudo systemctl start ssh

E para garantir que o SSH inicie automaticamente na inicialização:

sudo systemctl enable ssh

4. Configurando o SSH

O arquivo de configuração do servidor SSH está localizado em /etc/ssh/sshd_config. Para personalizar as configurações, você pode abrir este arquivo com um editor de texto, como o nano ou vim:

sudo nano /etc/ssh/sshd_config

Alguns parâmetros comuns que você pode ajustar incluem:

  • Porta padrão: O SSH usa a porta 22 por padrão. Por motivos de segurança, alguns administradores preferem alterar isso para uma porta menos óbvia, por exemplo:
Port 2222
  • Login root: Por padrão, o login direto como root é desabilitado por motivos de segurança. Você pode verificar ou desabilitar essa configuração:
PermitRootLogin no

Após fazer qualquer alteração, você deve reiniciar o serviço SSH para que as mudanças tenham efeito:

sudo systemctl restart ssh

5. Testando a Conexão SSH

Agora que o SSH está instalado e configurado, você pode testar a conexão. Se você estiver acessando a partir da mesma máquina (localhost), execute o seguinte comando:

ssh localhost

Se estiver tentando acessar a partir de outro computador, use o endereço IP do servidor ou hostname, por exemplo:

ssh usuario@seu_servidor.com

O SSH pedirá que você aceite a chave de autenticação do servidor (isso ocorre na primeira conexão):

The authenticity of host 'seu_servidor.com (192.168.0.1)' can't be established.
ECDSA key fingerprint is SHA256:abcd1234efgh5678ijklmnopqrstuvw.
Are you sure you want to continue connecting (yes/no)? yes

Digite yes, e em seguida insira sua senha quando solicitado. Se tudo estiver configurado corretamente, você será conectado ao servidor.

6. Firewall e SSH

Se o firewall estiver habilitado no servidor, certifique-se de que a porta usada pelo SSH (geralmente a porta 22) esteja liberada. Você pode verificar e abrir a porta usando o seguinte comando:

No UFW (Ubuntu e Debian):

sudo ufw allow ssh

Se você alterou a porta padrão do SSH, especifique a nova porta:

sudo ufw allow 2222/tcp

No firewalld (Red Hat/CentOS/Fedora):

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

7. Habilitando Autenticação via Chave SSH (Opcional)

Para maior segurança, você pode configurar a autenticação baseada em chaves SSH. Isso elimina a necessidade de digitar uma senha e é muito mais seguro.

Primeiro, no cliente, gere uma chave SSH (se ainda não tiver):

ssh-keygen -t ed25519 -C "seu_email@example.com"

Isso criará dois arquivos: uma chave privada e uma chave pública. Você deve manter a chave privada segura e nunca compartilhá-la.

Agora, copie a chave pública para o servidor que deseja acessar:

ssh-copy-id usuario@seu_servidor.com

Depois de fazer isso, você poderá acessar o servidor sem precisar digitar a senha.

8. Conclusão

Agora você configurou e testou com sucesso o SSH no Linux. Ele está pronto para ser usado para acessar o sistema remotamente, seja para administração de servidores ou para transferências de arquivos seguras. Lembre-se de sempre manter o SSH atualizado e de considerar o uso de autenticação por chave para melhorar a segurança.

Edvaldo Guimrães Filho Avatar

Published by

Categories:

Leave a comment