SSH tuneli: konfiguracija, uporaba

SSH tuneliranje je metoda prenosa poljubnih omrežnih podatkov preko šifrirane SSH povezave. Uporabite ga lahko za dodajanje šifriranih zastarelih programov. Lahko se uporablja tudi za izvajanje VPN (navideznih zasebnih omrežij) in dostop do intranetnih storitev prek požarnih zidov.

Uvod

Posredovanje vrat SSH ustvari varno povezavo med računalnikom in oddaljeno napravo, prek katere se lahko prenesejo storitve. Ker je povezava šifrirana, je tuneliranje SSH uporabno za prenos informacij, ki uporabljajo nekodiran protokol, kot je IMAP, VNC ali IRC.


Predor SSH za Windows uporablja vrata 22 za zagotavljanje šifriranja podatkov, poslanih prek javnega omrežja (kot je internet), s čimer zagotavlja funkcije VPN. IPsec ima tranzitni način, lahko pa deluje tudi v tunelskem načinu prek varnega varnostnega prehoda.

Opredelitev

Predor preko SSH je standard za varno oddaljeno prijavo in prenos datotek preko nezaupanih omrežij. Zagotavlja tudi način za zaščito podatkovnega prometa za katero koli določeno aplikacijo s pomočjo posredovanja vrat, kar v bistvu predstavlja tuneliranje vseh vrat TCP /IP prek SSH. To pomeni, da je promet usmerjen v tok znotraj šifrirane SSH povezave, tako da ga ni mogoče poslušati ali prestreči, medtem ko je na cesti. SSH tuneliranje vam omogoča dodajanje varnosti omrežja zastarelim programom, ki ne podpirajo šifriranja.


Varna povezava na nezanesljivem omrežju se vzpostavi med odjemalcem SSH in strežnikom SSH. Ta SSH povezava je šifrirana, varuje zaupnost in celovitost ter potrjuje zavezujoče povezave. Povezavo SSH uporablja aplikacija za povezavo s strežnikom aplikacij. Ko se aktivira tuneliranje, se aplikacija poveže z vrati na lokalnem gostitelju, ki posluša odjemalca SSH. Odjemalec SSH nato preusmeri aplikacijo preko šifriranega predora na strežnik. Slednji se poveže z dejanskim strežnikom aplikacij - običajno na istem računalniku ali v istem podatkovnem centru kot strežnik SSH. Tako je povezava aplikacije zaščitena, ne da bi bilo treba spremeniti delovne postopke aplikacij ali končnih uporabnikov.

Protokoli za predore - kaj je to?

V računalniških omrežjih protokol za tuneliranje uporabniku omrežja omogoča dostop do omrežne storitve, ki jo osnovno omrežje ne podpira ali ne zagotavlja neposredno, ali zagotavlja omrežno storitev. Ena od pomembnih aplikacij je omogočiti zunanjemu protokolu, da deluje v omrežju, ki ne podpira tega določenega protokola (na primer IPv6, ki se zažene prek IPv4). Druga pomembna točka je zagotavljanje storitev, ki so neprimerne ali nevarne za uporabo z uporabo samo osnovnih omrežnih storitev. Na primer, zagotavljanje omrežnega naslova podjetja oddaljenega uporabnika, katerega fizični omrežni naslov ni del omrežja podjetja. Ker tuneliranje vključuje ponovno pakiranje podatkov o prometu v drugo obliko, po možnosti z uporabo standardnega šifriranja,pomembna značilnost je skriti naravo prometa, ki poteka skozi predore.

Secure Shell - Secure Shell

Secure Shell je sestavljen iz šifriranega predora, ustvarjenega prek povezave SSH. Uporabniki lahko konfigurirajo tunele SSH za pošiljanje nešifriranega prometa prek omrežja prek šifriranega kanala. Na primer, računalniki z operacijskim sistemom Microsoft Windows lahko delijo datoteke s protokolom strežnika za sporočila (SMB), nešifriranim protokolom. Če želite na daljavo povezati datotečni sistem Microsoft Windows prek interneta, nekdo sledi povezavi, lahko vidi prenesene datoteke. Če želite varno povezati datotečni sistem Windows, lahko namestite tunel SSH, ki ves promet SMB usmerja na oddaljeni datotečni strežnik prek šifriranega kanala. Kljub temu, da protokol SMB ne vsebuje šifriranja, šifrirani SSH kanal, prek katerega se premika, zagotavlja varnost.
Vrste posredovanja vrat
Posredovanje vrat je široko podprta funkcija, ki jo najdemo v vseh večjih SSH odjemalcih in strežnikih. S funkcijo posredovanja vrat SSH lahko prek omrežja prenesete različne vrste internetnega prometa. To se uporablja za preprečevanje sledenja omrežju ali za izogibanje nepravilno konfiguriranim usmerjevalnikom na internetu. Obstajajo tri vrste posredovanja vrat iz SSH:
  • lokalna - SSH odjemalske povezave preusmerjene na strežnik SSH in nato na strežnik;
  • oddaljene povezave s strežnikom SSH se preusmerijo prekOdjemalec SSH in nato strežnik;
  • Dinamični - povezave z različnimi aplikacijami se pošiljajo prek odjemalca SSH, nato prek strežnika SSH in nazadnje na več ciljnih strežnikov.
  • Lokalno posredovanje vrat je najpogostejša vrsta in zlasti omogoča, da se izognete požarnemu zidu podjetja, ki blokira Wikipedijo. Oddaljeno posredovanje vrat je redkejše. Omogoča povezavo s strežnikom SSH z računalnikom v intranetu vašega podjetja. Dinamično posredovanje vrat se uporablja redko. Omogoča izogibanje požarnemu zidu podjetja, ki popolnoma blokira dostop do interneta. Zahteva veliko dela za prilagajanje in običajno je lažje uporabljati posredovanje lokalnih vrat za določena spletna mesta, do katerih želite dostopati.

    Specifikacije

    Če želite uporabiti posredovanje vrat, se morate prepričati, da je posredovanje vrat na strežniku omogočeno. Kupcu morate zagotoviti tudi številke vrat in ciljnih vrat. Če uporabljate lokalno ali oddaljeno preusmerjanje, morate o tem obvestiti odjemalca končnega strežnika. Če uporabljate dinamično posredovanje, morate konfigurirati aplikacije za uporabo strežnika proxy SOCKS. Tudi to, kako to narediti, je odvisno od tega, kateri odjemalec SSH uporabljate, zato boste morda morali prebrati več o dokumentaciji.

    Primeri izvajanja

    Najboljši način za razumevanje, kako to deluje, je razmisliti o primeru z lokalno preusmeritvijo. Predstavljajte si, kaj steNahajate se v zasebnem omrežju, ki ne omogoča povezovanja z določenim strežnikom. Recimo, da ste na delu in vk.com je blokiran. Za izogibanje ključavnici, lahko ustvarimo predor skozi strežnik, ki ni v našem omrežju in tako lahko dostopamo do zahtevanega vira: $ ssh -L 9000: vk.com: 80 [email protected]. Ključ tukaj je -L, ki navaja, da izvajamo lokalno posredovanje vrat. Ekipa nato poroča, da pošiljamo 9000 lokalna vrata na vk.com:80, ki je privzeta vrata za HTTP. Zdaj morate odpreti brskalnik in pojdite na http: //localhost: 9000. Nedvomna prednost SSH tunelov je, da so šifrirani. Nihče ne bo videl, katera mesta obiščete - vidna bo samo SSH povezava s strežnikom.

    Povezovanje z bazo podatkov požarnega zidu

    Še en dober primer je, če potrebujete dostop do vrat na strežniku, do katerih ga je mogoče opraviti samo pri lokalnem gostitelju, ne na daljavo. Primer tukaj je potreba po povezavi s konzolo baze podatkov, ki omogoča varnost samo zaradi lokalne povezave. Na primer, na strežniku uporabljate PostgreSQL, ki privzeto posluša vrata 5432: $ ssh -L 9000: localhost: 5432 [email protected]. Del, ki se je tukaj spremenil, je - localhost: 5432, ki se nanaša na preusmeritve povezav iz vašega lokalnega pristanišča 9000 na localhost: 5432 in na vaš strežnik. Zdaj se lahko preprosto povežemo z našo bazo podatkov: $ psql -h localhost -p 9000.

    Remote port forwarding

    Zdaj pa razložimo v realnem primeru delo na daljavopreusmeritve Recimo, da razvijate aplikacijo Rails na vašem lokalnem računalniku in jo želite pokazati prijatelju. Na žalost vam vaš ponudnik internetnih storitev ni priskrbel javnega naslova IP, zato ga ni mogoče neposredno povezati z računalnikom prek interneta. Včasih je to mogoče rešiti z nastavitvijo NAT (Broadcast Network Addresses) na usmerjevalniku, vendar to ne deluje vedno in morate spremeniti konfiguracijo usmerjevalnika, kar ni vedno zaželeno. Ta rešitev tudi ne deluje, če nimate dostopa do omrežja. Če želite odpraviti to težavo, potrebujete drug računalnik, ki je javno dostopen in ima dostop do SSH. To je lahko kateri koli strežnik na internetu, če ga lahko vzpostavite. Ustvarili bomo predor SSH, ki bo odprl nova vrata na strežniku in ga povezal z lokalnimi vrati na vašem računalniku: $ ssh-r 9000: localhost: 3000 [email protected] Tukaj je sintaksa zelo podobna posredovanju lokalnih vrat z eno zamenjavo -L na -R Kot pri lokalnem posredovanju vrat pa sintaksa ostaja nespremenjena.

    Področje uporabe in tveganja

    Pomanjkljivost je, da ima vsak uporabnik, ki se lahko prijavi na strežnik, pravico, da omogoči preusmeritev pristanišč. Notranji strokovnjaki za IT se pogosto uporabljajo za prijavo na domače stroje ali strežnike v oblaku, posredovanje vrat s strežnika nazaj na intranet podjetja v delovnem računalniku ali na ustreznem strežniku. Hekerji in zlonamerna programska oprema ga lahko uporabijo tudi za napako algoritma v notranjem omrežju. Lahko se uporablja tudi zaskrivanje sledi napadalcev z napadom z več napravami, ki omogočajo nenadzorovano tuneliranje. Tuneliranje se pogosto uporablja v povezavi s tunelskimi ključi PHP SSH in avtentifikacijo javnega ključa za popolno avtomatizacijo procesa.

    Prednosti

    Prodaja predorov SSH se pogosto uporablja v številnih podjetniških okoljih, ki za svoje aplikacije uporabljajo glavne računalniške sisteme. V teh okoljih imajo lahko aplikacije same zelo omejeno varnostno podporo. Uporaba tuneliranja, združljivost z SOX, HIPAA, PCI-DSS in drugimi standardi se lahko doseže brez spreminjanja aplikacij. V mnogih primerih so ti programi in strežniki aplikacij takšni, da je verjetno, da bodo spremembe v njih nepraktične ali predrage. Izvorna koda morda ni na voljo, prodajalec je morda šel v stečaj, izdelek morda ni v škatli ali pa ni nobene skupine razvijalcev. Dodajanje zaščitne lupine, kot je kita v tunel SSH, zagotavlja ekonomičen in praktičen način za dodajanje varnosti takim aplikacijam. Na primer, vsi bankomati naše države delujejo z uporabo tunelov za varnostne namene.

    Tveganja

    Kot koristna stvar nedvomno podpira tuneliranje SSH. Vključuje tveganja, ki jih mora obravnavati služba za informacijsko varnost podjetja. Povezava prostih SSH tunelov je zaščitena z močnim šifriranjem. Zaradi tega je njihova vsebina nevidna za večino uporabljenih rešitev za spremljanje omrežja in filtriranje prometa. Ta nevidnost se nosipomembno tveganje, če se uporablja za zlonamerne namene, kot je filtriranje podatkov. Kibernetski kriminalci ali zlonamerna programska oprema lahko uporabljajo tunele SSH za skrivanje nepooblaščenih sporočil ali za odstranitev ukradenih podatkov iz ciljnega omrežja.
    V napadu SSH predora napadalec namesti strežnik zunaj ciljne mreže (na primer Amazon AWS). Ko je lopov odkrit v ciljnem sistemu, se poveže z zunanjim strežnikom SSH od znotraj. Večina organizacij dovoljuje lansiranje Linux SSH tunelov, vsaj če imajo strežnike v javnem oblaku. Ta povezava SSH je konfigurirana z možnostjo, ki omogoča pošiljanje vrat TCP iz vrat na zunanjem strežniku v vrata SSH na strežniku v notranjem omrežju. Če želite konfigurirati ta predor SSH, potrebujete en ukaz v eni vrstici in ga lahko preprosto avtomatizirate. Večina požarnih zidov je skoraj ne zaščiti.

    Sorodne publikacije