Como instalar e configurar o SSH ⋆ ALexHost SRL

Teste suas habilidades em todos os nossos serviços de hospedagem e ganhe 15% de desconto!

Utilizar o código no ato da compra:

Skills
17.12.2024

Como instalar e configurar o SSH

O SSH (Secure Shell) é um protocolo usado para se conectar com segurança a sistemas remotos, executar comandos e transferir dados. Ele fornece um método seguro para administradores de sistemas, desenvolvedores e usuários gerenciarem servidores e outros dispositivos remotamente, usando conexões criptografadas. A instalação e a configuração do SSH são essenciais para o acesso seguro a servidores, seja para fins de administração do sistema, trabalho remoto ou desenvolvimento.

Neste artigo, mostraremos como instalar e configurar o SSH no Linux, abordando os conceitos básicos, as opções de configuração e as recomendações de segurança.


O que é SSH?

SSH significa Secure Shell e permite que os usuários se conectem com segurança a um sistema remoto por meio de uma interface de linha de comando. O protocolo criptografa os dados entre o cliente e o servidor, tornando-o um método seguro de comunicação, especialmente para acessar servidores por meio de uma rede não segura, como a Internet.

O SSH opera na porta 22 por padrão e pode ser usado para:

  • Login remoto em servidores
  • Transferência segura de arquivos (usando SCP ou SFTP)
  • Execução de comandos remotos
  • Encaminhamento e tunelamento de portas

Etapa 1: Instalação do SSH

A maioria das distribuições Linux vem com o SSH pré-instalado, mas se ele não estiver instalado, você pode instalá-lo facilmente usando o gerenciador de pacotes da sua distribuição.

Para Ubuntu/Debian:

sudo apt update sudo apt install openssh-server

Para CentOS/RHEL:

sudo yum install openssh-server

Para o Fedora:

sudo dnf install openssh-server

Para o Arch Linux:

sudo pacman -S openssh

Após a instalação, você terá o servidor e o cliente OpenSSH instalados, o que lhe permitirá executar um servidor SSH e conectar-se a outros servidores SSH.


Etapa 2: iniciar e habilitar o serviço SSH

Depois de instalado, você precisa iniciar o serviço SSH (também conhecido como sshd – daemon SSH) e permitir que ele seja executado na inicialização do sistema.

Iniciando o serviço SSH:

sudo systemctl start ssh

Habilitando o SSH para iniciar na inicialização:

sudo systemctl enable ssh

Você pode verificar se o SSH está sendo executado corretamente digitando:

sudo systemctl status ssh

Se o serviço estiver em execução, você verá um status ativo indicando que o SSH está pronto para aceitar conexões.


Etapa 3: Configuração básica do SSH

O comportamento do SSH é controlado pelo arquivo de configuração localizado em:

/etc/ssh/sshd_config

Você pode editar esse arquivo para modificar as configurações do SSH, como alterar a porta padrão, desativar o login de root ou configurar a autenticação baseada em chave.

Para editar o arquivo, use um editor de texto como o nano ou o vim:

sudo nano /etc/ssh/sshd_config

Algumas alterações comuns na configuração incluem:

1. Alterar a porta SSH padrão

Por motivos de segurança, é uma boa ideia alterar a porta SSH padrão de 22 para outra. Isso ajuda a reduzir o risco de ataques automatizados que têm como alvo a porta SSH padrão.

Localize a seguinte linha no arquivo de configuração:

#Port 22

Descomente-a e altere o número da porta:

Porta 2222

Depois de salvar o arquivo, reinicie o serviço SSH para aplicar as alterações:

sudo systemctl restart ssh

Certifique-se de atualizar suas regras de firewall para permitir conexões na nova porta.

2. Desativar o login do root

Permitir o login do root via SSH é um risco à segurança. Para evitar isso, localize a seguinte linha no arquivo de configuração:

PermitRootLogin yes

Altere-a para:

PermitRootLogin no

Isso impedirá o acesso direto à raiz via SSH. Os usuários ainda podem fazer login com uma conta normal e depois mudar para root usando sudo ou su.

3. Habilite a autenticação baseada em chave

A autenticação baseada em chave SSH é um método mais seguro do que o uso de senhas. Isso envolve a geração de um par de chaves SSH (chaves pública e privada) e o uso da chave privada para autenticação.

Para aplicar a autenticação baseada em chave, localize as seguintes linhas e verifique se estão definidas como yes:

PubkeyAuthentication yes PasswordAuthentication no

Isso desativa o login baseado em senha e só permite o acesso SSH por meio de autenticação baseada em chave.


Etapa 4: geração de chaves SSH (autenticação baseada em chave)

Os pares de chaves SSH fornecem uma maneira segura de fazer login sem uma senha. Veja a seguir como gerar e configurar chaves SSH:

Etapa 1: Gerar o par de chaves SSH

Em seu computador local, execute o seguinte comando para gerar um par de chaves:

ssh-keygen -t rsa -b 4096

Será solicitado que você digite um nome de arquivo para salvar a chave (ou pressione Enter para usar o local padrão) e uma frase secreta opcional para maior segurança.

Isso cria dois arquivos:

  • ~/.ssh/id_rsa: Sua chave privada (mantenha-a segura e não a compartilhe).
  • ~/.ssh/id_rsa.pub: Sua chave pública (ela pode ser compartilhada e adicionada a servidores remotos).

Etapa 2: Copiar a chave pública para o servidor

Para usar a chave para login SSH, copie a chave pública para o servidor remoto que deseja acessar. Você pode fazer isso com o comando ssh-copy-id:

ssh-copy-id nome_do_usuário@host_remoto

Substitua username pelo nome de usuário do servidor remoto e remote_host pelo endereço IP ou nome do host do servidor.

Isso copiará sua chave pública para o servidor e a adicionará ao arquivo ~/.ssh/authorized_keys, permitindo que você faça login sem uma senha.

Etapa 3: fazer login usando a chave SSH

Agora, você pode fazer login no servidor remoto usando sua chave privada:

ssh nome_do_usuário@hospedeiro_remoto

Se você tiver definido uma porta personalizada, especifique-a com a opção -p:

ssh -p 2222 username@remote_host

Etapa 5: Protegendo sua configuração de SSH

Depois de configurar o SSH, é importante seguir as práticas recomendadas de segurança para garantir que seu servidor esteja protegido contra acesso não autorizado.

1. Use senhas fortes (se estiver usando autenticação por senha)

Se não estiver usando autenticação baseada em chave, certifique-se de que todas as contas de usuário usem senhas fortes e complexas.

2. Use um firewall

Certifique-se de que o firewall do seu servidor permita apenas o tráfego na porta SSH que você está usando. Por exemplo, se você alterou o SSH para a porta 2222, permita o tráfego nessa porta usando o ufw (no Ubuntu/Debian) ou o firewalld (no CentOS/RHEL).

sudo ufw allow 2222/tcp sudo ufw enable

3. Limitar o acesso SSH

Limite o acesso SSH a endereços ou intervalos de IP específicos configurando o firewall ou usando /etc/hosts.allow e /etc/hosts.deny.


Etapa 6: teste e solução de problemas de SSH

Depois de configurar o SSH, é importante testar sua configuração. Tente fazer login usando o SSH para garantir que tudo funcione corretamente.

Dicas comuns de solução de problemas de SSH:

  1. Verifique as configurações do firewall: Certifique-se de que o firewall não esteja bloqueando a porta SSH.
  2. Verifique o status do serviço SSH: Certifique-se de que o serviço SSH esteja em execução com systemctl status ssh.
  3. Verificar a configuração: Verifique novamente o arquivo /etc/ssh/sshd_config para ver se há alguma configuração incorreta.
  4. Use o modo Verbose para depuração: Se houver problemas, use a opção -v ao se conectar para ver a saída detalhada:
ssh -v nome_do_usuário@hospedeiro_remoto

Conclusão

Instalar e configurar o SSH é uma habilidade fundamental para qualquer administrador ou usuário do Linux que precise gerenciar sistemas remotos com segurança. Seguindo este guia, você poderá instalar o SSH, configurá-lo para acesso seguro e implementar as práticas recomendadas para proteger seu servidor contra acesso não autorizado. Uma vez configurado, o SSH se torna uma ferramenta avançada para gerenciamento remoto, automação e comunicação segura entre sistemas.

Teste suas habilidades em todos os nossos serviços de hospedagem e ganhe 15% de desconto!

Utilizar o código no ato da compra:

Skills