Vissza a bloghoz

Webes forgalom irányítása VPN nélkül, SOCKS alagút használatával

Webes forgalom irányítása VPN nélkül, SOCKS alagút használatával

Amikor az internetes lábnyomod biztosításáról van szó, talán hallottál már a VPN-ekről, ugye? A VPN közvetítőként működik a számítógéped és az internet között. A teljes forgalom áthalad a VPN-szerveren, hatékonyan elfedve az IP-címedet és a tartózkodási helyedet.

Azonban a VPN nem az egyetlen formája a proxyszervernek. A SOCKS (Socket Secure) egy hasonló hálózati protokoll, amely lehetővé teszi a szerverekkel való kommunikációt egy tűzfalon keresztül azáltal, hogy a hálózati forgalmat az ügyfél nevében irányítja. A VPN-hez képest a SOCKS nagyobb rugalmasságot és ellenőrzést biztosít a hálózati konfiguráció felett. Akkor hasznos, ha nem tudja telepíteni a VPN-klienst, vagy nem bízik a VPN-szolgáltatóban.

Ez az útmutató bemutatja, hogyan hozhat létre egy SSH SOCKS 5 proxy alagutat, és hogyan irányíthatja át az internetes forgalmát az alagúton keresztül.

Előfeltételek

A bemutatóhoz egy Ubuntu desktopot futtató helyi gépet és egy Ubuntu szervert futtató távoli gépet használtunk. Szüksége van a SSH konfigurálva mielőtt zökkenőmentesen működne. Mivel SOCKS proxyt használunk, a kapcsolat teszteléséhez egy olyan alkalmazásra van szükségünk, amely képes használni azt. Firefox egy tökéletes példa. Ez egy modern webböngésző, amely támogatja a SOCKS 5 proxyalagutat.

Ha Windows-t használ, akkor vagy a WSL (Windows Subsystem for Linux) -t használja egy helyi Linux környezet beállításához, vagy a PuTTY, egy nyílt forráskódú alkalmazást, amely képes különféle hálózati protokollok, például a Telnet, rlogin stb. megvalósítására.

A SOCKS-alagút konfigurálása

  • A SOCKS-alagút beállítása (macOS/Linux)

A helyi számítógépen be kell állítanunk egy SSH-kulcsot a biztonságos kapcsolat biztosítása érdekében. Az SSH-kulcsot a távoli rendszeren is regisztrálni kell. Ez a(z) SSH-kulcs alapú hitelesítés konfigurálásáról szóló útmutató részletesen bemutatja a folyamatot.

A következő SSH-parancs egy SOCKS-alagutat hoz létre a távoli szerverhez:

Bontsuk le a parancsot:

  • -i: Megmondja az SSH-nak, hogy melyik SSH-kulcsot használja a kapcsolathoz.

  • -D: Azt jelzi az SSH-nak, hogy egy SOCKS alagutat szeretnénk kiépíteni. Ami a portot illeti, a(z) 1024 számú portot használjuk. Ez nem egy fix érték. Bármilyen portot választhat 1024 és 65536.

  • -f: Az SSH folyamat a háttérben fog futni.

  • -C: Az SSH tömöríti az adatokat, mielőtt elküldené a távoli szerverre. Ez csökkenti az adatfogyasztást és növeli a hatékony sávszélességet.

  • -q: Az eszköz csendes módban történő futtatása.

  • -N: Azt jelzi az SSH-nak, hogy az alagút kiépítése után nem küld parancsot.

A futtatás után ellenőrizhetjük, hogy a folyamat megfelelően elindult-e. A következő parancs információkat jelenít meg az összes futó SSH folyamatról:

Routing grep ssh

Most már biztonságosan bezárhatja a terminálablakot. Az SSH folyamat a háttérben a tervezett módon fog működni.

  • SOCKS alagút beállítása (Windows)

A Windows-felhasználók számára a PuTTY használata egyszerűbb megoldás. Először is le kell töltenie a PuTTY-t:

Routing download putty

A telepítés után indítsa el a PuTTY-t:

Routing putty screen1

A bal oldali panelen lévő Session lapon adja meg a szervere Host Name (or IP address) mezőjét. A Connection type résznél válassza az SSH lehetőséget. Ezután lépjen a Connection >> SSH >> Tunnels menüpontra. Itt a Destination mezőben válassza ki a képernyőképen látható opciókat:

Routing putty screen2

Ezután kattintson az Open gombra. Egy terminálablak fog felugrani, hogy SSH-n keresztül csatlakozzon a távoli szerverhez. Jelentkezzen be a távoli szerverre:

Routing putty screen 3

A SOCKS-alagút megvalósítása

Az alagút most már be van állítva. Bármely SOCKS-ot támogató alkalmazás használhatja az alagutat. Bemutatóként a Firefox egy kiváló példa.

Először nyissa meg a Firefoxot. A jobb felső sarokban kattintson a menü ikonra. Lépjen a Beállítások:

ubuntu screen1

Ezután keressen rá a proxy szóra. Kattintson a Beállítások gombra a Annak beállítása, hogyan kapcsolódjon a Firefox az internethez:

firefox preferences

Ezután válassza ki a Kézi proxybeállítás lehetőséget. A SOCKS-kiszolgáló, használja a localhost vagy 127.0.0.1. Ezután a porthoz adja meg azt a portot, amelyet a SOCKS-alagútnak szenteltünk. Ne felejtse el kijelölni a(z) SOCKS_v5:

firefox proxy conf

Végül jelölje be a(z) DNS proxyzása SOCKS_v5 használatakor. Kattintson az OK gombra a folytatáshoz.

Ezután nyisson meg egy új lapot, és próbáljon megnyitni egy tetszőleges weboldalt. Például ellenőrizheti az IP-címét a CheckMyIP.

A proxy visszaállítása

Ha már nincs szüksége a proxykapcsolatra az SSH-alagúthoz, biztonságosan letilthatja azt a Firefox proxybeállításaiban:

Routing firefox reverting proxy conf

Az ablakban válassza a Rendszer proxybeállításainak használata lehetőséget, majd kattintson az OK gombra.

A SOCKS-alagút bezárása

  • Az alagút bezárása macOS/Linux rendszeren

Az alagút bezárásához manuálisan le kell állítanunk az SSH-folyamatot. Szükségünk van az SSH-folyamat PID-jére (folyamatazonosítójára). A következő parancs megmutatja az összes futó SSH-folyamat PID-jét:

Keresse meg az alagút létrehozására szolgáló paranccsal futó SSH-folyamatot. Állítsa le a folyamatot:

Ha nincs opció megadva, a kill parancs egy általános SIGTERM jelet küld a célfolyamatnak. További információt tudhat meg a Linux folyamatkezelésről ebből az útmutatóból.

  • Az alagút bezárása Windows rendszeren

A PuTTY ablak bezárásának be kell zárnia az alagút-kapcsolatot.

Hibaelhárítás

Íme néhány gyakori probléma, amellyel találkozhat, amikor a SOCKS protokollt próbálja használni a forgalom irányítására.

  • Tűzfal

Ha tűzfalkorlátozás miatt nem tud kapcsolatot létesíteni, akkor valószínű, hogy a tűzfal úgy van konfigurálva, hogy blokkolja a csatlakozást a(z) 22. Ez az az alapértelmezett port, amelyet az SSH használ a távoli rendszerekhez való csatlakozáshoz. Néhány port alapértelmezés szerint nyitva marad, például a(z) 80 (általános webes forgalom) és a(z) 443 (TLS, biztonságos webes forgalom).

Ha az SSH-szerver nem szolgáltat webes tartalmat, akkor használhatjuk az alapértelmezett portok egyikét ( 80 vagy 443 ) a(z) port helyett22. Ajánlott a(z) portot használni,443 mivel alapértelmezés szerint titkosított forgalmat vár. A kimenő forgalmat is titkosítani fogja. A módosításhoz meg kell változtatnunk az SSH konfigurációs fájlt. Nyissa meg a fájlt egy szövegszerkesztőben:

Az SSH több portot is használhat a céljaira. Görgessen le a konfigurációs fájlban, és keresse meg a port szekciót:

Routing sshd config

Miután elvégezte a módosításokat, mentse el a fájlt, és zárja be a szerkesztőt. A módosítás alkalmazásához indítsa újra az SSH-szolgáltatást:

Annak ellenőrzéséhez, hogy az új port működik-e, próbáljon meg csatlakozni a távoli szerverhez az új port használatával:

Ha a kapcsolat sikeres volt, biztonságosan használhatjuk a(z) 443 portot az SSH-alagút létrehozásához. Íme a módosított parancs a SOCKS-alagút kiépítéséhez:

Itt a kapcsoló-p arra utasítja az SSH-t, hogy a portot használja443.

Záró gondolatok

Napjainkban a magánélet védelme és a biztonság a legnagyobb aggodalmak közé tartozik. Számos módja van a biztonságos böngészésnek, ha ellenséges hálózaton tartózkodik. A legtöbb esetben a VPN használata megfelelő biztonságot nyújt a hálózati forgalom számára. Másrészt egy SOCKS-alagút biztosítja a szükséges biztonságot, ha nem tud bízni vagy nem bízik a VPN-ben. A SOCKS-alagút használata emellett teljes ellenőrzést biztosít a beállítások felett.

Kellemes számítógépezést!

author

Pranay Kapgate

Szerző · CloudSigma

Preslav Dobrev a CloudSigma kreatív tervezője, aki hagyományos és innovatív marketingcsatornák segítségével következetes vállalati identitás kialakítására összpontosít. Kiemelkedően képes ötvözni a művészi látásmódot a stratégiai marketinggel, hogy hatásos márkatörténeteket hozzon létre.

Hozzászólások

Még nincsenek hozzászólások. Legyen Ön az első.