Jestem nowy w ssh klucze. Czy ktoś może wyjaśnić, jak działa ssh-agent bashi ssh-add?
Muszę zrozumieć jego elementy wewnętrzne w przyszłości.
Jestem nowy w ssh klucze. Czy ktoś może wyjaśnić, jak działa ssh-agent bashi ssh-add?
Muszę zrozumieć jego elementy wewnętrzne w przyszłości.
Odpowiedzi:
Agent to program, który trzyma klucze w pamięci tak, że trzeba tylko odblokować je raz , zamiast za każdym razem. ssh-agent robi to dla kluczy SSH.
Typowe metody uruchamiania ssh-agent to:
eval `ssh-agent`- uruchamia to agenta w tle i ustawia odpowiednie zmienne środowiskowe dla bieżącej instancji powłoki.
( ssh-agent , po uruchomieniu bez argumentów, wyświetla polecenia do interpretacji przez powłokę).
exec ssh-agent bash- uruchamia nową instancję bashpowłoki, zastępując obecną.
(Przy jednym lub większej liczbie argumentów ssh-agent nie wypisuje niczego, ale uruchamia określone polecenie: w tym przypadku bashpowłokę, ale technicznie może to być cokolwiek.)
Druga metoda jest czasami preferowana, ponieważ automatycznie zamyka ssh-agent po zamknięciu okna terminala. (Po uruchomieniu go evalagent pozostałby uruchomiony, ale niedostępny).
Jednak to uruchamia tylko pustego agenta. Aby faktycznie był użyteczny, musisz użyć ssh-add , który odblokowuje twoje klucze (zwykle ~/.ssh/id_*) i ładuje je do agenta, czyniąc je dostępnymi dla połączeń ssh lub sftp .
Ponadto możesz dodać niektóre klucze na początku sesji.
Edytuj ~/.bashrcplik i dodaj:
ssh-add &>/dev/null || eval `ssh-agent` &>/dev/null # start ssh-agent if not present
[ $? -eq 0 ] && { # ssh-agent has started
ssh-add ~/.ssh/your_private.key1 &>/dev/null # Load key 1
ssh-add ~/.ssh/your_private.key2 &>/dev/null # Load key 2
}
Sprawdź swoje klucze za pomocą ssh-add -l
Możesz zatrzymać bieżącą sesję agenta ssh za pomocą ssh-agent -k
Coś, co należy wiedzieć o ssh-agent i .bashrc, to nie ładowanie zbyt wielu kluczy. Domyślna liczba prób demona ssh jest ograniczona do 6. Można to zmienić /etc/ssh/sshd_configza pomocą MaxAuthTrieswartości.
ssh-addpomocą „&”? Czy zakładasz, że pliki kluczy prywatnych nie są chronione?