Jeśli często logujemy się po ssh od siebie na jakąś maszynę, to ciągłe wpisywanie hasła może najzwyczajniej w świecie wkurzać.
Na szczęście można w bardzo prosty sposób sprawić, że hasła tego nie będziemy musieli wpisywać ani nawet pamiętać.
Nie będę tu wiele wyjaśniał, tylko przejdę od razu do rzeczy.
- Co masz zmienić
REMOTE_USER
– nasza nazwa użytkownika na zdalnym hoście
REMOTE_HOST
– nazwa (adres) zdalnego hosta - Host lokalny (np. swój laptop na biurku)
Generujemy klucz:
ssh-keygen -t rsa
jak o coś zapyta, to tylko enterem go, aż zobaczymy komunikat:
Your public key has been saved in ~/.ssh/id_rsa.pub.
no i gotowy klucz wrzucamy SPC’em na zdalnego hosta (póki co zapyta jeszcze o hasło):
scp ~/.ssh/id_rsa.pub REMOTE_USER@REMOTE_HOST:~/id_rsa.pub
- Host zdalny (ten, do którego chcemy się łączyć bez podawania hasła)
Jak już się tam sshujniemy, t sprawdzamy, czy jest katalog
~/.ssh
. Jak nie ma, to:
mkdir ~/.ssh
chmod 700 ~/.sshNa koniec wykonujemy:
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
Jak nic nie spartoliliśmy, to od teraz możemy się logować bez hasła (przy połączeniu ssh nawet o nie nie zapyta)