SSH – osnove korištenja na Linux poslužiteljima

Vjerojatno ste se mnogo puta našli u situaciji kad vam je potreban vrlo brz i “moćan” alat za manipulaciju fileovima, bazama, cronovima, web aplikacijama i hosting accountom. Ako hostate na Linux poslužiteljima vaše potrebe će najbolje zadovoljiti SSH. Provjerite zašto je ssh u većini slučajeva i jedini pravi način na koji se neke radnje mogu obaviti.

SSH Linux


Što je točno ssh?

SSH je sigurni protokol za udaljenu administraciju računala.

Svaki od naših Linux servera posjeduje ssh servis za udaljeni pristup, te je korisnicima omogućen ssh pristup uz upotrebu odgovarajućeg klijenta. Na Internetu možete pronaći razne ssh klijente, a kao pouzdane i besplatne možemo vam preporučiti : Linuxov ugrađeni OpenSSH SSH client, Putty za Windows računala ili NiftyTelnet za MacOS.

Kako se možete spojiti na server?

Koristeći Linuxov ugrađeni ssh klijent spajanje se vrši putem komande:

ssh username@hostname

Ako se na server spajate po prvi put, klijent će vas pitati želite li spremiti jedinstveni server ssh fingerprint; nakon što prihvatite fingerpint ssh klijent će tražiti da unesete password za username s kojim se spajate. Ako je password točan ssh klijent će se uredno spojiti na server.

Kako bi se na server spojili putem Putty klijenta?

Putty klijent ssh servis

Nakon pokretanja Putty programa pojavit će vam se ovakav prozor. U polje hostname unosite naravno ime servera na koji se spajate. Port za spajanje ostaje 22, connection type ostavljate ssh. Ako kliknete na tipku open klijent će se spojiti na server sa zadanim parametrima, međutim do sada zadane parametre kao i dodatne advanced parametre (dokumentaciju parametara naći će te ovdje) možete spremiti u session tako da utipkate željeni session name te kliknete na tipku save.

Svi parametri koje ste prethodno podesili vam ostaju spremljeni za novo pokretanje programa, a jednostavnim dvostrukim klikom na ime sessiona pokreće se terminal sa zadanim parametrima.

Klikom na tipku open ili na prethodno sačuvani session otvara se novi prozor, koji će vas ako se spajate po prvi put pitati želite li spremiti server fingerprint. Nakon spremanja fingerprinta terminal će vas pitati username te zatim password.

Ok ulogirao se, što sad?

U ovom trenutku server od vas očekuje komandnolinijsku instrukciju. Nije tako strašno kao što zvuči!

Nakon što ste se spojili ssh-om na server ušli ste u komandnolinijsko sučelje Linux servera, koje nije toliko grafički oku ugodno kao desktop okruženje vašeg računala ali je jednako efikasno, a u većini slučajeva čak i više. Utipkane komande se izvršavaju tek nakon što ih potvrdite tipkom enter.

Neke od osnovnih komandi su vrlo slične starim MSDos komandama, pa tako npr. komanda:

mkdir - kreira direktorij

cd - navigira kroz direktorije

ls - lista sadržaj trenutnog direktorija

pwd - ispisuje apsolutnu putanju direktorija u kojem se nalazimo

rm - briše direktorije ili fileove (oprezno!)

cp - za kopiranje fileova ili direktorija

mv - za premještanje

Dodatne komande možete pronaći pomoću ove pretrage, a par zgodnih trikova ćete naći i na ovoj stranici.

Svaka komanda je dokumentirana i za svaku komandu možete putem ssh konekcije pozvati manual. Komanda za pozivanje manuala/dokumentacije je

man imekomande

Ako želite pogledati dokumentaciju za komandu ls jednostavno utipkate

man ls

Dokumentacijom se krećete pomoću kursorskih tipki, a iz nje izlazite pritiskom na tipku “Q“.

Zašto je ssh puno bolji od ftp?

Problem kod ftp-a je što je to isključivo file transfer protokol, ako biste htjeli preseliti fileove iz jednog foldera u drugi ftp klijent mora za svaki file posebno establishati konekciju, izvršiti komandu te nanovo čitati strukturu direktorija. Ovaj cijeli proces s ftp-om može potrajati i po nekoliko minuta ili sati ovisno o broju fileova za premještanje i brzini konekcije.

Kroz shell to možete jednostavno, za manje od sekundu, izvršiti komandom

mv trenutna_lokacija nova_lokacija

Naravno, ako želite preseliti samo slike .jpg formata možete koristit wildcarde bez nepotrebnog kliktanja po ftp klijentu i selektiranja .jpg fileova. Kroz shell to jednostavno izvršite komandom

mv trenutnifolder/*.jpg novifolder/

Što su točno wildcardi?

Wildcardi su posebni znakovi koji mogu zamjeniti jedan ili set znakova u komandi. Wildcardi su nam osobito korisni u shell komandama jer nam dozoljavaju selektivan odabir fileova.

* - Zamjenjuje bilo koji znak u bilo kojoj količini (npr. *.jpg je isto kao i bilo koji od ovih filenameova, 123.jpg, dse2sx.jpg, a.jpg)

? - Zamjenjuje bilo koji znak na samo jednom mjestu. (npr. d?n.jpg je isto kao bilo koji od ovih filenameova dan.jpg, d1n.jpg, dTn.jpg)

[] - Unutar uglatih zagrada se može staviti raspon znakova za zamjenu (npr. [1-9].jpg je identično kao i 1.jpg, 2.jpg... ili recimo [A-Z,a-z].jpg mjenja bilo koje veliko ili malo slovo abecede u rasponu od a do z).

Ok, primjenimo wildcarde i sve gore navedene komande u praksi.

Želim preseliti sve .jpg slike iz mape slike/ koje počinju slovima a u podmapu slike/a/

Nakon što se ulogirate pomoću ssh-a na svoj hosting account ssh terminal će se “probuditi” u /home/username/ folderu. Za početak ćete ući u folder slike:

cd public_html/slike/

Ako niste sigurni nalazite li se u pravom folderu možete upisati komandu

pwd

Provjerti ćete postoji li već subfolder:

ls -lh a

Ako direktorij ne postoji dobit ćete output :

ls: a: No such file or directory

Napravite svoj a direktorij:

mkdir a

Zatim ćete preseliti sve slike koje počinju s malim ili velikim slovom a u novokreirani poddirektorij a

mv [a,A]*.jpg a/

Postoji li alternativa?

Naravno, za neke jednostavnije funkcije postoji odličan shell alat Midnight Commander, vrlo je sličan starom Norton commanderu iz MSDos-a

Program jedostavno možete pogrenuti komandom

mc

Dokumentaciju možete pogedati komandom:

man mc

Ok gotov sam s radom, kako se odjaviti?

Po završetku rada na serveru potrebno je izvršiti odjavu. Odjavu izvršimo komandom

logout

ili

exit

A što je s lozinkama? Ukinuta je password autentifikacija za ssh protokol, a whm i control paneli su preusmjereni na secure portove. Pročitajte kako se spojiti na linku.

Povezani članci

Odgovori