Web proxy server — машина в сети с публичным IP адресом, к которой можно установить соединение и через которую в дальнейшем осуществлять все запросы к сетевым ресурсам.
Различют HTTP или SOCKS прокси.
Web proxy server через ssh как способ смены IP адреса
Существует довольно большое количество решений для проксирования трафика — самые распространенные это Squid, Dante, 3proxy и даже Nginx, который тоже можно использовать для этих целей.
Цель всегда одна — скрыть источник запросов. Это бывает нужно в определенных странах, где блокируется доступ к каким-то веб-ресурсам.
Рассмотрим простейшую реализацию SOCKS proxy сервера
ssh -D 0.0.0.0:8888 -f -C -N [email protected]
Это одна команда, которой можно добиться желаемого. Она устанавливает постоянную SSH сессию с машиной 123.123.123.123. Весь трафик теперь будет направляться через нее если указать в настройках браузера IP адрес сервера, на котором выполнена команда и порт 8888.
При установке сессии сервер запросит пароль пользователя root сервера 123.123.123.123.
Его нужно ввести.
ip адрес машины, с которой устанавливается подключение можно посмотреть на этой машине так:
ip a
Так выполнением одной команды получен рабочий Web proxy server работающий за счет установленной ssh сессии.
Стоит учитывать, что сессия не поднимется автоматически если машина будет перезагружена.
Добиться автоматического запуска процесса после перезагрузки можно, например, добавив правило в файл /etc/rc.local.
Ввода пароля можно избежать настроив подключение по ssh ключу, также можно использовать утилиту sshpass, которая позволяет передавать пароль в команде. Но такой способ подходит не везде, так как может представлять угрозу безопасности.
Через http прокси можно отправлять запросы с помощью утилиты curl. Она используется при диагностике неполадок и в скриптах.