Якщо Ncat уже доступний для Windows OpenSSH, він може забезпечити з'єднання через SOCKS5-проксі. Додайте запис хоста до конфігурації SSH, яку використовує цей клієнт OpenSSH:

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

Замініть обидва імені хостів і обліковий запис, потім підключіться за допомогою ssh target-via-socks. Цей приклад припускає, що ncat.exe розташований у шляху пошуку виконуваних файлів помічника. Інакше використовуйте правильно взятий у лапки повний шлях до виконуваного файлу, особливо коли каталог містить пробіли.

Кінцева точка проксі йде після --proxy. OpenSSH розгортає %h і %p у підсумкове ім'я SSH-хоста та порт. Ncat узгоджує SOCKS-з'єднання й передає отриманий потік байтів через стандартний ввід і вивід; OpenSSH продовжує SSH-рукостискання поверх цього потоку.

Явне --proxy-type socks5 має значення. Якщо цей параметр відсутній, Ncat за замовчуванням використовує HTTP-проксі, навіть якщо вказано порт 1080. SOCKS-слухач не може визначити, що запит HTTP CONNECT мав на увазі SOCKS.

Цей приклад припускає SOCKS-точку без автентифікації; вибирайте кандидата зі списку SOCKS5-проксі лише для публічного призначення SSH, де цей маршрут дозволено, і перевіряйте доступ до його фактичного хоста й порту. Автентифікація проксі, коли вона потрібна, відокремлена від подальшого входу SSH. Зберігайте перевірку ключа хоста призначення SSH; доступ через помічник не змінює ідентичність, яку OpenSSH має автентифікувати.

Схожі статті