У цій відповіді я пройду конкретний приклад. Вам просто потрібно замінити імена хостів, імена користувачів і паролі комп'ютерів вашими.
Постановка проблеми
Припустимо, у нас є така мережа топологія:
our local computer <---> server 1 <---> server 2
Для конкретності припустимо, що у нас є імена хостів, імена користувачів і паролі таких комп’ютерів:
LocalPC <---> hostname: mit.edu <---> hec.edu
username: bob username: john
password: dylan123 password: doe456
Мета: ми хочемо створити SOCKS проксі - сервер , який прослуховує порт 9991з LocalPCтак , що кожен раз , коли з'єднання по LocalPCініціюють з порту 9991він проходить через mit.eduте hec.edu.
Приклад використання: hec.eduмає HTTP-сервер, який доступний лише на http://127.0.0.1:8001 з міркувань безпеки. Ми хотіли б мати можливість відвідати http://127.0.0.1:8001 , відкривши веб-браузер на LocalPC.
Конфігурація
В LocalPC, додайте ~/.ssh/config:
Host HEC
HostName hec.edu
User john
ProxyCommand ssh bob@mit.edu -W %h:%p
Потім у терміналі LocalPCзапустіть:
ssh -D9991 HEC
Він попросить вас пароль bobна mit.edu(тобто dylan123), тоді він запитає пароль johnна hec.edu(тобто doe456).
У цей момент, SOCKS проксі тепер працює на порту 9991з LocalPC.
Наприклад, якщо ви хочете відвідати веб-сторінку про LocalPCвикористання проксі-сервера SOCKS, ви можете зробити це у Firefox:

Деякі зауваження:
- в
~/.ssh/config, HECце ім'я з'єднання: ви можете змінити його на все, що завгодно.
-D9991Каже sshпро створення SOCKS4 проксі на порту 9991.