Voltar ao blog

Como usar SSH para se conectar a um servidor remoto no Ubuntu

Como usar SSH para se conectar a um servidor remoto no Ubuntu

O que é SSH?

SSH significa Secure Shell. Com o SSH, você pode acessar máquinas remotas de forma segura, pois a conexão é criptografada. Com o comando ssh do terminal Linux, podemos nos conectar a servidores Linux remotos e trabalhar como se fosse o nosso próprio computador. Ao final deste tutorial, você deverá ter uma compreensão completa de como usar o SSH para se conectar a um servidor remoto no Ubuntu.

Sintaxe

A sintaxe é a regra de como você pode usar o comando ssh. Você pode reorganizar a sintaxe, mas um formato direto deve ser seguido. Abaixo está um exemplo de sintaxe para usar o comando ssh:

O nome de domínio ou endereço IP ao qual você deseja se conectar é o remote_host, conforme mostrado no comando acima. Esta sintaxe pressupõe que o seu nome de usuário no sistema remoto e no seu sistema local sejam os mesmos. No entanto, caso os nomes de usuário não sejam iguais, você pode indicá-lo com este comando:

Você precisará verificar sua identidade fornecendo uma senha imediatamente ao se conectar ao servidor. Digite o comando exit para voltar à sua sessão local.

Como Configurar o SSH

O arquivo de configuração principal do sshd no Ubuntu está localizado em /etc/ssh/sshd_config. Se você alterar a configuração do SSH, as configurações do servidor SSHD serão alteradas automaticamente. Antes de qualquer configuração, certifique-se de fazer um backup da versão atual do arquivo usando este comando:

Use um editor de texto para abri-lo:

Você deve deixar a maioria dos parâmetros como estão neste arquivo. No entanto, há algumas coisas às quais você deve prestar atenção:

As declarações de porta indicam a porta na qual o servidor SSHD está aguardando conexões. O padrão é 22. A menos que haja motivos específicos, você não precisa alterar essa configuração:

A declaração da chave de host indica onde a chave de host global está localizada:

O nível de logs que deve ser gerado é indicado com estes dois itens. Se você tiver problemas ao usar o SSH, uma excelente maneira de identificar o problema é aumentar a quantidade de logs:

Estas opções definem algumas informações para o login para evitar login não autorizado quando os arquivos de configuração estão inseguros:

Essas configurações de parâmetros são referidas como funções de encaminhamento X11. Dessa forma, você pode exibir a interface gráfica (GUI) do sistema remoto no sistema local. Você deve habilitar essa opção no servidor ao se conectar com a opção -X no cliente SSH.

Depois de fazer as alterações, salve o arquivo e feche-o pressionando CTRL-X e Y e, em seguida, pressione Enter. Se você alterar as configurações em / etc / ssh / sshd_config, deverá reiniciar o servidor sshd para aplicar a alteração:

Para sistemas systemd, como o Ubuntu 16.04 ou Debian Jessie, use este comando:

Teste suas alterações minuciosamente para garantir que tudo esteja funcionando perfeitamente. Você provavelmente deve manter algumas sessões ativas se fizer qualquer alteração. Dessa forma, você pode restaurar a configuração se necessário.

Como você faz login no SSH com chaves? É bom fazer login em um sistema remoto com uma senha. No entanto, o ideal é configurar a autenticação baseada em chave.

O que é Autenticação Baseada em Chave?

A autenticação baseada em chaves cria dois pares de chaves chamados de chave privada e chave pública. A chave privada é encontrada no computador do usuário e foi protegida e mantida em segredo. A chave pública pode ser disponibilizada para qualquer pessoa ou armazenada em qualquer servidor que você queira acessar. Se você tentar se conectar usando um par de chaves, o servidor usará a chave pública para gerar uma mensagem para o computador do usuário. O usuário só pode ler a mensagem usando uma chave privada. O computador do usuário envia então uma resposta de volta para o servidor e o servidor sabe que o usuário é legítimo. Depois de configurar a chave, todo o processo é concluído automaticamente em segundo plano.

Como criar chaves SSH

As chaves SSH devem ser geradas no computador a partir do qual você deseja fazer login. Geralmente, este é o seu computador local. Digite o seguinte na linha de comando:

Em seguida, aceite os padrões pressionando a TECLA ENTER. Isso gerará suas chaves em ~/.ssh/id_rsa.pub e ~/.ssh/id_rsa. Em seguida, digite o comando abaixo para mudar para o diretório .ssh:

Estas são as permissões dos arquivos:

list files in .ssh folder

Como você pode ver, apenas o proprietário pode ler e gravar o arquivo id_rsa. Portanto, você deve mantê-lo seguro. No entanto, você pode compartilhar o arquivo id_rsa.pub e ter as permissões apropriadas para esta atividade. O próximo passo é transferir a chave pública para o servidor usando esta sintaxe:

Isso inicia uma sessão SSH e você deve usar uma senha para autenticação. Depois de inserir a senha, sua chave pública será copiada para o arquivo de chaves autorizadas do servidor para que você possa fazer login na próxima vez sem uma senha.

Como desativar a autenticação por senha

Se uma chave SSH for gerada, você poderá melhorar a segurança do servidor desativando a autenticação apenas por senha. Você pode fazer login no servidor usando a chave privada com a chave pública instalada no servidor em vez de usar o console.

Nota: Certifique-se de ter instalado a chave pública no servidor antes de prosseguir com esta etapa. Caso contrário, você será bloqueado!

Abra o arquivo de configuração do sshd usando este comando:

Encontre e desmarque a linha que faz a verificação de autenticação por senha excluindo o # no início. Então você pode alterar o valor para “no”:

O PubkeyAuthentication e o ChallengeResponseAuthentication são definidos por padrão e devem ser parecidos com isto:

Você não deve alterar essas duas configurações. Depois disso, salve o arquivo e feche-o assim que fizer as alterações. Em seguida, use o comando abaixo para reiniciar o daemon do SSH:

Finalmente, você desativou a autenticação por senha, e seu servidor só poderá ser acessado usando a autenticação por chave SSH.

Conclusão

Neste tutorial, mostramos como usar o SSH para se conectar a um servidor remoto de forma segura no Ubuntu. Aprender a usar o SSH é fundamental se você for um administrador de sistemas, portanto, após dominar este tutorial, você poderá prosseguir com funcionalidades mais avançadas do SSH.

Boa computação!

 

author

Akshay Nagpal

Autor · CloudSigma

Preslav Dobrev é um designer criativo na CloudSigma, focado na construção de uma identidade empresarial consistente por meio de canais de marketing tradicionais e inovadores. Ele é hábil em combinar a visão artística com o marketing estratégico para criar narrativas de marca impactantes.

Comentários

Nenhum comentário ainda. Seja o primeiro.