2FA op een SSH-Server

Hoe 2FA instellen op een ssh server.

Voor dat je hier aan begint controleer of je systeem tijd van de computer gelijk is aan je locale tijd. (anders kloppen je tokens niet meer)

Open je terminal en installeer het volgende sudo zypper in google-authenticator-libpam

Als we dat gedaan hebben moeten we de configuratie van pam.d aanpassen.

Sudo vi /etc/pam.d/sshd

Zet de volgende regel in dat bestand: auth required pam_google_authenticator.so

 

Nu gaan we even de ssh service herstarten: sudo systemctl restart sshd.service

 

Open nu je ssh configuratie file: sudo vi /etc/ssh/sshd_config

De volgende regel staat op NO: ChallengeResponseAuthentication NO verander dit naar YES

En zet de volgende regel ook op YES als dat niet zo is: PasswordAuthentication yes

En zet de volgende regel ook op YES: UsePAM yes

 
Instellen Authenticatie

Installeer op je telefoon Google Authenticator als je dat nog niet hebt gedaan.

Voer nu het volgende commando uit in je terminal: google-authenticator

Je zult nu de volgende vragen krijgen

Beantwoord ze zoals hier onder:

  • Make tokens “time-base””: yes
  • Update the .google_authenticator file: yes
  • Disallow multiple uses: yes
  • Increase the original generation time limit: no
  • Enable rate-limiting: yes

Hier na zal je een QR code in je scherm krijgen

Open Google Authenticator op je telefoon.

Druk op het + symbool en selecteer streepjes code scannen.

Voer daarna de stappen in je terminal uit.

Je krijgt ook een aantal backup codes bewaar deze goed!

Mocht je telefoon kwijt raken of kapot gaan dan kun je met deze backup codes er nog in komen