czwartek, 30 stycznia 2014

SSH - putty autoryzacja kluczem

Uciążliwe hasło

Jednych z częściej wykonywanych operacji przez administratora jest autoryzacja. Oczywiście można być połączony cały czas, ale w środowisku korporacyjnym gdzie funkcjonuje limitowanie tego typu "przywilejów" będziesz musiał ciągle zmieniać i podawać hasła. 
Znajdą się oczywiście "specjaliści", którzy na siłę będą Ci wciskać domenową autoryzację Window lub LDAP i może jeszcze inne cukiereczki.

Ja osobiście korzystam z czegoś prostszego.

Klient windows putty, pagent, puttygen

Jako że korzystam z Windows (nie z przyjemności), trzeba mieć pod ręką jakiego klienta ssh. Nie wiem nawet czy jest jakaś alternatywa do putty, w każdym razie używam.
W ramach paczek, które oferuje można sobie wygenerować klucze RSA i na podstawie tego się autoryzować.

putty

W przypadku klienta putty dla Windows robię to tak:
  • wygenerować klucz puttygen
  • zapisać klucze do plików (najlepiej z hasłem)
  • skopiować zawartość klucza publicznego (wyciąć entery
  • na maszynie na której chcemy się logować kluczem utworzyć plik $HOME/.ssh/authorized_keys skopiować do niego zawartość (dodać na końcu) w formacie
  • ssh-rsa 12312312313212312sdfsdfsdfd.............s23423432424234== user@ip
Uwaga!!! na entery puttygen generuje klucz z enterami (powycinać)
ustawić w putty do autoryzacji klucz prywatny

pageant

Wykorzystać pageant do ładowania kluczy do autoryzacji.
Dodać do autostat-u odpalenie pageant z ładowaniem kluczy
"C:\Program Files\ssh\pageant.exe" "c:\Users\user\Documents\ssh\local\keys.prv.ppk"
Klucze lepiej przechowywać w katalogu domowym
Jeżeli klucz zostanie wygenerowany bez hasła (teoretycznie niezalecane) w praktyce w wewnętrznej sieci bardzo wygodne), będziemy mieli dostęp tylko po wpisaniu ip do clienta ssh

Od tego momentu wszystkie operacji ssh (putty, winscp) gdy uda się automatyzować w/w kluczem będą wykonywane automatycznie w oparciu o klucze

Klient linux

ssh-keygen -t rsa -C "xxx@host"
Wygenerowane zostaną pliki w katalogu domowym ~/.ssh/ (id_rsa, id_rsa.pub)
Zawartość id_rsa.pub trzeba skopiować do authorized_keys na maszynie docelowej. Katalog ~/.ssh/, jeżeli nie ma trzeba utworzyć, należy zwrócić uwagę na uprawnia.

Konfiguracja dla konta linux

Dla konta linux na którym chcę się logować przy pomocy klucza stosuję następującą procedurę:

  cd ~
  mkdir .ssh
  chmod 700 .ssh/

Kopiowanie kluczy z innej maszyny (to uproszczona wersja). Można dodać poszczególne klucze ręcznie.
  scp user@ip:/home/kczerw/.ssh/authorized_keys .ssh/ 

  chmod 400 .ssh/authorized_keys

Uprawnienia do plików są bardzo ważne!!!


Brak komentarzy:

Prześlij komentarz