Jeśli Ncat jest już dostępny dla Windows OpenSSH, może zapewnić połączenie przez proxy SOCKS5. Dodaj wpis hosta do konfiguracji SSH używanej przez tego klienta OpenSSH:

Host target-via-socks
    HostName ssh.example
    User user
    ProxyCommand ncat.exe --proxy-type socks5 --proxy proxy.example:1080 %h %p

Zastąp obie nazwy hostów i konto, a następnie połącz się za pomocą ssh target-via-socks. Ten przykład zakłada, że ncat.exe znajduje się w ścieżce wyszukiwania plików wykonywalnych pomocnika. W przeciwnym razie użyj poprawnie zacytowanej pełnej ścieżki do pliku wykonywalnego, zwłaszcza gdy katalog zawiera spacje.

Punkt końcowy proxy występuje po --proxy. OpenSSH rozwija %h i %p do końcowej nazwy hosta SSH i portu. Ncat negocjuje połączenie SOCKS i przenosi wynikowy strumień bajtów na standardowym wejściu i wyjściu; OpenSSH kontynuuje uścisk dłoni SSH przez ten strumień.

Jawne --proxy-type socks5 ma znaczenie. Gdy tej opcji brakuje, Ncat domyślnie używa proxy HTTP, nawet jeśli podany port to 1080. Odbiornik SOCKS nie może wywnioskować, że żądanie HTTP CONNECT miało oznaczać SOCKS.

Ten przykład zakłada nieuwierzytelniony punkt końcowy SOCKS; wybierz kandydata z listy proxy SOCKS5 tylko dla publicznego celu SSH, w którym ta trasa jest dozwolona, i sprawdź dostęp do jego rzeczywistego hosta i portu. Uwierzytelnianie proxy, gdy jest wymagane, jest oddzielone od późniejszego logowania SSH. Zachowaj weryfikację klucza hosta celu SSH; dotarcie do niego przez pomocnika nie zmienia tożsamości, którą OpenSSH ma uwierzytelnić.

Powiązane artykuły