Távoli asztal – Ubunturól Ubuntura
Tartalomjegyzék:
- Helyi kikötőszállítás
- Távoli port-továbbítás
- Dinamikus port-továbbítás
- Az SSH-alagút beállítása a Windows-ban
- Következtetés
Az SSH alagút vagy az SSH port továbbítása egy titkosított SSH kapcsolat létrehozásának módja az ügyfél és egy kiszolgáló gép között, amelyen keresztül a szolgáltatási portok továbbíthatók.
Az SSH továbbítás hasznos olyan szolgáltatások hálózati adatainak átviteléhez, amelyek nem titkosított protokollt használnak, mint például VNC vagy FTP, a földrajzilag korlátozott tartalomhoz való hozzáféréshez vagy a közbenső tűzfalak megkerüléséhez. Alapvetően bármilyen TCP-portot továbbíthat, és alakulhat át a forgalom biztonságos SSH-kapcsolaton keresztül.
Háromféle SSH port-továbbítás létezik:
- Helyi kikötőszállítás. - Csatlakozást továbbít az ügyfélgépről az SSH kiszolgáló gazdagépére, majd a célgazda portjára. Távoli port továbbítás. - Portot továbbít a kiszolgáló gazdagépről a kliens gazdagépre, majd a célgazda portra. Dinamikus port továbbítása. - SOCKS proxy szervert hoz létre, amely lehetővé teszi a kommunikációt számos porton keresztül.
, a helyi, távoli és dinamikus titkosított SSH alagutak beállításáról fogunk beszélni.
Helyi kikötőszállítás
A helyi port továbbítása lehetővé teszi a helyi (ssh kliens) gépen egy port továbbítását a távoli (ssh szerver) gépen található portra, amelyet ezután továbbít a cél gépen található porthoz.
Az ilyen típusú továbbítás során az SSH kliens egy adott porton meghallgatja és alaposan átmenetileg csatlakozik az adott porthoz a távoli SSH szerver megadott portjához, amely ezután kapcsolódik a célgép portjához. A célgép lehet távoli SSH-kiszolgáló vagy bármilyen más számítógép.
A helyi port-továbbítást általában egy belső hálózat, például adatbázis vagy VNC-kiszolgáló távoli szolgáltatáshoz való csatlakozásra használják.
Linux, macOS és más Unix rendszerekben helyi port-továbbítás létrehozásához adja át az
-L
opciót az
ssh
kliensnek:
ssh -L LOCAL_PORT:DESTINATION:DESTINATION_PORT SSH_SERVER
Az alkalmazott lehetőségek a következők:
-
LOCAL_PORT
- A helyi gép ip és portszáma. HaLOCAL_IP
aLOCAL_IP
, az ssh kliens kötődik a localhost-ra.DESTINATION:DESTINATION_PORT
- A célgép IP-címe vagy gazdaneve és portja.SERVER_IP
- A távoli SSH felhasználó és a kiszolgáló IP címe.
Bármely
1024
nél nagyobb portszámot használhat
LOCAL_PORT
. Az
1024
nél kevesebb portok privilegizált portok, amelyeket csak a root használhat. Ha az SSH-kiszolgálója a 22-től eltérő porton hallgat (alapértelmezett), akkor használja a
-p
beállítást.
A célgazdagépnévnek meg kell oldódnia az SSH-kiszolgálón.
Tegyük fel, hogy van egy MySQL adatbázis-kiszolgáló, amely a
db001.host
gépen
db001.host
egy belső (magán) hálózaton, a 3306-as porton, amely elérhető a
pub001.host
és a helyi
mysql
kliens segítségével csatlakozni kíván az adatbázis-kiszolgálóhoz. Ehhez a kapcsolatot így továbbíthatja:
ssh -L 3336:db001.host:3306 [email protected]
A parancs futtatása után a rendszer felszólítja a távoli SSH felhasználói jelszó megadására. A belépés után be lesz jelentkezve a távoli kiszolgálóra, és létrejön az SSH alagút. Érdemes beállítani egy SSH kulcs alapú hitelesítést, és jelszó megadása nélkül csatlakozni a szerverhez.
Most, ha a helyi gépi adatbázis-ügyfelet
127.0.0.1:3336
állítja, a kapcsolat a
db001.host:3306
MySQL szerverre kerül továbbításra a
pub001.host
gépen keresztül, amely közbenső szerverként fog működni.
Több portot továbbíthat több rendeltetési helyre egyetlen ssh paranccsal. Például van egy másik MySQL adatbázis-kiszolgáló, amely a
db002.host
gépen
db002.host
és csatlakozni szeretne mindkét szerverhez a helyi ügyfélen:
ssh -L 3336:db001.host:3306 3337:db002.host:3306 [email protected]
A második szerverhez való csatlakozáshoz a
127.0.0.1:3337
kell használni.
Ha a célállomás megegyezik az SSH-kiszolgálóval, ahelyett, hogy megadná a célgazda IP-t vagy gazdagépnevet, akkor használhatja a
localhost
.
Tegyük fel, hogy csatlakoznia kell egy távoli számítógéphez a VNC-n keresztül, amely ugyanazon a szerveren fut, és amelyhez nem lehet hozzáférni. Az Ön által használt parancs:
ssh -L 5901:127.0.0.1:5901 -N -f [email protected]
Az
-f
opció azt jelzi, hogy az
ssh
parancs a háttérben fut, és
-N
nem hajt végre távoli parancsot.
localhost
használunk, mert a VNC és az SSH szerver ugyanazon a gépen fut.
Távoli port-továbbítás
A távoli port-továbbítás ellentétes a helyi port-továbbítással. Ez lehetővé teszi egy távoli (ssh szerver) gépen egy port továbbítását a helyi (ssh kliens) gépen található portra, amelyet ezután továbbítanak a cél gépen található porthoz.
Ilyen típusú továbbításkor az SSH szerver meghallgat egy adott porton, és alagútba kapcsol minden csatlakozást a helyi SSH kliens megadott portjához, amely ezután kapcsolódik a célgép portjához. A rendeltetési gép lehet helyi vagy bármilyen más.
Linux, macOS és más Unix rendszerekben távoli port-továbbítás létrehozásához adja át az
-R
opciót az
ssh
kliensnek:
ssh -R REMOTE_PORT:DESTINATION:DESTINATION_PORT SSH_SERVER
Az alkalmazott lehetőségek a következők:
-
REMOTE_PORT
- Az IP és a port száma a távoli SSH szerveren. Egy üresREMOTE
azt jelenti, hogy a távoli SSH szerver minden felületen kötődik.DESTINATION:DESTINATION_PORT
- A célgép IP-címe vagy gazdaneve és portja.SERVER_IP
- A távoli SSH felhasználó és a kiszolgáló IP címe.
A helyi kikötői továbbítást általában arra használják, hogy kívülről valakinek hozzáférést biztosítson a belső szolgáltatásokhoz.
Tegyük fel, hogy webes alkalmazást fejleszt a helyi gépen, és előnézetét szeretne megjeleníteni a fejlesztő társának. Nincs nyilvános IP-je, így a másik fejlesztő nem fér hozzá az alkalmazáshoz az interneten keresztül.
ssh -L 8080:127.0.0.1:3000 -N -f [email protected]
A fenti parancs arra készteti az ssh szervert, hogy meghallgassa a
8080
-as portot, és
8080
átjárja az ebből a portból származó forgalmat a helyi porton a
3000
porton.
Fejlesztője most beírhatja
the_ssh_server_ip:8080
at böngészőjébe, és
the_ssh_server_ip:8080
a fantasztikus alkalmazását.
Dinamikus port-továbbítás
A dinamikus porttovábbítás lehetővé teszi egy socket létrehozását a helyi (ssh kliens) gépen, amely SOCKS proxy szerverként működik. Amikor egy ügyfél csatlakozik ehhez a porthoz, a kapcsolatot továbbítják a távoli (ssh szerver) gépen, amelyet ezután továbbítanak a célgép dinamikus portjára.
Ilyen módon a SOCKS proxy-t használó összes alkalmazás csatlakozik az SSH szerverhez, és a szerver továbbítja az összes forgalmat a tényleges rendeltetési helyére.
Linuxban, macOS-ban és más Unix rendszerekben dinamikus port-továbbítás (SOCKS) létrehozásához adja át a
-D
opciót az
ssh
kliensnek:
ssh -D LOCAL_PORT SSH_SERVER
Az alkalmazott lehetőségek a következők:
-
LOCAL_PORT
- A helyi gép ip és portszáma. HaLOCAL_IP
aLOCAL_IP
, az ssh kliens kötődik a localhost-ra.SERVER_IP
- A távoli SSH felhasználó és a kiszolgáló IP címe.
A dinamikus port-továbbítás tipikus példája a böngésző forgalmának alagútja SSH-kiszolgálón keresztül.
A következő parancs SOCKS alagutat hoz létre a
9090
porton:
ssh -D 9090 -N -f [email protected]
Az alagút létrehozása után konfigurálhatja az alkalmazást annak használatához. Ez a cikk ismerteti, hogyan konfigurálhatja a Firefox és a Google Chrome böngészőt a SOCKS proxy használatához.
A port-átirányítást külön kell konfigurálni minden olyan alkalmazáshoz, amelyhez a forgalom úgy gondolta, hogy átjárja.
Az SSH-alagút beállítása a Windows-ban
A Windows felhasználók a PuTTY SSH kliens használatával létrehozhatnak SSH alagutakat. A PuTTY-t itt töltheti le.
-
Indítsa el a Putty-t, és írja be az SSH-kiszolgáló IP-címét a
Host name (or IP address)
mezőbe.Megjelenik egy új ablak, amelyben felhasználónevet és jelszót kér. Miután megadta felhasználónevét és jelszavát, bejelentkezik a szerverre, és elindul az SSH alagút.
A nyilvános kulcsú hitelesítés beállítása lehetővé teszi, hogy jelszó megadása nélkül csatlakozzon a szerverhez.
Következtetés
Megmutattuk, hogyan kell beállítani az SSH alagutakat és tovább továbbítani a forgalmat biztonságos SSH kapcsolaton keresztül. A használat megkönnyítése érdekében meghatározhatja az SSH alagutat az SSH konfigurációs fájljában, vagy létrehozhat egy Bash álnevet, amely beállítja az SSH alagutat.
SSH biztonságSaját eszköz beállítása és beállítása Windows 10-ben
Ismerje meg, hogyan állíthatja be a készüléket a BYOD (Saját eszköz) a munkahelyén. Könnyen hozzáadhat munka- és iskolai fiókokat.
Free Port Scanner for Windows: Tűzfal Port Scan
Tűzfal Port Scan és Free Port Scanner végrehajtása. Ezek az észlelési, teszteszközök és online szolgáltatások letapogatnak bizonyos portokat egy adott IP-címhez és rontják a sérülékeny hozzáférési pontokat.
Az ssh-kulcsok beállítása az ubuntu 18.04-en
Ebben az oktatóanyagban bemutatjuk, hogyan állíthatunk elő SSH kulcsokat az Ubuntu 18.04 gépeken. Megmutatjuk azt is, hogyan állíthat be SSH-alapú hitelesítést, és hogyan csatlakozhat a távoli Linux kiszolgálókhoz jelszó megadása nélkül.