Esiste un generatore di codice di verifica dell'autenticazione a due fattori da riga di comando?


23

Gestisco un server con autenticazione a due fattori. Devo utilizzare l'app Google Authenticator per iPhone per ottenere il codice di verifica a 6 cifre da inserire dopo aver inserito la normale password del server. L'installazione è descritta qui: http://www.mnxsolutions.com/security/two-factor-ssh-with-google-authenticator.html

Vorrei un modo per ottenere il codice di verifica usando solo il mio laptop e non dal mio iPhone. Deve esserci un modo per eseguire il seeding di un'app della riga di comando che genera questi codici di verifica e fornisce il codice per la finestra corrente di 30 secondi.

Esiste un programma in grado di farlo?

Risposte:


24

Sì, oathtoolpuoi farlo. Dovrai eseguirne il seeding con il segreto condiviso dal tuo server.

Puoi installarlo dal oath-toolkitpacchetto.


È compatibile con il modulo PAM di Google Authenticator? Sembra una bestia diversa (anche se funzionalmente equivalente) ...
voretaq7

2
Sì - con la --totpbandiera, implementa lo stesso algoritmo TOTP conforme agli standard di Google Authenticator.
SEE

2
Lo è oathtool. In molti casi sono necessari entrambi --totpe -bflag (decodifica base32)
Zouppen,

1
FWIW, ho scritto un involucro della shell per Oathtool che è funzionalmente equivalente a Authy sulla CLI: github.com/poolpog/bash-otp
JDS

FWIW: ho scritto un C-wrapper che utilizza libpam-google-authenticatorper verificare i token. Vedi github.com/hilbix/google-auth - nel README è checktotpmostrata la funzione . Basta rimuovere il | fgrep -qx "$1";per vedere i token.
Tino,

3

Esistono molte implementazioni di Authenticator di terze parti. Dai un'occhiata all'elenco sulla pagina di Wikipedia . Ad esempio, potresti essere in grado di usare onetimepass (che è scritto in Python) per l'utilizzo da riga di comando.


3

Esiste anche un'implementazione go su github su https://github.com/pcarrier/gauth

Questo utilizza un file di configurazione ~/.config/gauth.csvper memorizzare i token nel seguente formato

me@gmail.com: abcd efg hijk lmno
aws-account: mygauthtoken

E anche l'output è piuttosto amichevole:

$ gauth
           prev   curr   next
AWS        315306 135387 483601
Airbnb     563728 339206 904549
Google     453564 477615 356846
Github     911264 548790 784099
[=======                      ]

2

Per quanto ne so, Google rilascia solo l'applicazione Authenticator per telefoni (iOS, Android).
(Ciò pone un problema per le persone paranoiche come me, che non si fidano davvero della storia di Google della sospensione dei servizi con poco preavviso e preferirebbero un generatore di token che possiamo vedere all'interno di.)

Potresti prendere in considerazione altre alternative, come un sistema di password pad una tantum .


Onestamente, ottenere il codice di verifica dal tuo laptop sconfigge l'aspetto dell'autenticazione a due fattori (chiunque catturi il laptop ora ha il generatore di codice - che fa parte di ciò che dovrebbe essere protetto da Authenticator).


Concordo con l'idea che un dispositivo separato sia fondamentalmente necessario per 2FA. Tuttavia, quel dispositivo secondario potrebbe essere un server remoto ?
Jerry W.,

1
Memorizzare il tuo segreto TOTP sul tuo laptop invece che sul tuo telefono è ancora molto, molto meglio di nessun TOTP se non memorizzi la password sul tuo laptop (ad es. Nell'agente password del tuo browser). Gli aggressori MITM (come i key logger) non hanno accesso al segreto TOTP, ma solo al codice basato sul tempo, quindi catturano le informazioni sull'autorizzazione solo per un minuto o due. Un laptop rubato ha il segreto TOTP, ma non la password. (Dovrai usare una password più debole per renderla memorabile, ma va bene con TOTP.) Far attaccare la password e rubare il segreto complica il compito.
Curt J. Sampson,

Un'altra nota: TOTP come praticato non è tecnicamente un'autenticazione a due fattori nel senso più stretto, perché sia ​​la password che il segreto TOTP sono "qualcosa che conosci". Entrambi possono essere copiati senza la consapevolezza del proprietario della perdita di segretezza.
Curt J. Sampson,

1

Puoi provare http://soundly.me/oathplus

Questo è uno strumento che ho sviluppato sul venerabile oathtool, che ti consente di leggere i codici QR e di conservare le informazioni dell'account OTP per un uso successivo. Puoi considerarlo come Google Authenticator per la riga di comando, poiché può scaricare e leggere codici QR e utilizzare otpauth://URI. (Solo OSX atm.)


0

Una riga di comando gauth.exe di Windows da utilizzare da vim, durante la modifica di un file contenente codici gauth.

https://github.com/moshahmed/gauth/releases/download/mosh1/gauth-vim-stdin-win7-2019-01-08.zip

È un fork di https://github.com/pcarrier/gauth da compilare su windows7.

Test / utilizzo:

c:\Go\src\cmd\vendor\github.com\pcarrier\gauth-vim-stdin-win7> echo "dummy1: ABCD" | gauth.exe
prev curr next
dummy1 562716 725609 178657
[== ]

Usage from vim, when your cursor is on line
"dummy1: ABCD"
: . w ! gauth
" temp shell window popup with codes.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.