SSH
SSH (Secure shell) omogoča tekstovno strežniško povezavo na daljavo, deluje pa na različnih operacijskih sistemih.
Ohrani povezavo
Če se ti dogaja “timeout”, torej ssh seja neha delovati čez nekaj časa, dodaj tole v ssh konfiguracijo (~/.ssh/config
):
Host * ServerAliveInterval 240
Tuneliranje
Z SSH tuneli lahko speljemo povezave okoli požarnih zidov, zaprtin internih mrež in tako dalje, brez spreminjanja mrežnih konfiguracij. Za to potrebujemo strežnik, do katerega lahko dostopamo preko SSH.
Oddaljen tunel (remote tunnel)
Kadar želimo storitev, dostopno iz lastnega računalnika (torej storitev, ki teče na našem računalniku ali na interni mreži, na katero je priklopljen), nam pride pravi oddaljen tunel. Za delovanje oddaljenega tuneliranja mora imeti strežnik v /etc/sshd_config
omogočeno konfiguracijo GatewayPorts=yes
.
Če želimo, recimo, omogočiti dostop do oddaljenega namizja (remote desktop), ki povezave pričakuje na vratih 3389 našega računalnika, poženemo:
ssh -R 5000:localhost:3389 uporabnica@streznik.org
Povezava z odjemalcem oddaljenega namizja na vrata 5000 strežnika streznik.org
nas tako pripelje do lastnega računalnika. Morajo pa na strežniku biti odprta vrata 5000 seveda. Razen če se povezujemo neposredno iz strežnika.
Lokalno tuneliranje
Lokalni tunel je obraten on oddaljenega. Z njim na lastnem računalu omogočimo dostop do storitve, ki jo sicer lahko dostopa le oddaljen strežnik (oz. računalnik z ssh strežnikom). Za delovanje lokalnega tuneliranja mora biti v /etc/ssh/sshd_config
omogočeno AllowTcpForwarding=yes
(privzeto je).
Če želimo recimo na lokalnih vratih 5000 dostopati do podatkovne baze, ki povezave pričakuje na vratih 3306 strežnika baza.local
, dostopnega iz lokalne mreže nam dostopnega streznik.org
, poženemo:
ssh -L 5000:baza.local:3306 uporabnica@streznik.org
Tako bomo lahko bazo dosegli preko vrat 5000 lokalnega računala.