De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.

Autenticação por 2 Fatores

Colaboração: Paulo Kretcheu

Data de Publicação: 27 de junho de 2012

Não sei se todos conhecem e/ou usam algum sistema que utilize autenticação por 2 fatores, eu tenho usado há algum tempo para a minha conta no gmail.

Funciona assim:

Os 2 fatores são

  1. Uma coisa que você sabe: sua senha.
  2. Uma coisa que você tem: seu celular.

Muito bem, eu configurei minha conta no Google para usar isso, lá você pode definir se quer receber um sms com um código ou usar um aplicativo para gerá-lo. Eu uso a segunda opção, pois instalei no meu Android o aplicativo para isso: Google Authenticator Há versões para outros sistemas móveis.

Esse código vale por um período pequeno de tempo, algo em torno de 1 minuto por padrão.

Então para logar na sua conta, por exemplo numa máquina que não é a sua, você irá digitar sua senha e depois o código que recebeu. Portanto mesmo que alguém tenha sua senha, vai precisar também do seu celular para saber o código, fica BEM mais difícil né!

Hoje usando meu velho e bom aptitude, vi que no Debian tem um pacote, nos repositórios oficiais, para usar o PAM com o Google Authenticator. Fiquei super interessado e comecei a fazer os testes.

Resumindo, para logar no meu servidor via ssh também estou usando autenticação por 2 fatores, a senha e o código.

Como fazer isso no Debian? É bem fácil!!

  # aptitude install libpam-google-authenticator

No arquivo /etc/pam.d/sshd colocar logo no começo a linha:

  auth       required   pam_google_authenticator.so

No arquivo /etc/ssh/sshd_config deve ter a linha:

  ChallengeResponseAuthentication yes

Com seu usuário rode:

  google-authenticator

Isso irá gerar uma chave, códigos de reserva e um arquivo no seu "home", além de uma url para poder cadastrar no aplicativo do Android.

Basta reiniciar o serviço ssh

  # /etc/init.d/ssh restart

Pronto, agora quando tento logar no ssh recebo a mensagem:

  Verification code: XXXXXX
  Password: XXXXXX

Cadastrei no meu Android e pronto!

Feito, sshd rodando com autenticação por 2 fatores.

Algumas dúvidas e algumas respostas:

  • Dá para fazer isso com outros serviços de autenticação também, sem ser o do Google?
    Sim, mas ainda não testei.
  • Dá para usar no gdm?
    Sim e em qualquer coisa que use PAM.
  • Dá para configurar para usar localmente sem os 2 fatores?
    Sim, mas também não fiz ainda.
  • O Google vai ficar sabendo quando você loga!
    Não! Não precisa de conexão a internet.
  • E se perder o celular?
    Tem os códigos de reserva. E a máquina também né! Acesso físico=sem segurança.
  • Se usar o home criptografado, também funciona?
    Eu li que sim, mas ainda não testei.

Alguns links que podem ajudar:

[]'s
kretcheu

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de Paulo Kretcheu