Konfiguracja dostępu za pośrednictwem protokołu SSH bez użycia hasła

Przed skonfigurowaniem programu Subversion lub Dreamweaver dla protokołu SVN+SSH utwórz parę kluczy RSA i skonfiguruj klucz publiczny na serwerze. Ta para kluczy publicznych/prywatnych służy do uwierzytelniania za pomocą serwera, zamiast przechowywania i przekazywania hasła w formie zwykłego tekstu. (Możliwa jest konfiguracja protokołu SSH bez użycia par kluczy; jednak firma Adobe tego nie zaleca ze względu na brak zabezpieczeń.)

Aby skonfigurować klucze RSA, utwórz parę prywatnych/publicznych kluczy RSA na komputerze klienta. Umieść klucz publiczny na serwerze, a następnie autoryzuj klucz na serwerze. Firma Adobe zaleca również, aby później przetestować połączenie SSH w celu sprawdzenia, czy zostało ono poprawnie skonfigurowane.

Uwaga: Aby wykonanie tych kroków było możliwe, wymagany jest dostęp do komputera klienckiego (tj. do tego, z którego nawiązujesz połączenie). Te kroki wymagają również dostępu do serwera (np. bezpośredniego lub za pośrednictwem protokołu SSH/FTP). W systemie Windows potrzebny jest dostęp do klienta SSH (np. TortoiseSVN) oraz do aplikacji generatora kluczy RSA (np. PuTTYgen). Do systemu Mac OS dołączony jest klient SSH oraz generator kluczy.

Tworzenie kluczy RSA w systemie Mac OS

Wykonaj następujące kroki na komputerze klienckim:

  1. Otwórz okno Terminal.
  2. Wprowadź następujące polecenie, a następnie naciśnij klawisz Enter:

    ssh-keygen -t rsa

  3. Po wyświetleniu monitu o zapisanie klucza naciśnij klawisz Enter, aby wybrać lokalizację domyślną.
  4. (Opcjonalnie) Wpisz hasło dla klucza, następnie naciśnij klawisz Powrót/Enter. Po wpisaniu hasła wpisz je ponownie, aby potwierdzić i nacisnąć klawisz Powrót/Enter.

    Zostanie wyświetlony komunikat potwierdzenia z informacją, że klucze prywatne i publiczne zostały zapisane, w tym ich lokalizacja zapisania oraz nazwy.

  5. Aby skopiować klucz publiczny na serwer, wprowadź następujące polecenie, podając odpowiednie informacje w pozycjach NazwaKonta i NazwaSerwera:

    scp .ssh/id_rsa.pub NazwaKonta@NazwaSerwera:~/temp_rsa.pub

  6. Połącz się z serwerem za pośrednictwem protokołu SSH. Wprowadź następujące polecenie, podając odpowiednie informacje w pozycjach NazwaKonta i NazwaSerwera:

    ssh -l NazwaKonta@NazwaSerwera

  7. Wpisz hasło po wyświetleniu monitu o zalogowanie.

    Uwaga: Jeśli możesz zalogować się bez monitu o podanie hasła, oznacza to, że komputer / identyfikator logowania został już uwierzytelniony na serwerze. Pomiń kolejny rozdział i od razu przejdź do tematu Testowanie połączenia SSH poniżej.

  8. Przejdź do tematu Konfiguracja klucza na serwerze.

Tworzenie kluczy RSA w systemie Windows

Wykonaj następujące kroki na komputerze klienckim:

  1. Otwórz aplikację generatora kluczy RSA (np., PuTTYgen).
  2. Wygeneruj parę kluczy RSA.
  3. Zapisz klucz prywatny i klucz publiczny. W pozostałych krokach przyjmuje się, że zostały w tym celu użyte nazwy klucz_prywatny i klucz_publiczny.
  4. Umieść klucz_publiczny w ~/, używając nazwy temp_rsa.pub na serwerze (np., bezpośrednio lub za pośrednictwem protokołu SSH/FTP).
  5. Połącz się z serwerem za pośrednictwem protokołu SSH. Przyjmując, że używasz TortoiseSVN, wprowadź następujące polecenie, podając odpowiednie informacje w pozycjach NazwaKonta i NazwaSerwera:

    tortoiseplink NazwaKonta@NazwaSerwera

  6. Wpisz hasło po wyświetleniu monitu o zalogowanie.

    Uwaga: Jeśli możesz zalogować się bez monitu o podanie hasła, oznacza to, że komputer / identyfikator logowania został już uwierzytelniony na serwerze. Pomiń kolejny rozdział i od razu przejdź do tematu Testowanie połączenia SSH poniżej.

  7. Przejdź do tematu Konfiguracja klucza na serwerze.

Konfiguracja klucza na serwerze

Na serwerze (np. bezpośrednio lub za pośrednictwem protokołu SSH/FTP) wykonaj następujące kroki:

  1. Upewnij się, że folder .ssh istnieje na serwerze. Wprowadź następujące polecenie, a następnie naciśnij klawisz Enter:

    ls -al ~/.ssh

  2. Wykonaj jedną z następujących czynności:

    • Jeśli wyniki polecenia ls wskazują, że folder nie istnieje, utwórz go, a następnie autoryzuj klucz na serwerze. Wprowadź następujące polecenia i po wprowadzeniu każdego z nich naciśnij klawisz Enter:

      mkdir ~/.ssh
       
      mv ~/temp_rsa.pub ~/.ssh/authorized_keys
       
    • Jeśli folder istnieje, dodaj klucz do listy autoryzacji serwera. Wprowadź następujące polecenia i po wprowadzeniu każdego z nich naciśnij klawisz Enter:

      cat ~/.ssh/authorized_keys ~/temp_rsa.pub > temp_keys
       
      mv temp_keys ~/.ssh/authorized_keys

Testowanie połączenia SSH

Po wykonaniu powyższych kroków przeprowadź test, aby upewnić się, że możesz połączyć się z serwerem za pośrednictwem protokołu SSH bez monitu o podanie hasła.

Jeśli możesz połączyć się, ale nadal jest wyświetlany monit o hasło, powtórz odpowiednie kroki dotyczące serwera podane powyżej. Rozważ ponowne rozpoczęcie przez utworzenie pary kluczy na kliencie, a następnie powtórzenie pozostałych kroków.

Uwaga: Podczas generowania kluczy pamiętaj, aby podać odpowiednią liczbę bitów dla serwera. Najczęściej jest to 2048 bitów. Jednak jeśli nie masz pewności, sprawdź u swojego dostawcy usług hostingowych.

Jeśli nadal nie możesz połączyć się bez monitu o podanie hasła, zobacz rozdział OpenSSH lub skorzystaj z dodatkowej pomocy swojego dostawcy usług hostingowych.

Konfiguracja programu Subversion do korzystania z protokołu SSH

Aby skonfigurować program Subversion do korzystania z protokołu SSH, dodaj ścieżkę do klienta SSH oraz dane logowania do pliku konfiguracyjnego programu Subversion.

Uwaga: Te informacje dotyczą sytuacji, gdy użytkownicy systemu Windows używają klientaTortoiseSVN, a użytkownicy systemu Mac używają klienta Mac OS SSH.

Lokalizacje pliku konfiguracyjnego programu Subversion

Aby wykonać te kroki, najpierw otwórz plik konfiguracyjny programu Subversion do edycji. Plik konfiguracyjny znajduje się w jednym z następujących folderów:

  • Windows 7 i Vista

    C:\Users\Your User Name\AppData\Roaming\Subversion\config
  • Windows XP

    C:\Documents and Settings\Your User Name\Application Data\Subversion\config
  • Mac OS X

    /Users/Your User Name/.subversion/config

Konfiguracja programu Subversion dla systemu Mac OS

  1. W aplikacji Terminal zlokalizuj folder .subversion w folderze użytkownika, jak wspomniano powyżej. (Wybierz kolejno opcje Przejdź > Przejdź do folderu w aplikacji Finder lub użyj polecenia, np. ls -al ~/.subversion w aplikacji Terminal.)
  2. Ścieżka do SSH to zwykle "/usr/bin/ssh". Jeśli nie masz pewności, wprowadź w aplikacji Terminal tekst which ssh.
  3. Otwórz plik konfiguracyjny programu Subversion do edycji za pomocą edytora tekstu (np. nano, pico, itd.).

    Np. wprowadź w aplikacji Terminal nano ~/.subversion/config
    .
  4. Wprowadź w sekcji tuneli (poniżej [tunele]):

    ssh = $SVN_SSH /usr/bin/ssh

    Uwaga: Aby użyć uwierzytelnienia w oparciu o klucze, dodaj -i PathToKey. Np. ssh = $SVN_SSH /usr/bin/ssh -i PathToKey

    Możesz również wprowadzić do tej ścieżki nazwę użytkownika i hasło, dodając -l NazwaUżytkownika -pw Hasło. Ta metoda nie jest bezpieczna, zatem nie jest zalecana przez firmę Adobe.


  5. Zapisz i zamknij plik konfiguracyjny.

Konfiguracja programu Subversion dla systemu Windows

  1. W Eksploratorze Windows znajdź folder Subversion w folderze użytkownika, jak opisano powyżej.
  2. Otwórz plik w zwykłym edytorze tekstowym, np. w Notatniku.
  3. W sekcji [tunele] podaj, gdzie znajduje się klient ssh. Ta lokalizacja zależy od tego, gdzie został on zainstalowany.

    Otwórz plik i wprowadź w sekcji tuneli (poniżej [tunele]):

    ssh = $SVN_SSH C:/PathToSSHClient/tortoiseplink.exe

    Uwaga: Aby użyć uwierzytelniania w oparciu o klucz, dodaj -i PathToKey. Np. ssh = $SVN_SSH C:/PathToSSHClient/tortoiseplink.exe -i
    PathToKey


    Możesz również wprowadzić do tej ścieżki nazwę użytkownika i hasło, dodając -l NazwaUżytkownika -pw Hasło. Ta metoda nie jest bezpieczna, zatem nie jest zalecana przez firmę Adobe.

  4. Zapisz i zamknij plik konfiguracyjny.

Ustawianie witryny do korzystania z programu Subversion za pośrednictwem protokołu SSH

  1. Otwórz definicję witryny programu Dreamweaver, a następnie z listy kategorii wybierz pozycję Kontrola wersji.
  2. Wybierz program Subversion z menu Dostęp.
  3. Wybierz opcje SVN+SSH dla Protokołu.
  4. Wprowadź adres serwera w polu Adres serwera.
  5. Jeśli nie została ona dołączona w adresie serwera, wprowadź ścieżkę repozytorium w polu Ścieżka repozytorium.
  6. Tylko Dreamweaver CS4:
    1. Jeśli serwer nie korzysta z domyślnego portu SSH (22), wybierz opcję Niedomyślny, a następnie wprowadź Port serwera.
    2. Wprowadź Nazwę użytkownika i Hasło. Pozostaw te pola puste w przypadku logowania anonimowego.

      Uwaga: Nazwa użytkownika i hasło NIE pochodzą z programu Dreamweaver. Jedynym sposobem na wysłanie użytkownika jest wprowadzenie informacji w pozycjach NazwaKonta@NazwaSerwera w polu nazwy serwera.
  7. Kliknij przycisk Testuj, aby testować połączenie.

  8. Zamknij okno dialogowe Definicja witryny.
  9. W panelu Pliki wybierz widok Lokalny lub Repozytorium.
  10. Kliknij prawym przyciskiem myszy (Windows) lub Ctrl+kliknięcie (Mac OS) na folderze głównym, aby wyświetlić menu.

  11. Wybierz kolejno opcje Kontrola wersji > Pobierz najnowsze wersje, aby zaktualizować listę plików.

Ta zawartość jest licencjonowana na warunkach licencji Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  Posty z serwisów Twitter™ i Facebook nie są objęte licencją Creative Commons.

Informacje prawne   |   Zasady prywatności online