Собственный прокси сервер через SSH тоннель.

Что может быть лучше качественного прокси? Только собственный прокси! Прокси сервер, который был создан своими руками. В котором вы точно уверены. Особенно это важно, в наше время, когда появилась такая тенденция, что удобные и всем привычные сервисы становятся платными, но кроме этого, они становятся более уязвимыми к различным атакам и взломам. И вот, удобный и вроде казалось надежный прокси сервис, уже может собирать о Вас данные и передавать третьим лицам. Казалось бы, процесс вполне закономерный. Если что-то качественное, оно обычно должно стоить денег. По другому, на всех этого “качества” просто не хватит. Но когда заходит речь именно о качестве, мы начинаем думать что входит в это понятие. Как нам кажется, основными критериями качества прокси есть:
-Анонимность
-Стабильность
-Скорость работы

И несомненно, персональный прокси сервер на основе SSH туннеля, это именно то что может получить любой начинающий системный администратор Linux. Так как обычно, куча серверов под рукой, просто бери и используй. В целом развернуть прокси на Linux намного проще чем на Windows. Для того чтобы создать свой прокси сервер на Windows, необходимо использовать софт, который с большим шансом может содержать вирусы и бекдоры. Поэтому, так важно использовать надежные и проверенные источники для поиска подобного софта.

В основе своей, необходимость создания собственного прокси сервера, диктуется лимитами и ограничениями ресурсов, с которыми мы ежедневно работаем. К примеру, Netflix или YouTubе может по разному выдавать данные и ограничения на основе ГЕО посетителя.
Так как ГЕО пользователя, в основном определяется через IP адрес,  чтобы без проблем использовать такие площадки и сервисы, достаточно изменить свой IP. Самый лёгкий способ провернуть это — воспользоваться бесплатными анонимными прокси серверами. Но важно понимать, что если Вам предлагают что-то бесплатно, то скорее всего вы за это все равно платите, просто вы не знаете цену. Это могут быть как ваши персональные данные так и профиль вас как посетителя, которому после можно будет отправлять кучу рекламы. Такие прокси и сервисы можно без особых проблем, сделав простой запрос в Google. Что-то вроде “бесплатные анонимайзеры”. Но, с большим шансом, сервисы уже давно знают о подобных ресурсах и их IP уже давно заблокированы. Опять же, каждый случай уникальный и возможно этого варианта будет вполне достаточно для адекватной работы. А что если нет?
Давайте разберемся как можно создать собственный анонимный прокси сервер, конечно не бесплатно, но и не “за все деньги мира”.

Воспользоваться SSH для создания туннеля — это самый лёгкий и быстрый вариант создать защищенный шифрованный канал связи. Чтобы создать такой туннель потребуется оборудование с SSH-сервером и второй с SSH-клиентом. Технологии SSH есть практически на любом сервере с ОС Linux. Довольно недавно Microsoft добавила SSH в свои операционные системы: сервер OpenSSH доступен на Windows Server 2019, а клиент на Windows 10.

Первое что нам необходимо будет сделать, это зарегистрировать/купить сервер на котором будет работать этот прокси. Самым популярным решение будет VPS/VDS (Виртуальный выделенный сервер). За минимальное количество денег, Вы получаете “мини” выделенный сервер. На нем не получится запустить что-то мощное, но для наших задача, даже 128Mb памяти и 1 процессора, достаточно. В плане управления операционной системой по большей части она соответствует физическому выделенному серверу.

Самым важный моментом в покупке VDS для прокси, это узнать в какой стране будет собственно этот сервер и какой канал трафика будет доступен. Кроме этого, необходимо обратить внимание на наличие лимита по трафику. Некоторые интернет провайдеры, лимитируют количества трафика, который включен в стоимость сервера. Поэтому, если Вы планируете смотреть Netflix через proxy, то необходимо убедиться что трафик — безлимитный.
Кроме этого, некоторые хостинг провайдеры, запрещают размещение прокси серверов на своем оборудовании. Возможно стоит уточнить этот момент в поддержке, чтобы не потерять свои деньги.

Популярным решением для хостинг провайдеров есть ОС debian.
Для уверенных пользователей Linux, очевидным и простым будет вариант организовать себе прокси с использованием решения на базе 3proxy. Но, сейчас, мы будем рассматриваться еще более простое решение, на основе тоннеля через SSH. Так как это более легкий способ решение этой задачи.

Организация тоннеля через SSH.

Независимо от того где Вы купили/арендовали VDS, к нему в комплекте обязательно будет доступ по SSH, по другому не было бы возможности управлять сервером.
Для того, что бы нам решить нашу задачу — “прокси через SSH” нам достаточно этого самого доступа. Обычно такие доступы выглядят как:
IP/Hostname: 123.123.123.123
Login: root / debian / user
Pass: someStrongPassword

Для настройки работы под Linux, нам нужно набрать в командной строке ssh you_user@123.123.123.123 -D 5555, необходимо изменить “you_user” на имя пользователя действительно существующего на вашем VDS, 123.123.123.123 на ip адрес вашего сервера, который был выдан вам хостинг провайдером. Основная магия заключается в параметре -D , но чтобы не путать и не усложнять информацию, упустим технические детали.

Всё, осталось настроить браузер(FireFox) для работы, так как это сделано на скриншоте, 5555 это порт на котором будет работать ваш прокси. 

Для работы под Windows’ом поставьте PuTTY и создайте новое подключение следующим образом. Запустите PuTTY, в поле Hostname введите ip адрес вашего VDS, тут порт можете оставить 22.

Переходим в дереве настроек в Connection->SSH->Tunnels. Вводим в “Source port” 5555, Destination выбираем “Dynamic”, потом жмём Add и Open.

и настраиваем браузер (в нашем примере Internet Explorer 8).