Linux, простой http-прокси

Linux, простой http-прокси

У меня есть сервер Linux, работающий в центре обработки данных, который имеет дополнительную пропускную способность и ресурсы.

Я хотел бы настроить прокси-сервис, чтобы я мог направлять весь свой http/https-трафик из дома через него. Я знаю, как настроить браузер для связи с прокси, но не знаю, как настроить его на стороне сервера. Я также хотел бы иметь аутентификацию, чтобы только я мог им пользоваться

решение1

Мой любимый способ сделать это — использовать ssh/SOCKS и туннелирование SOCKS.

Если на вашем сервере colo'd запущен sshd, то это все, что вам нужно.

Использовать

ssh -D 9000 yourhost.foo.com

А затем настройте свой браузер на использование прокси SOCKS на порту 127.0.0.1 9000.

В Firefox я предпочитаю использовать Foxyproxy для быстрого изменения конфигурации прокси-сервера.

Вот страница OK с более подробной информацией. Подробности прокси-сервера SSH

решение2

Немного опоздал с обсуждением...

Я считаю, что tinyproxy проще в настройке и легче, чем squid, особенно если сервер предназначен только для вашего личного пользования.

Ключевым моментом является то, запущен ли на сервере вашего центра обработки данных sshd.

Если это так, то ответы здесь, которые используют ssh для переадресации портов, решают проблему авторизации автоматически. Установите tinyproxy для привязки к 127.0.0.1, и только пользователи, имеющие доступ ssh, смогут подключиться к нему.

Если это не так, то вы можете настроить tinyproxy на прием соединений только с определенных хостов или IP-адресов. Если у вас дома статический IP-адрес, проблема решена.

Если у вас динамический адрес, вы можете быть готовы принимать соединения из части вашего домашнего соединения. Например, ваш интернет-провайдер устанавливает ваше домашнее соединение как 192-192-192-192-area1-san-fran-cal-usa, вы можете настроить tinyproxy на прием соединений только из area1-san-fran-cal-usa (тем самым игнорируя IP-часть соединения). Риск заключается в том, что другие абоненты area1 обнаружат ваш прокси и начнут его использовать.

Это то, что я использую для своего VPS-прокси, и это работает отлично, особенно потому, что я нахожусь в относительно небольшой зоне покрытия моего провайдера. Я никогда не видел, чтобы кто-то еще использовал этот прокси, но я знаю, что это риск (который я готов принять — я всегда могу сменить tinyproxy, если обнаружу, что кто-то еще его использует).

решение3

Может быть, но просто может быть хорошим выбором в такой ситуации использовать какое-то общее решение. Поэтому я рекомендую squid как можно чаще, когда кому-то нужна прокси-служба. Причин тому несколько: документация есть везде, это общее решение для базовых и гораздо более конкретных запросов, и самое главное, мой опыт показал, что клиенты с простыми запросами в кратчайшие сроки становились клиентами с очень сложными запросами относительно прокси-службы.

решение4

Самый простой способ сделать это — через SSH-туннель:

ssh -D 8080 yourserver.com

Теперь вы можете указать в своем браузере прокси-сервер (SOCKS) localhost:8080.
SSH привяжет 8080 только к 127.0.0.1 (и ::1), поэтому никто другой не сможет его использовать.

Если вы используете Windows, вы также можете использовать Putty для создания этого туннеля.

Связанный контент