Czy istnieje klient komputerowy Google Authenticator?

123

Korzystam z Google Authenticator do uwierzytelniania dwuetapowego. Podoba mi się, jak mogę użyć kodu i zweryfikować swoje konto za pomocą telefonu:

wprowadź opis zdjęcia tutaj

Zdaję sobie sprawę, że aplikacja została zaprojektowana do działania na urządzeniu innym niż komputer w celu zwiększenia bezpieczeństwa komputera (w przypadku utraty lub kradzieży), ale chciałbym wiedzieć, czy istnieje sposób, w jaki mogę uruchomić Google Authenticator na mój Macbook.

Teraz na stronie Google Authenticator nie będzie działać na komputerze:

Na jakich urządzeniach działa Google Authenticator?

  • Wersja Androida 2.1 lub nowsza
  • BlackBerry OS 4.5 - 6.0
  • iPhone iOS 3.1.3 lub nowszy

Istnieje jednak kilka emulatorów dla programistów, więc zastanawiam się, czy można uruchomić jeden z tych emulatorów, a następnie uruchomić Google Authenticator. Zdaję sobie sprawę, że nie jest to najlepsza praktyka - ale mniej martwię się o kradzież mojego laptopa, a bardziej martwię się o to, że ktoś włamie się na konto.

Moje pytanie brzmi więc: czy można uruchomić go na pulpicie, nawet jeśli nie jest to zalecane / nie zalecane?

cwd
źródło
nie, w pewnym sensie pokonuje cel, jeśli się nad tym zastanowić. ale jeśli naprawdę chcesz pokonać ten cel, ten artykuł wyjaśnia, w jaki sposób albertech.blogspot.com/2016/10/10/...
jar
jednak jako alternatywa dla emulacji GAuth można po prostu użyć oathplus - soundly.me/oathplus - jest to zasadniczo Google Authenticator dla wiersza poleceń (jestem programistą).
słoik
Zgodnie z tą logiką nie należy unikać dostępu do wszystkich stron internetowych, które mają włączoną funkcję 2fa na telefonie komórkowym (co i tak jest bardziej prawdopodobne, że zostanie skradziony) ...?
user1073075

Odpowiedzi:

98

Zainstaluj zestaw przysięgi za pomocą brew, wygeneruj klucze za pomocą:

oathtool --totp -b <your_secret>

Aby uzyskać swój sekret, użyj opcji „zmień telefon” w Google. Możesz uzyskać klucz, klikając link „ręcznie wprowadź klucz”.

jaskółka oknówka
źródło
Niesamowite! Jedyny problem teraz - nie mogę się zalogować, gdy nie mam laptopa.
Jason R. Coombs
10
Skopiuj tajemnicę dość bezpiecznym pliku: (umask 0077;pbpaste > ~/.totp_google). Napisz funkcję powłoki aby umieścić TOTP w schowku: totp() { oathtool --totp -b $(<~/".totp_${1:-google}") | pbcopy; }. Dodaj inne sekrety innych usług: (umask 0077;pbpaste > ~/.totp_github). Wybierz żeton, który chcesz z funkcji: totp github. Zysk!!!
kojiro
1
FWIW Napisałem opakowanie powłoki, które spełnia sugestię @kojiro
JDS
Oto krótki skrypt powłoki, który odczytuje plik bazy danych aplikacji Google Authenticator i generuje kod na żywo dla każdego klucza, zapewniając wystarczający dostęp do urządzenia, aby skopiować plik na komputer.
Malvineous,
1
@ JasonR.Coombs powinieneś być w stanie zalogować się do laptopa i telefonu za pomocą tego samego tajnego klucza. Właśnie to zrobiłeś i oba generują ten sam 6-cyfrowy kod dostępu.
John Lee
27

Na stronie https://github.com/gbraad/html5-google-authenticator znajduje się Self Hostable App Web. Nie jest to bezpieczne na komputerze z dostępem do Internetu, ale można go załadować na maszynie całkowicie offline i możesz być bezpieczny.

Jharwood
źródło
1
Wygląda naprawdę dobrze - denerwuje mnie b / c Nie bardzo rozumiem wszystkiego, co sprawia, że ​​działa :)
cwd
4
w zasadzie używa lokalnej pamięci w przeglądarce do przechowywania tajnego klucza, lokalna pamięć jest dostępna tylko z domeny, z której została napisana (ktoś mnie poprawi, jeśli się mylę), a następnie wykorzystuje bieżącą godzinę i tajny klucz z pamięć lokalna, aby obliczyć, jaki powinien być klucz. To wszystko tylko dobroć Javascript
Jharwood
1
Ten jest niesamowity, stary. Teraz nie muszę w tym celu uruchamiać VirtualBox ani Bluestacks.
manish_s
1
To fantastycznie. Możesz użyć rawgit, aby uruchomić aplikację teraz lub użyć wersji przypiętej do zatwierdzenia, jeśli masz obawy o mutację kodu.
Jason R. Coombs
19

JAuth jest dobrą alternatywą - opartą na Javie (ma instalatory Windows, Linux i OS X), małą i przenośną. Trzymam kopię na dysku USB.

cyberx86
źródło
Dla moich pieniędzy powinna to być zaakceptowana odpowiedź. JAuth działa świetnie i ma własny instalator. To naprawdę nie może być łatwiejsze.
evadeflow
Jeśli wycieknie plik JAuth_KS, czy ktoś może wygenerować jednorazowe hasła do moich kont?
Saqib Ali,
1
Interfejs użytkownika był mylący. Dla mnie na Linux Mint (oparty na Ubuntu) przyciski miały szerokość 3 x 3 piksele i trudno było je kliknąć, a co one oznaczają? Na >przykład przycisk. + trudno zobaczyć, co to jest przycisk i jaki jest tytuł. - Chciałbym, żeby w ogóle nie zbudowali GUI, a wszystko za pomocą wiersza poleceń w Bash / Win CMD.
Wydaje
Czy JAuth można skonfigurować dla więcej niż jednego konta?
db
17

Tak. Możesz użyć WinAuth . Działa dla mnie dobrze.

użytkownik626528
źródło
Open source + bardzo prosty w obsłudze i działa nawet w systemie Vista (czego nie robi Authy).
Casper
15

Wypróbuj Authy: https://www.authy.com/ .

Działa na wielu kontach 2fa, w tym Google. Authy obsługuje wiele platform, w tym PC.

Uwaga: Google wydaje się podawać tylko kod QR do dodawania kont. Oznacza to, że najłatwiej jest dodać konto Google za pomocą aplikacji Authy na Androida. Jednak gdy to zrobisz, możesz również uzyskać do niego dostęp z aplikacji PC Authy.

dss539
źródło
1
Zdecydowanie najlepsze rozwiązanie. Ma też rozszerzenie Chrome :)
Jacob Relkin
1
Wymaga konta online.
pgampe
Żeby było jasne, to jest aplikacja internetowa? I musisz przesłać swoje sekrety do strony trzeciej?
jiggunjer
@jiggunjer dobre pytanie. Z ich strony internetowej „Ochrona danych Szyfruj dane 2FA i kopie zapasowe w naszej chmurze, bez przechowywania haseł z nami”. Więc tak i nie. Możesz pozwolić, aby ukryli twoje sekrety, ale teoretycznie nie mają do nich dostępu. Jeśli pamiętam, możesz pominąć funkcję tworzenia kopii zapasowych w chmurze, jeśli chcesz.
dss539,
Wymaga to numeru telefonu.
SuperSandro2000,
10

Zapomnij o innych, jeśli masz do czynienia z więcej niż jednym kluczem, przepustką lub jakimkolwiek innym rodzajem informacji. Zawsze jest pytanie, jak go używać. Najłatwiejszą metodą jest skorzystanie z narzędzia do zarządzania hasłami (nie używaj do tego celu usług online, LastPass też został zhakowany).

Oto moja sugestia (działa na systemach Linux, Mac, Android), ta jest dla użytkowników systemu Windows:

  1. Pobierz najnowszą wersję KeePass (obecnie 2.32) i skonfiguruj swoją bazę danych (zabezpiecz ją nie tylko przepustką, ale dzięki certyfikatowi wszystko będzie bezpieczniejsze)
  2. Pobierz wtyczkę TrayTOTP dla KeePass i skopiuj ją do folderu wtyczek znajdującego się w folderze instalacyjnym KeePass.
  3. Dla wpisu w KeePass utwórz dwa niestandardowe ciągi dla wpisu keepass :

    Pierwszy ciąg: TOTP Seed
    Drugi ciąg: TOTP Settings

    W sekcji TOTP Seed powinieneś umieścić swój klucz seed. W przypadku ustawień wielu jest zdezorientowanych, zwłaszcza początkujących. Domyślnie (i większość używa domyślnych) nowy klucz jest zawsze tworzony co 30 sekund i ma długość 6 znaków. Oznacza to, że jeśli nie zostanie to wyraźnie ustawione, ustawienia TOTP powinny mieć:

    30;6
    

    30: Oznacza sekundy
    6: oznacza długość klucza

    Znam tylko kilka usług, w których możesz wybrać lub ustawić go ręcznie, Kraken Exchange jest jedną z nich, kiedy zabezpieczasz swoje konto, możesz wybrać długość do 8 znaków, a ustawienia totp byłyby 30;8

  4. Zmień Autotyp :), istnieją dwa typy stron i sposób ich weryfikacji.

    Po pierwsze: możesz wprowadzić nazwę użytkownika, hasło i klucz 2FA.
    Po drugie: musisz wprowadzić nazwę użytkownika i hasło, po naciśnięciu enter / submission, druga strona / ramka pokazuje prośbę o 2FA.

    W pierwszym przypadku edytuj wpis KeePass, zmieniając opcje autotypu. Kliknij „Zastąp domyślną sekwencję”, która jest:

    {USERNAME}{TAB}{PASSWORD}{ENTER}
    

    i dodaj naciskając dodatkowy TAB, następnie umieszczając klawisz TOTP, a następnie naciskając ENTER:

    {USERNAME}{TAB}{PASSWORD}{TAB}{TOTP}{ENTER}
    

    W drugim przypadku musimy wysłać użytkownika i przekazać, a następnie odczekać 1-3 sekund (ustawię tutaj 5 sekund), a następnie klucz 2FA:

    {USERNAME}{TAB}{PASSWORD}{ENTER}{DELAY 5000}{TOTP}
    

Otóż ​​to. Naciśnij CTRL + V lub kliknij prawym przyciskiem myszy i wykonaj autotyp, to wszystko.

OhNo NotAgainMyPrivateData
źródło
1
KeePassXC to kolejna wersja KeePass, która jest wieloplatformowa i obsługuje 2fa / OTP. Działa dobrze.
jeffmcneill,
6

Zhakowałem integrację przysięgi i zestawu narzędzi z CLI, który działa również w Quicksilver . Przykład skryptu Bash CLI i pliku konfiguracyjnego .otpkeys można znaleźć w poście na blogu Quicksilver i OTP: Together At Last .

Będziesz potrzebował swoich tajnych kluczy, aby móc je umieścić w konfiguracji.

Skrypt Bash:

#!/bin/bash
scriptname=`basename $0`
if [ -z $1 ]
then
    echo "$scriptname: Service Name Req'd"
    echo ""
    echo "Usage:"
    echo "   otp google"
    echo ""
    echo "Configuration: $HOME/.otpkeys"
    echo "Format: name=key"
    exit
fi
otpkey=` grep ^$1 $HOME/.otpkeys | cut -d"=" -f 2 | sed "s/ //g" `
if [ -z $otpkey ]
then
    echo "$scriptname: Bad Service Name"
    exit
fi
/usr/local/bin/oathtool --totp -b $otpkey

Przykład pliku konfiguracyjnego dla .otpkeys - spacje są usuwane.

google=a743 mike k3b4 rm5k z8a9 q6f5 id1k bxk1
facebook=OWBV Q9LF POQ2 MKYU
evernote=UKPPIDEALLKPYTT9
dropbox=iop4 xbox asia b0ss ninj a9

Użycie - podaj pełną lub częściową nazwę usługi z konfiguracji, zakotwiczoną na początku nazwy usługi. Np. „Goo” będzie działało w Google, ale „oogl” nie.

iso : ~ --> otp google
196379
iso : ~ --> otp goo
612384
Peter Beckman
źródło
5

Na MAC (OSX) możesz użyć Alfred * i GAuth-Workflow, aby uzyskać Google Authenticator na pulpicie.

  • Przepływy pracy są obsługiwane tylko w (płatnej) wersji Powerpack.
Sascha
źródło
Sascha, czy udało Ci się znaleźć bardziej natywną aplikację dla systemu Mac OS do generowania tokenów Google?
Saqib Ali,
5

Oświadczenie: Jestem autorem :-)

https://qoomon.github.io/otp-authenticator-webapp/

Jest to aplikacja internetowa uwierzytelniająca google.

To jest statyczna strona internetowa hostowana na stronach github. Możesz po prostu użyć mojej wersji lub rozwidlić gałąź gh-pages i utrzymywać ją na własnej stronie github.

Nie są używane usługi zewnętrzne, tylko lokalne wykonywanie JavaScript

cechy

  • generować kody totp
  • pokaż pozostałe prawidłowe sekundy dla kodu totp
  • parsuj inne adresy URL w „tajnym” polu wejściowym
  • wygeneruj inny kod QR adresu URL
  • zaakceptuj parametry żądania
    • sekret
    • konto
    • emitent

Oto przykład

qoomon
źródło
0

Możesz użyć mojego skryptu: otp.py

Wadą tego jest to, że:

  1. prawidłowe odliczanie zobaczysz dopiero po wygaśnięciu pierwszego kodu :)
  2. to wyskakujące okienko zenity nie pozwala na kopiowanie i wklejanie (jest to duże ograniczenie IMO)
  3. działało na Macu, ale Cocoa Dialog został wycofany i już nie działa.
  4. być może można go dostosować do pracy w systemie Windows, instalując Zenity w systemie Windows (co jest możliwe).
maxadamo
źródło
0

Właśnie sobie z tym radzę, ale wygląda na to, że jest teraz interfejs wiersza polecenia google -hententator, który jest dystrybuowany z modułem PAM na https://github.com/google/google-authenticator-libpam .

Więcej informacji na temat instalacji (przeznaczonych do użycia z ssh na CentOS) można znaleźć w artykule na stronie https://www.digitalocean.com/community/tutorials/how-to-set-up-multi-factor-authentication-for -ssh-on-centos-7 .

James
źródło
0

Keeweb o otwartym kodzie źródłowym ma wbudowaną opcję OTP, oprócz menedżera haseł + przepustkę autogeniczną. Działa na MacOSX i jako aplikacja internetowa

https://github.com/keeweb/keeweb

Jimmy MG Lim
źródło
0

Dla użytkownika Pythona istnieje małe narzędzie o nazwie mfadostępne za pośrednictwem PyPI. Wystarczy zainstalować za pomocą pip install mfa.

https://github.com/limeburst/mfa

onelaview
źródło
-1

Jeśli zapisałeś ziarno dla swoich stron i masz Python (łatwy do zainstalowania na Mac / Windows / linux), możesz użyć tego skryptu wiersza poleceń, który również próbuje ukryć ziarno przed niezamierzonym złym użyciem: twisted2sv .

circulosmeos
źródło