SSH pod Windows bez używania haseł.

Witam w pierwszym wpisie z serii "Jak korzystać z Windows'a i nie powyrywać sobie włosów?". Główny cel to zmuszenie TortoiseSVN do pracy bez konieczności ciągłego wpisywania hasła. Zakładam, że mamy dostęp do repozytorium SVN na serwerze UNIX'owym przez protokół SSH.

Na początek potrzebny będzie putty-0.60-installer.exe, który oprócz programu PuTTY zainstaluje jeszcze kilka dodatkowych, takich jak PuTTYgen oraz Pageant.

Odpalamy PuTTYgen i generujemy klucz. Można podczas tego procesu pomachać trochę myszką aby klucz był rzeczywiście losowy. Komputery kiepsko sobie radzą (właściwie to wcale sobie nie radzą) z generowaniem liczb losowych.

Wygenerowany klucz prywatny należy zapisać na dysku ("Save private key"). Najpierw jednak można go zabezpieczyć hasłem oraz dodać komentarz. Natomiast to co znajduje się pod pod etykietą "Public key for pasting..." to klucz publiczny, który musimy umieścić w pliku "authorized_keys" w katalogu ".ssh", który z kolei znajduje się w katalogu domowym na serwerze.

Łączymy się z serwerem, na przykład programem WinSCP. Odnajdujemy w katalogu domowym ".ssh/authorized_keys". Otwieramy ten plik do edycji, a następnie wklejamy treść klucza publicznego na końcu tego pliku.

Uwaga! Cała treść klucza powinna znajdować się w jednej linii i kończyć znakiem nowej linii. Jeśli na serwerze nie ma katalogu ".ssh" albo pliku "authorized_keys", to należy je utworzyć i nadać odpowiednie uprawnienia (u mnie wynoszą 644). Jeśli chcemy utworzyć plik "authorized_keys" lokalnie a potem wysłać go na serwer to należy pamiętać, że musi mieć on kodowanie ANSI oraz format Unix (chodzi o znaki końca linii). W żadnym wypadku nie nadaje się do tego program Notatnik. Polecam skorzystać z czegoś co zasługuje na miano edytora tekstu, na przykład: Notepad++, gedit, emacs, vim.

Próba generalna. Odpalamy PuTTY. Przechodzimy do Connection->SSH->Auth i wskazujemy zapisany wcześniej plik z kluczem prywatnym. Łączymy się z serwerem. Jeśli serwer nie zapytał nas o hasło (lub zapytał, ale o hasło klucza "passphrase"), to wszystko działa poprawnie.

Teraz pojawia się pytanie: po co generowaliśmy klucz, skoro i tak trzeba wprowadzać hasło ("passphrase" klucza) oraz jak zmusić TortoiseSVN aby używał klucza? Klucz prywatny powinien być skojarzony z programem Pageant. Jeśli tak jest, plik będzie widoczny jako ikona komputerka w czarnym kapeluszu. Klikamy na plik klucza. Wpisujemy "passphrase" i mamy spokój z hasłami, aż do wyłączenia komputera. W prawym dolnym rogu ekranu powinna pojawić się ikona programu Pageant.

Od tej pory klucz prywatny jest zarejestrowany w systemie i dostępny dla programów nawiązujących połączenia SSH. Nie trzeba, a nawet nie powinno się zapamiętywać haseł w takich programach.

Aby korzystać wygodnie z TortoiseSVN należy jeszcze zrobić "checkout", gdzie w adresie do repozytorium przed nazwą hosta jest dodany login do serwera. Na przykład:

svn+ssh://login@host/sciezka/do/repo

Od teraz można robić update, commit, przeglądać logi oraz stare wersje plików bez wklepywania za każdym razem loginu i hasła.

Dziękuję za uwagę i niech moc będzie z wami.

P.S. Warto teraz zmienić hasło logowania się do serwera na naprawdę mocne ponieważ i tak nie będziemy go już musieli ręcznie wklepywać.

ZałącznikWielkość
puttygen1.gif12.27 KB
puttygen2.gif16.58 KB
pageant.gif4.21 KB

Odpowiedzi

     Sklep buty sklep internetowy, w naszej ofercie: buty sportowe, buty damskie i m?skie, buty pi?karskie.  Markowe obuwie nike adidas Umbro Mizuno converse mustang caterpillar hd and1. Zawsze oferujemy najni?sze ceny, a jako?? ?wiadczonych przez nas us?ug jest najwy?sza. Sprawd?, jak szybko produkt do Ciebie. Wszystkie buty s? oryginalne, bardzo trwa?e i w atrakcyjnych cenach. Sklep sportowy . oraz internetowy sklep sportowy Foot Brand zaprasza na zakupy.

Odpowiedz