✍️Instalação e Configuração de Acesso Remoto (SSH)

Instalação e Configuração de Acesso Remoto (serviço SSH | aplicação OpenSSH)

O OpenSSH é uma das implementações disponíveis do protocolo SSH e tem o objetivo de possibilitar conexões seguras e criptografadas entre um cliente e um servidor. É amplamente utilizado para acesso remoto a servidores Linux (embora também exista a versão para Windows) e entre estações, bem como para a transferência de arquivos.

1) Instale o OpenSSH Server (como usuário root):

# apt-get install openssh-server

2) Após a instalação verifique se o serviço SSH está realmente ativo:

 systemctl status ssh

No resultado do comando procure pela linha:

Active: active (running)

3) Teste localmente se a conexão ao serviço está ok, conectando à própria máquina (informe o nome da máquina destino como sendo 'localhost' e o usuário 'debian12' e, em seguida, digite a senha do usuário na máquina):

# ssh localhost -l debian12

No comando acima o parâmetro 'debian12' é o usuário com o qual se deseja conectar. Deve-se, naturalmente, utilizar um usuário existente no host.

Por padrão (questão de segurança) o acesso via SSH utilizando o usuário 'root' é bloqueado.

Sempre, NO PRIMEIRO ACESSO com um usuário em uma máquina via SSH, haverá a troca de chaves criptográficas. Basta concordar informando que está ciente. No próximo acesso isso já não acontecerá (as chaves já estão armazenadas)

4) Agora teste o acesso via SSH da máquina cliente para a máquina servidor:

# ssh IP_DO_SERVIDOR -l USUÁRIO_NO_SERVIDOR
ou
# ssh USUÁRIO_NO_SERVIDOR@IP_DO_SERVIDOR

5) Como teste final, conecte do cliente ao servidor usando um usuário sem privilégios, estando conectado mude para o usuário 'root' e desligue o servidor remotamente (tente fazer isso antes de conferir os comandos a seguir).

Conectando do cliente ao servidor e desligando a máquina remotamente
$ ssh IP_DO_SERVIDOR -l debian12
(inserir a senha do usuário 'debian12' quando solicitado)
$ sudo -i
(inserir novamente a senha do usuário debian12 para mudar para o usuário root)
# halt

Configuração do OpenSSH

O arquivo de configuração do OpenSSH Server está localizado em /etc/ssh/sshd_config. Recomenda-se fazer um backup deste arquivo antes de qualquer alteração.

Sempre que alterar as configurações deste arquivo, deve-se reiniciar o serviço para que as configurações sejam ativadas:

# systemctl restart ssh

6) Para testar a mudança na configuração do SSH, edite este arquivo (com o editor 'nano' por exemplo) e altere a PORTA do serviço SSH.

A porta padrão do SSH é a 22. É recomendado alterá-la para uma porta não padrão para aumentar a segurança (dificultar os ataques de hackers para tentar acessar indevidamente o servidor via SSH).

A linha do arquivo /etc/ssh/sshd_config para alterar a porta é:

Port 22

7) Altere a configuração padrão neste arquivo para permitir que o usuário 'root' possa acessar o servidor diretamente utilizando SSH (essa configuração geralmente não é feita em servidores Linux acessíveis na Internet):

PermitRootLogin yes

Não esqueça de reiniciar o serviço sempre que fizer mudanças nas configurações:

# systemctl restart ssh

8) Tente acessar o servidor via SSH com usuários que não existem e/ou errando propositalmente a senha e verifique os registros dessas tentativas no arquivo de logs do SSH no servidor (/var/log/auth.log)

# tail -100 /var/log/auth.log

9) O comando a cima mostra as últimas 100 linhas do arquivo de logs. Para monitorar os logs em tempo real, utilize o comando abaixo (e digite CTRL+C para parar o monitoramento):

# tail -f /var/log/auth.log

10) CASO NÃO EXISTA o arquivo /var/log/auth.log pode ser que o serviço de registro de logs do Linux não esteja instalado. Se essa for a situação, instale o serviço de logs na máquina:

# apt-get install rsyslog

Para fixar o conteúdo, instale agora o OpenSSH na MV 'Cliente Linux' e depois conecte via SSH do servidor para o cliente.

Atualizado