Adjunk a Windows OpenSSH-nak explicit SOCKS5 Ncat parancsot
Használjuk az Ncatet az OpenSSH szabványos adatfolyamának átviteli segédjeként, és adjuk meg a SOCKS5-öt ahelyett, hogy az alapértelmezett HTTP-proxyra támaszkodnánk.
Ha az Ncat már elérhető a Windows OpenSSH számára, akkor a kapcsolatot SOCKS5-proxyn keresztül biztosíthatja. Adjunk hozzá egy gazdagép-bejegyzést ahhoz az SSH-konfigurációhoz, amelyet az az OpenSSH-ügyfél használ:
Host target-via-socks
HostName ssh.example
User user
ProxyCommand ncat.exe --proxy-type socks5 --proxy proxy.example:1080 %h %p
Cseréljük ki mindkét gazdagépnevet és a fiókot, majd csatlakozzunk az ssh target-via-socks paranccsal. Ez a példa feltételezi, hogy az ncat.exe a segéd végrehajtható fájljainak keresési útvonalán van. Ellenkező esetben használjuk a végrehajtható fájl helyesen idézőjelezett teljes útvonalát, különösen ha a könyvtár szóközöket tartalmaz.
A proxy végpontja a --proxy után következik. Az OpenSSH a %h és %p jelet a végső SSH-gazdagépnévre és portra bővíti. Az Ncat egyezteti a SOCKS-kapcsolatot, és a keletkező bájtfolyamot a szabványos bemeneten és kimeneten továbbítja; az OpenSSH folytatja az SSH-kézfogást ezen a folyamon.
Az explicit --proxy-type socks5 fontos. Ha ez a beállítás hiányzik, az Ncat alapértelmezés szerint HTTP-proxyt használ, még akkor is, ha a megadott port 1080. A SOCKS-figyelő nem tudja kikövetkeztetni, hogy egy HTTP CONNECT kérés SOCKS-ként volt értendő.
Ez a példa hitelesítés nélküli SOCKS-végpontot feltételez; csak olyan nyilvános SSH-célhoz válasszunk jelöltet a SOCKS5-proxy listáról, ahol ez az útvonal engedélyezett, és ellenőrizzük a hozzáférést a tényleges gazdagéphez és porthoz. A proxy hitelesítése, ha szükséges, elkülönül a későbbi SSH-bejelentkezéstől. Őrizzük meg az SSH-cél gazdagépkulcsának ellenőrzését; a segéden keresztüli elérés nem változtatja meg azt az identitást, amelyet az OpenSSH-nak hitelesítenie kell.