Czy Touch ID może odblokować osobisty klucz SSH?

16

Czy można użyć czytnika linii papilarnych Touch ID, aby odblokować mój klucz SSH?

Mam MacBooka Pro z paskiem dotykowym i mam teraz tradycyjne hasło tekstowe do mojego klucza SSH.

Zauważyłem, że nie otrzymuję okna systemowego z pytaniem o moje hasło w dniu 10.12, więc prawdopodobnie nie jest to rzecz, ale gdybym mógł to zrobić, byłoby NIESAMOWITE.

Nate
źródło
OpenSSH 8.2 dodaje obsługę FIDO2. Jeśli istnieje sposób na podłączenie TouchID do odblokowania FIDO2, powinno to działać. Nie próbowałem tego robić.
Michael - Where Clay Shirky

Odpowiedzi:

14

Aktualizacja :

Jedną z opcji jest dodanie prywatnego klucza SSH do pęku kluczy macOS, a następnie użycie TouchID do uwierzytelnienia pęku kluczy. Będziesz chciał skorzystać ssh-add -K ~/.ssh/[your-private-key]- jednak w macOS 10.12 Sierra funkcja musi być włączona poprzez edycję edycji ~/.ssh/configi dodanie:

Host * (asterisk for all hosts or add specific host)
   AddKeysToAgent yes
   UseKeychain yes
   IdentityFile <key> (e.g. ~/.ssh/userKey)

Aby uzyskać szczegółowe informacje, przeczytaj:

  1. Dodaj na stałe swój klucz prywatny do pęku kluczy, aby był automatycznie dostępny dla SSH
  2. Zapisywanie kluczy SSH w pęku kluczy macOS Sierra

Oryginał :

Obecnie odblokowanie TouchID klucza SSH nie jest dostępne dla systemu macOS.

  1. Projekt Xcode sudo-touchid pokazuje, jak zbudować aplikację wiersza poleceń z obsługą TouchID i przejściem do okna dialogowego z hasłem. Działa na MacBooku Pro 2016 z paskiem dotykowym. Jest jednak do sudo, nie ssh. Oznacza to, że pomysł jest technicznie wykonalny.
  2. Prompt 2 klient SSH obsługuje TouchID - dla systemu iOS, nie MacOS. Oznacza to, że porównywalne aplikacje mogą zostać udostępnione przez komercyjnych programistów.
  3. Jeden z programistów online rozpoczął projekt opakowania ssh touchid kilka miesięcy temu - chociaż jest to pusty odcinek projektu. Oznacza to, że inni mogą zadawać podobne pytanie.
JeremyDouglass
źródło
3
Czy możesz rozwinąć temat „następnie użyj Touch ID do uwierzytelnienia pęku kluczy”? Jeśli wykonam twoje kroki, wcale nie będę proszony o uwierzytelnienie.
mniess
2

Teraz można korzystać z Sekey , który jest agentem SSH, który pozwala użytkownikom uwierzytelniać się na serwerach SSH UNIX / Linux za pomocą Secure Enclave.

Douglas Soares de Andrade
źródło
0

Jest to nieco stycznie do mojego pierwotnego pytania, ale zostały niedawno użyciu i bardzo podobnie jak Krypton , który daje mi coś dużo jak TouchID odblokowania. To rozwiązanie przechowuje klucz SSH w bezpiecznej enklawie mojego telefonu, a mój komputer i telefon negocjują przez Bluetooth, kiedy idę użyć klucza. Otrzymuję wyskakujące okienko z potwierdzeniem na telefon i reaguję po odblokowaniu .

Więc! Mogę zrobić coś, co działa podobnie, ale jest (myślę) nieco bezpieczniejsze niż przechowywanie klucza na moim laptopie (nawet z hasłem), zdecydowanie lepsze niż pozostawienie go odszyfrowanego w moim pęku kluczy i bardzo przydatne do uruchomienia.

Działa również jako drugi czynnik U2F dla usług internetowych, przy użyciu wtyczki do przeglądarki.

Nate
źródło
-2

Możesz łatwo napisać opakowanie, aby przetłumaczyć połączenia touchid na ssh iz powrotem. Jeszcze bardziej przekładaj możliwe dopasowanie na sekwencję zasięgu (pomyśl o bliskim, ale niepełnym malowaniu) - bez magii. Użyłem do tego aparatu wcześniej, kiedy touchid wydawał się trikorderem z Star Trek :-)

Spróbuj sam stworzyć taką aplikację, co jest dobrą motywacją do nauki Szybkiego! Apple ma dobre dokumenty dookoła wszystkich swoich SDK, więc po początkowym bólu Xcode możesz to zrobić w ciągu kilku dni.

Dobrym pomysłem jest wykorzystanie tego wyczynu. nawet wtedy, gdy wszyscy powiedzą o gazillionach o możliwych zagrożeniach bezpieczeństwa, które są możliwe (podobnie jak wiele innych rzeczy). Będziesz jednak potrzebował konta deweloperskiego (99 $ / rok ...), ponieważ aplikacje z podpisem własnym nie mogą uzyskać dostępu do wszystkich funkcji SDK systemu macOS, touchID jest (prawdopodobnie) niedostępny bez podpisu.

PJJ
źródło