Konfiguracja programu Subversion za pomocą protokołu SSH w programie Dreamweaver

Ostatnia aktualizacja 27 kwi 2021

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:

Otwórz okno Terminal.

Wprowadź następujące polecenie, a następnie naciśnij Enter:

ssh-keygen -t rsa

Po wyświetleniu monitu o zapisanie klucza naciśnij klawisz Enter, aby wybrać lokalizację domyślną.

(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.

Aby skopiować klucz publiczny na serwer, wprowadź polecenie podobne do poniższego, zastępując odpowiednie wartości AccountName i ServerName:

scp .ssh/id_rsa.pub AccountName@ServerName:~/temp_rsa.pub

Połącz się z serwerem za pośrednictwem protokołu SSH. Wprowadź polecenie podobne do poniższego, zastępując odpowiednie wartości AccountName i ServerName:

ssh -l AccountName@ServerName

Po wyświetleniu monitu wpisz hasło, aby się zalogować.

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

Przejdź do tematu Konfiguracja klucza na serwerze.

Tworzenie kluczy RSA w systemie Windows

Wykonaj następujące kroki na komputerze klienckim:

Otwórz aplikację generatora kluczy RSA (np., PuTTYgen).
Wygeneruj parę kluczy RSA.
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.
Umieść klucz_publiczny w ~/, używając nazwy temp_rsa.pub na serwerze (np., bezpośrednio lub za pośrednictwem protokołu SSH/FTP).

Połącz się z serwerem za pośrednictwem protokołu SSH. Zakładając, że używasz TortoiseSVN, wprowadź polecenie podobne do poniższego, zastępując odpowiednie wartości AccountName i ServerName:

tortoiseplink AccountName@ServerName

Po wyświetleniu monitu wpisz hasło, aby się zalogować.

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

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:

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

ls -al ~/.ssh

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 naciśnij Enter po każdym z nich:

    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 naciśnij Enter po każdym z nich:

    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\Nazwa użytkownika\AppData\Roaming\Subversion\config
  • Windows XP

    C:\Documents and Settings\Twoja nazwa użytkownika\Application Data\Subversion\config
  • Mac OS X

    /Users/Nazwa użytkownika/.subversion/config

Konfiguracja programu Subversion dla systemu Mac OS

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.)
Ścieżka do SSH to zwykle "/usr/bin/ssh". Jeśli nie masz pewności, wprowadź w aplikacji Terminal tekst which ssh.
Otwórz plik konfiguracyjny programu Subversion do edycji za pomocą edytora tekstu (np. nano, pico, itd.).

Na przykład wprowadź nano ~/.subversion/config w Terminalu.
Wprowadź następujące elementy w sekcji tunnels (pod [tunnels]):

ssh = $SVN_SSH /usr/bin/ssh

Uwaga: Aby użyć uwierzytelniania opartego na kluczach, dodaj -i PathToKey. E.g. ssh = $SVN_SSH /usr/bin/ssh -i PathToKey

Alternatywnie można wprowadzić nazwę użytkownika i hasło do tej ścieżki, dodając -l UserName -pw Password. Ta metoda nie jest bezpieczna, zatem nie jest zalecana przez firmę Adobe.
Zapisz i zamknij plik konfiguracyjny.

Konfiguracja programu Subversion dla systemu Windows

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

Otwórz plik i wprowadź następujące elementy w sekcji tunnels (pod [tunnels]):

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

Uwaga: Aby użyć uwierzytelniania opartego na kluczach, dodaj -i PathToKey. E.g. ssh = $SVN_SSH C:/PathToSSHClient/tortoiseplink.exe -i PathToKey

Alternatywnie można wprowadzić nazwę użytkownika i hasło do tej ścieżki, dodając -l UserName -pw Password. Ta metoda nie jest bezpieczna, zatem nie jest zalecana przez firmę Adobe.
Zapisz i zamknij plik konfiguracyjny.

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

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

Uwaga: Nazwa użytkownika i hasło NIE są pobierane z programu Dreamweaver. Jedynym sposobem na wysłanie użytkownika jest wprowadzenie informacji w pozycjach NazwaKonta@NazwaSerwera w polu nazwy serwera.

Kliknij przycisk Testuj, aby testować połączenie.

Zamknij okno dialogowe Definicja witryny.
W panelu Pliki wybierz widok Lokalny lub Repozytorium.

Kliknij prawym przyciskiem myszy (Windows) lub Ctrl+kliknięcie (Mac OS) na folderze głównym, aby wyświetlić menu.

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