Mam prywatny klucz SSH, którego używam do uwierzytelniania, który jest przechowywany w ~ / .ssh / id_rsa . Kiedy ssh do serwera, pojawia się monit o hasło do odblokowania klucza:
Lubię to. Podoba mi się również to, że mogę ssh raz po raz i nie monituje mnie o podanie hasła.
Nie podoba mi się to, że nie muszę wprowadzać hasła w ciągu kilku dni, a nawet tygodni. Mogę zablokować ekran lub go uśpić i nadal nie muszę wprowadzać hasła klucza. Hasło wydaje się wygasać tylko wtedy, gdy się wylogowuję (co rzadko robię).
Jak sprawić, aby hasło klucza wygasło po pewnym czasie, zmuszając mnie do ponownego wprowadzenia hasła w celu uwierzytelnienia? Sprawiając, że być może po 1 godzinie klucz zostanie automatycznie zapomniany.
źródło
Uwaga : w nowszych wersjach systemu OS X należy wyłączyć ochronę integralności systemu, aby ta odpowiedź zadziałała. (Podziękowania dla @Dave Gregory i @Jaap za zwrócenie na to uwagi.)
Otwórz
/System/Library/LaunchAgents/com.openssh.ssh-agent.plist
(w starszych wersjach:)org.openbsd.ssh-agent.plist
w edytorze tekstu. Zastąpić:z:
Ten klucz wygasa po 30 minutach.
Restart. Czekaj, uruchom ponownie?!? To nie jest Windows! Tak, uruchom ponownie.
Możesz spróbować rozszyfrować instrukcje zmiany ustawienia w locie , ale powodzenia.
źródło
Musisz ustawić żywotność klucza. Zwykle domyślnie jest ustawiony na zawsze.
Po uruchomieniu
ssh-add
chcesz użyć tej-t
opcji. Jeśli chcesz mieć kluczowe życie na godzinę, to jestssh-add -t 1h
. Formaty czasu można zobaczyć nasshd_config
stronie podręcznika, ale po prostu są to liczby, po których następują s, m, h, d lub w przez sekundy, minuty, godziny, dni lub tygodnie.ssh-add
można umieścić w pliku .bashrc, a poprosi Cię o jednokrotne sprawdzenie klucza. Nawet gdy klucz „wygasa”, nie jest usuwany - po prostu prosi o podanie hasła, gdy próbuje się go użyć.Inną opcją byłoby zmienić opcje uruchamiania, dla
ssh-agent
których są przechowywane/System/Library/LaunchAgents/org.openbsd.ssh-agent.plist
i dodać je-t
. (Używam ichLaunchControl
do zmiany, ale możesz to zrobić ręcznie, jeśli jesteś ostrożny.)źródło
ssh-add
ręcznie przedssh
każdym uruchomieniem . To ciekawe, ale naprawdę szukam czegoś automatycznego.org.openbsd.ssh-agent.plist
rozwiązaniaInnym rozwiązaniem jest:
Dzięki temu rozwiązaniu nie musisz wybierać limitu czasu dla całego pęku kluczy - dość denerwujące, gdy chcesz ustawić limit czasu na rejestrowanie hasła klucza prywatnego - i nie musisz wyłączać SIP w celu edycji / System / Biblioteka / LaunchAgents / org.openbsd.ssh-agent.plist.
źródło