VPS: Autenticação de dois fatores SSH
Este guia foi criado com os seguintes produtos:
(Os detalhes podem variar com produtos de diferentes fornecedores, mas os conceitos principais permanecem os mesmos)
Introdução
O serviço de autenticação de dois fatores (2FA) do Google para SSH, conhecido como Google Authenticator SSH, aumenta a segurança do acesso SSH (Secure Shell) adicionando uma segunda camada de autenticação. Embora o SSH já forneça um método seguro para estabelecer uma conexão criptografada com um servidor remoto, a integração do 2FA eleva o nível de segurança ao exigir que os usuários insiram não só a senha, mas também um código de verificação único gerado pelo Google Authenticator. Neste guia, vamos explorar o processo de instalação e configuração do serviço Google Authenticator SSH em um servidor Linux.
Instalação
Primeiro, você precisa instalar o Google Authenticator no seu VPS Linux. Execute o seguinte comando:
sudo apt install libpam-google-authenticator
Você será solicitado a digitar "Y" para instalar o pacote, digite isso, pressione Enter e o Google Authenticator será instalado!
Inicie o Google Authenticator digitando 'google-authenticator'. Certifique-se de que o tamanho da janela seja suficiente para o QR Code, caso contrário, pressione "CTRL+C" e execute novamente.
Agora você será perguntado se deseja executar, digite "Y" para aceitar. Você verá um QR Code. Abra seu app Authenticator no smartphone e escaneie o QR Code. Para este exemplo, usamos o Google Authenticator:
Não esqueça de copiar os códigos de backup, eles podem ser usados uma vez cada caso você perca o autenticador.
Agora o app já mostra os códigos que você vai precisar para fazer login depois. No caso, fica assim:
As seguintes perguntas aparecerão:
- Deseja salvar a configuração do Google Authenticator?
- Deseja permitir apenas um login a cada 30 segundos?
- O tempo em que um código é válido deve ser aumentado?
- Devem ser permitidos apenas três logins a cada 30 segundos? (Proteção contra Brute Force)
Por questões de segurança, recomendamos confirmar todas com Sim.
Configuração
Agora precisamos ajustar o Google Authenticator para que ele seja usado. Isso requer duas alterações.
/etc/ssh/sshd_config
Ative os módulos necessários no arquivo /etc/ssh/sshd_config
. Abra o arquivo digitando:
sudo nano /etc/ssh/sshd_config
Você estará em um editor de texto. Use as setas para navegar, apague e digite livremente. Para salvar, pressione 'CTRL + X', depois 'Y' e por fim 'Enter'.
Garanta que as linhas 'UsePAM' e 'ChallengeResponseAuthentication' estejam definidas como 'yes'. Assim:
Salve o arquivo com 'CTRL + X', depois 'Y' e 'Enter'. Reinicie o SSH com o comando:
sudo systemctl restart ssh
/etc/pam.d/sshd
Agora adicionamos o Google Authenticator ao login no arquivo /etc/pam.d/sshd
. Abra o arquivo digitando:
sudo nano /etc/pam.d/sshd
Role até o final do arquivo e insira a linha:
auth required pam_google_authenticator.so
Salve o arquivo com 'CTRL + X', depois 'Y' e 'Enter'.
Testando o acesso
Agora é hora de fazer o primeiro login com 2FA. Depois de seguir os passos acima, basta reiniciar sua conexão SSH.
Digite sua senha normalmente. Você será solicitado a inserir um código, basta digitar o código 2FA atual.
Pronto, você está logado!
Conclusão
Parabéns, você ativou e configurou o 2FA para SSH com sucesso! Se tiver mais dúvidas ou problemas, fale com nosso time de suporte, que está disponível para te ajudar todos os dias!