Acesso via SSH com validação do Google Authenticator

Olá, leitor(a)!

Neste artigo vou apresentar um tutorial para você aplicar um controle adicional de segurança em seus servidores realizando a integração do SSH com o Google Authenticator de forma com que os acessos sejam realizados apenas após a validação do código (token) gerado aleatoriamente pelo aplicativo.

Veja como fazer isso no passo a passo abaixo!

Passo 1

Realize a instalação do Google Authenticator

[email protected]:/# apt-get install libpam-google-authenticator

linux_a2f-01

Passo 2

Acesse o diretório pam.d, edite o arquivo sshd e insira as linhas a seguir:

[email protected]:/# vim /etc/pam.d/sshd

# Google Authenticator
auth required pam_google_authenticator.so

linux_a2f-02

Passo 3

Acesse o diretório sshd, edite o arquivo sshd_config e insira a linha a seguir (ou apenas altere o valor de no para yes).

[email protected]:/# vim /etc/sshd/sshd_config
ChallengeResponseAuthentication yes

linux_a2f-03

Passo 4

Execute o comando abaixo e responda as perguntas:

[email protected]:/# google-authenticator

Do you want authentication tokens to be time-based? y
Você deseja que os tokens de autenticação sejam baseados em tempo? 

linux_a2f-04

Passo 6

Será gerada uma chave (key) e os códigos de emergência. Em seguida responda y (yes) para todas as perguntas!

Your new secret key is: LKHEMC7AGHTTMSKYH2FPNI27Q

Do you want me to update yout “root” file? y
Você quer atualizar seu arquivo “/root/.google_authenticator? 

linux_a2f-05

linux_a2f-06

Passo 6

Após todas as alterações reinicie o servido do SSH

[email protected]:/# ./etc/init.d/ssh restart

linux_a2f-07

Passo 7

Instale o app do Google Authenticator e insira a chave (key) gerada no passo 5. Após finalizar é gerado um número aleatório a cada 30 segundos.

+ > Entrada manual

linux_a2f-08

Passo 8

Realize uma conexão via SSH com o host que você acabou de configurar, utilizando um outro host.

[email protected]:/# ssh [email protected]
Password: (senha utilizada pelo usuário root)
Verification code: (código gerado aleatoriamente pelo Google Authenticator)

linux_a2f-09

É isso, pessoal. Espero que tenham gostado desta dica para um controle adicional de segurança em seus servidores realizando a integração do SSH com o Google Authenticator.

Ficou com alguma dúvida ou quer complementar o artigo? Deixe seu comentário abaixo!

Publicado originalmente em Blog 100Security

Marcos Henrique

Mais artigos deste autor »

Marcos Henrique é pós-graduado em Segurança da Informação, é o desenvolvedor do site 100security.com.br, autor dos livros Nagios – Monitoramento de Redes e ownCloud – Crie sua Própria Nuvem publicados pela editora Ciência Moderna.


Deixe seu comentário

Seu endereço de e-mail não será publicado. Campos com * são obrigatórios!