Kategorie | Linux, Poradniki

  

SSH: bezhasłowe logowanie, czyli autoryzacja za pomocą klucza DSA

Opublikowano 03 lipca 2009 przez Franek

Krótko, i na temat, mam nadzieję, że komuś się przyda. Dość często, można powiedzieć, że codziennie loguję się na różne systemy za pomocą SSH. Każde logowanie wiąże się z żmudnym wpisywaniem hasła, a jak każdy wie hasło powinno składać się z małych i wielkich liter, cyfr i znaków specjalnych. :P A kiedy istnieje konieczność zapamiętania kilku takich haseł, może narobić się kaszana. ;) Kiedy dzisiaj DenyHosts na serwerze “A” zbanował moje IP dlatego, że wpisywałem hasło do serwera “B” miarka się przebrała i postanowiłem użyć uwierzytelnienia logowania poprzez SSH za pomocą kluczy DSA. W trakcie logowania następuje identyfikacja na podstawie kluczy DSA (prywatnego na lokalnym i publicznego na zdalnym komputerze), dlatego nie jest konieczne podawanie hasła.

1) Na początku na lokalnym komputerze musimy wygenerować klucz:

ssh-keygen -t dsa -b 1024

Zostaniemy zapytani o lokalizację, w której ma być zapisany klucz, oraz dwukrotnie o hasło, które ma chronić sam klucz. Zostawiamy domyślne położenie klucza, a hasła nie wpisujemy, wduszamy po prostu ENTER – ponieważ chcemy mieć bezhasłowy dostęp. Jeśli wszystko pójdzie dobrze, powinniśmy zobaczyć coś takiego:

Generating public/private dsa key pair.

Enter file in which to save the key (/home/franek/.ssh/id_dsa):

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /home/franek/.ssh/id_dsa.

Your public key has been saved in /home/franek/.ssh/id_dsa.pub.

The key fingerprint is:

fb:6d:6a:9c:bd:4f:50:bc:3a:9a:b8:d2:38:35:b9:d5 franek@stefan

The key’s randomart image is:

+–[ DSA 1024]—-+

| |

| . |

| o |

| . . |

| S. .. . |

| +.. Eo |

| +.= oo . |

| + oo++oo |

| ooo=ooo. |

+—————–+

2) Teraz należy wyeksportować klucz publiczny na zdalny komputer z którym chcemy logować się za pomocą klucza:

scp ~/id_dsa.pub user@serwer.pl:~/

3) Po przekopiowaniu klucza, należy zalogować się na zdalny host (ostatni raz za pomocą hasła ;)), gdzie należy zmienić nazwę pliku klucza, oraz przenieść go do katalogu .ssh:

cat id_dsa.pub >> .ssh/authorized_keys

Jeśli katalog .ssh nie istnieje, należy go utworzyć.

4) To wszystko :D

Należy pamiętać, aby chronić nasz komputer przed osobami niepowołanymi, oraz nie udostępniać nikomu naszego klucza prywatnego.

  

3 Comments For This Post

  1. smerf Says:

    nie udostępniać publicznego? chyba prywatnego ;)

  2. Franek Says:

    Tak właśnie miało być, dzięki Papa Smerfie :D

  3. Sibul Says:

    ;) elegancki tutorial :D piwo masz u mnie xD

Leave a Reply

Polityka komentarzy

     
     
Green Dog Says

MiniBlog