Este guia demonstrará como instalar o SSH no Ubuntu 24.04, 22.04 ou 20.04 LTS utilizando o terminal de linha de comando.
Secure Shell (SSH) é um protocolo vital para comunicação segura em redes não seguras. Ele fornece um canal seguro para administradores e usuários acessarem servidores remotamente, garantindo que os dados sejam criptografados e protegidos contra possíveis espionagens. Compreender os principais recursos do SSH pode aprimorar seu gerenciamento de rede e práticas de segurança. Aqui está um resumo do que torna o SSH indispensável:
- Criptografia: O SSH criptografa todos os dados transmitidos entre o cliente e o servidor, protegendo contra espionagem e interceptação.
- Autenticação: Suporta vários métodos de autenticação, incluindo senha, chave pública e autenticação baseada em host, melhorando as medidas de segurança.
- Encaminhamento de porta: permite o tunelamento seguro de conexões de rede e pode ser usado para proteger outros protocolos.
- Interoperabilidade: Compatível com uma ampla gama de dispositivos e sistemas operacionais, tornando-o uma ferramenta versátil para administração de rede.
- Integridade dos dados: O SSH garante que os dados enviados e recebidos permaneçam inalterados, mantendo sua integridade durante toda a transmissão.
- Execução de Comandos: Os usuários podem executar comandos com segurança em máquinas remotas, auxiliando no gerenciamento remoto eficiente.
- Transferência de arquivos: SSH fornece canais seguros para transferência de arquivos, como SFTP e SCP, garantindo que os dados permaneçam seguros durante o trânsito.
- Personalização: Oferece opções de configuração e personalização para atender a políticas e requisitos de segurança específicos.
À medida que nos aprofundamos nas especificidades da instalação do SSH no Ubuntu, é crucial compreender esses recursos para maximizar os benefícios deste protocolo popular.
Instale SSH no Ubuntu via APT
Atualize o Ubuntu antes da instalação do SSH
Antes de instalar o SSH, é crucial atualizar a lista de pacotes do seu sistema Ubuntu e atualizar os pacotes existentes. Esta etapa garante que seu sistema esteja atualizado e evita possíveis conflitos durante a instalação.
Execute o seguinte comando no terminal:
sudo apt update && sudo apt upgrade
Este comando primeiro atualiza a lista de pacotes disponíveis e depois atualiza os pacotes instalados para suas versões mais recentes.
Instale OpenSSH via comando APT
Após atualizar seu sistema, prossiga com a instalação do servidor e cliente OpenSSH. OpenSSH é um conjunto de utilitários de rede seguros baseados no protocolo Secure Shell (SSH), que fornece um canal seguro em uma rede não segura em uma arquitetura cliente-servidor.
Use este comando para instalar o servidor e o cliente OpenSSH:
sudo apt install openssh-server openssh-client
O openssh-server
componente permite que sua máquina Ubuntu aceite conexões SSH, enquanto openssh-client
permite iniciar conexões SSH com outras máquinas.
Verifique a instalação do OpenSSH
Após a instalação, é uma boa prática verificar a versão do servidor OpenSSH para garantir que esteja instalado corretamente. O comando a seguir exibe a versão do servidor OpenSSH instalado em seu sistema:
ssh -V
Executando este comando, você pode confirmar se o servidor OpenSSH foi instalado com sucesso e pronto para uso em seu sistema Ubuntu.
Configure o SSH no Ubuntu após a instalação
Ajustar as configurações de SSH
Depois que o OpenSSH estiver instalado em seu sistema Ubuntu, é essencial configurá-lo de acordo com suas necessidades. Embora as configurações padrão sejam geralmente robustas, pode ser necessário editar o /etc/ssh/sshd_config
arquivo para ajustes específicos. Esta etapa é crucial para personalizar as configurações de SSH para aprimorar a segurança e a funcionalidade do seu servidor.
Use o seguinte comando para editar o arquivo de configuração SSH:
sudo nano /etc/ssh/sshd_config
Você pode alterar várias configurações neste arquivo para atender às suas necessidades operacionais e de segurança.
Alterar portas OpenSSH
Modificar a porta OpenSSH padrão é uma medida estratégica de segurança para impedir tentativas de acesso não autorizado. Além de alterar a porta, considere implementar restrições nas tentativas de login e desabilitar o login root para aumentar a segurança.
Para alterar a porta OpenSSH, localize a Port
linha no sshd_config
arquivo e defina-a com o número da porta de sua preferência, assim:
Port 2222
Após atualizar o número da porta, reinicie o serviço OpenSSH para aplicar suas alterações:
sudo systemctl restart sshd
Limitar tentativas de login com SSH
Limitar as tentativas de login no OpenSSH pode reduzir significativamente o risco de ataques de força bruta. Edite o sshd_config
arquivo novamente para definir o número máximo de tentativas de autenticação:
sudo nano /etc/ssh/sshd_config
Encontre MaxAuthTries
e ajuste a configuração para limitar tentativas de login, por exemplo:
MaxAuthTries 3
Salve suas alterações e reinicie o serviço OpenSSH para aplicar o novo limite:
sudo systemctl restart sshd
Desativar login raiz SSH
Desabilitar o login root por SSH é uma prática recomendada para evitar o acesso direto à conta root. Edite o sshd_config
arquivo novamente e defina PermitRootLogin
como no
:
PermitRootLogin no
Salve suas alterações e reinicie o serviço OpenSSH para implementar esta medida de segurança:
sudo systemctl restart sshd
SSH seguro com regras UFW
O Uncomplicated Firewall (UFW) oferece uma maneira intuitiva de gerenciar regras de firewall no Ubuntu. Garantir que o UFW esteja habilitado e configurado corretamente aumenta a segurança do seu serviço SSH. Se o UFW não estiver instalado, você poderá instalá-lo usando:
sudo apt install ufw
Permita conexões de entrada na sua porta SSH com UFW:
sudo ufw allow ssh
Se você alterou a porta padrão, ajuste o comando de acordo:
sudo ufw allow 2222/tcp
Para restringir o acesso SSH a um endereço IP específico, especifique o IP permitido ao definir a regra UFW:
sudo ufw allow from 203.0.113.0 to any port 22
Estas etapas ajudam a proteger seu serviço SSH no Ubuntu, garantindo uma defesa mais robusta contra acesso não autorizado.
Conectando-se a um servidor remoto via SSH no Ubuntu
Estabelecendo uma conexão via SSH
Abaixo estão as etapas sobre como conectar-se usando diferentes métodos e portas de autenticação.
ssh username@remote_server
Substitua “nome de usuário” pelo nome de usuário da sua conta e “servidor_remoto” pelo nome do host ou endereço IP do servidor desejado. Ao iniciar o comando, o sistema solicitará sua senha para autenticar e estabelecer a conexão com êxito.
Conectando-se com autenticação de chave pública
Para um nível elevado de segurança, o SSH oferece suporte a conexões usando autenticação de chave pública. Este método evita a entrada tradicional de senha, exigindo uma chave privada para verificar sua identidade. Para usar autenticação de chave pública, execute:
ssh -i /path/to/private_key username@remote_server
Nesta estrutura de comando, /path/to/private_key
deve ser substituído pelo caminho real para o arquivo de chave privada, enquanto username
e remote_server
precisa ser substituído pelo seu nome de usuário e pelo endereço IP ou nome do host do servidor remoto, respectivamente.
Especificando uma porta de conexão
O SSH tradicionalmente usa a porta 22 para conexões, embora alguns servidores possam usar portas diferentes. Para conectar através de uma porta alternativa, insira:
ssh -p PORT_NUMBER username@remote_server
Certifique-se de substituir PORT_NUMBER
pelo número da porta real na qual o servidor remoto está escutando conexões SSH de entrada.
scp /path/to/local/file username@remote_server:/path/to/remote/directory
Este comando requer modificação para refletir os caminhos reais de arquivos e diretórios em seu sistema local e no servidor remoto, bem como os username
arquivos remote_server
.
Comandos SSH comuns adicionais
Para operações diárias, você pode achar os seguintes comandos SSH úteis:
Para copiar um diretório e seu conteúdo para o servidor remoto:
scp -r /path/to/local/directory username@remote_server:/path/to/remote/directory
Execute um comando em um servidor remoto:
ssh username@remote_server 'command_to_run'
Solucionar problemas de SSH no Ubuntu
Se você encontrar algum problema com OpenSSH em sua máquina Ubuntu, aqui estão algumas etapas padrão de solução de problemas:
Verifique se há mensagens de erro nos logs do OpenSSH executando o seguinte comando:
sudo tail -f /var/log/auth.log
Verifique o status do serviço OpenSSH executando o seguinte comando:
sudo systemctl status sshd
Ao revisar, verifique se há erros comuns, como configuração incorreta de firewall bloqueando conexões de porta OpenSSH de entrada. Além disso, certifique-se de que o usuário do serviço OpenSSH tenha as permissões e acesso corretos ao serviço.
Conclusão
Aí está! Seguimos as etapas para instalar e configurar o OpenSSH no Ubuntu, garantindo a segurança do seu sistema com configurações personalizadas e regras UFW. Lembre-se de que manter seu serviço SSH seguro é uma tarefa contínua; portanto, verifique regularmente se há atualizações e ajuste suas configurações conforme necessário.
Links relevantes
Explore os seguintes recursos externos para obter informações adicionais relacionadas ao pacote OpenSSH no Ubuntu.
- Site oficial do OpenSSH : acesse detalhes abrangentes sobre o OpenSSH, seus recursos e as atualizações mais recentes.
- OpenSSH no GitHub : Visite o repositório OpenSSH para código-fonte, atualizações de desenvolvimento e oportunidades de contribuição.
- Manual OpenSSH : Mergulhe no manual oficial para obter documentação detalhada e diretrizes de uso do OpenSSH.
- OpenSSH no Ubuntu : Aprenda sobre como gerenciar e configurar o OpenSSH especificamente em sistemas Ubuntu.