--=REKLAMA=--

SSH

Z Joomla!WikiPL

Wersja Zwiastun (dyskusja | edycje) z dnia 22:19, 14 gru 2013

(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)

Korzystanie z SSH

SSH (ang. Secure SHell - bezpieczna powłoka) służy do pracy na odległym komputerze, podobnie jak Telnet, z tym że w przypadku SSH sesje są w 100% szyfrowane. Aby korzystać z SSH, program musi być zainstalowany zarówno na komputerze lokalnym, jak i na serwerze.

Użytkownicy Linuksa mogą korzystać z dostępnego najczęściej w systemie OpenSSH. Natomiast osoby pracujące z różnymi odmianami Windows mogą zainstalować jeden z darmowych pakietów:

  • PuTTY do zdalnej pracy.
  • WinSCP - do przesyłania i zarządzania plikami.

Korzystanie z klienta SSH jest podobne na różnych systemach.

Korzystanie z PuTTY w Windows

Przy pierwszym uruchomieniu programu zostanie wyświetlone okno dialogowe umożliwiające konfigurację. W bogatym zestawie opcji dwie są szczególnie istotne i niezbędne:

  • adres serwera, z którym chcesz się połączyć,
  • rodzaj połączenia (RAW, Telnet, Rlogin, SSH, Serial )

Putty config.png

W polu "Host Name" wpisz adres serwera, na którym posiadasz konto i chcesz się z nim połączyć. W sekcji Connection Type zaznacz protokół SSH. W polu Save Sessions wpisz dowolną, czytelną dla siebie nazwę połączenia i kliknij przycisk Save, aby w przyszłości nie wpisywać każdorazowo adresu.

Aby połączyć się z serwerem, naciśnij widoczny w dolnej części okna programu przycisk "Open". Zostanie wyświetlone okno z pytaniem o wiarygodność serwera, z ktorym usiłujesz się połączyć. Pojawi się ono dla każdego nowego komputera, z którym się zechcesz się połączyć. Potwierdź zamiar połączenia.

Puty login.png

Program zapyta o Twoje dane. W wiersz Login as podaj nazwę swojego konta, np. uzytkownik

Putty login 01.png

Program zapyta o hasło. Wpisz je. Podczas wpisywania hasło nie będzie widoczne.

Puty login 00.png

Jeżeli hasło zostanie podane prawidłowo, zostaniesz zalogowany i możesz rozpocząć pracę na serwerze. Na ilustracji poniżej znajdziesz przykład polecenia wywołującego menedżer plików Midnight Commander oraz polecenie kończące pracę:

Putty exit.png

Aby zakończyć pracę z serwerem należy najpierw zakończyć pracę z uruchomionymi programami (np. mc), a następnie rozłączyć się. Możemy zamknąć okno programu w sposób przyjęty w Windows, naciskając krzyżyk X w prawym górnym rogu okna programu albo wpisać polecenie:

exit

W pierwszym przypadku pojawi się pytanie, czy na pewno zakończyć sesję. Potwierdzamy decyzję, naciskając klawisz OK. nie należy ze względów nie wolno pozostawiać sesji otwartej np. na noc (ze względów bezpieczeństwa i obciążenia serwera). Aby zakończyć pracę, zamykamy i kończymy pracę ze wszystkimi programami, z jakich korzystamy na serwerze a następnie zamykamy okno programu PuTTY w przyjęty dla Windows sposób. Pojawi się pytanie:

Putty exit 01.png

Kolejne logowania

Jeśli konfigurując program, zapiszesz sesję, przy następnych logowaniach nie trzeba będzie podawać danych logowania, wystarczy

  1. Otworzyć program
  2. Zaznaczyć w oknie Saved Session nazwę połączenia
  3. Nacisnąć umieszczony po prawej stronie przycisk Load
  4. Nacisnąć znajdujący się na dole okna klawisz Open

Putty login 03.png

Logowanie

Aby połączyć się z serwerem z komputera z Linuksem:

  1. Przejdź do trybu Okno terminala
  2. Wpisz polecenie:
ssh -l uzytkownik serwer 

Słowo uzytkownik zastąp swoją rzeczywistą nazwą użytkownika, a serwer nazwą domeny albo adresem IP serwera, z którym chcesz się połączyć.

Zostaniesz poproszony o hasło związane z nazwą użytkownika. Przy pierwszym połaczeniu zostaniesz poproszony o potwierdzenie uprawnień. Aby zakończyć sesję SSH, naciśnij kombinację klawiszy Ctrl-D albo wpisz exit.

Przykładowo, aby połączyć się z serwerem www.mojadomena.com jako użytkownik "wlasciciel", musisz wpisać:

ssh -l wlasciciel www.mojadomena.com

SSH zakłada, że na obu maszynach masz identyczny login. Jeśli jest inaczej, a często jest, musisz użyć - jak w przykładzie powyżej - opcji -l [login], a następnie podać nazwę użytkownika.

Przykłady poleceń

Rozpakowanie archiwów

Aby rozpakować pakiet źródłowy Joomla! w formacie bz2, wpisz np.

bunzip2 Joomla_1.5.1-Stable-Full_Package.tar.bz2

Aby rozpakować pakiet źródłowy Joomla! w formacie tar i zastąpić nimi starsze pliki Joomla, wpisz przykładowo:

tar xvf Joomla_1.5.1-Stable-Full_Package.tar

Polecenia rozpakowujące inne typy pakietów znajdziesz na stronie http://www.accessdataservices.com/blog/unix-101-unzipping-files/.

Aktualizacje bazy danych

A oto przykładowe polecenia MySQL:

1. Uaktualnienie sql przez MYSQL z RC1 do RC2

> mysql -u nazwa_uzytkownika -D nazwa_bazy_danych_joomla  -p <  diff_rc1_to_rc2.sql

2. nie zmieniaj (bez zmian - no changes) z 2 do rc3

> 

3. Zmień z rc3 do rc4

> mysql -u nazwa_uzytkownika -Dnazwa_bazy_danych_joomla  -p <  diff_rc3_to_rc4.sql

4. bez zmian z 4 do aktualnej

>

Bezpieczne kopiowanie przez SCP

Integralną częścią pakietu SSH jest program SCP (secure copy), służący do bezpiecznego kopiowania plików na zdalny komputer z działającym serwerem SSH oraz ze zdalnego komputera na komputer lokalny. Duet SSH+SCP jest doskonałym zamiennikiem serwera FTP, który jak wiadomo nie grzeszy bezpieczeństwem. W najprostszej postaci, skopiowanie pliku z użyciem SCP sprowadza się do wydania komendy:

scp /sciezka/do/pliku/plik.php użytkownik@serwer:~/plik.php

W tym przykładzie plik o nazwie plik.php zostanie skopiowany z lokalnego komputera na komputer o adresie serwer (zamiast nazwy możesz użyć adresu IP) do katalogu domowego użytkownika użytkownik. Zamiast ~/ możemy podać oczywiście dowolną, inną ścieżkę na zdalnym serwerze, do której możemy zapisywać, np. /tmp lub /home/public.

Plik będzie dostępny pod nazwą 'plik.php'. Zostaniesz poproszony o podanie hasła dla użytkownika 'użytkownik'. Jeżeli autentykacja powiedzie się i zgadzają się prawa dostępu, plik zostanie skopiowany. Nazwę pliku na maszynie docelowej można pominąć, jeśli nie chcesz jej zmieniać. Mechanizm ten umożliwia zmiany nazwy plików podczas kopiowania.

Proces może odbywać się także w drugą stronę. Aby skopiować plik ze zdalnego serwera na lokalny komputer również użyjemy programu scp:

scp użytkownik@serwer:sciezka/do/pliku/na/serwerze/plik.php /sciezka/do/lokalnego/katalogu/plik.php

- skopiuje plik plik.php znajdujący się w katalogu sciezka/do/pliku/na/serwerze/ na komputerze serwer do katalogu /sciezka/do/lokalnego/katalogu/.

Możemy również kopiować całe katalogi. Służy do tego parametr '-r' (rekursywnie)

scp -r uzytkownik@serwer:/zdalnykatalog .

Powyższe polecenie skopiuje zawartość katalogu 'zdalnykatalog' na komputerze 'serwer' do katalogu domowego. Nazwy plików i podkatalogów pozostaną bez zmian.

Dziękujemy za wkład

» Stefan Wajda [zwiastun],