Лайфхаки

Маленькие, полезные хитрости

Простая пошаговая настройка SOCKS5 прокси-сервера.. Что такое proxy-сервер

22.07.2022 в 12:49

Простая пошаговая настройка SOCKS5 прокси-сервера.. Что такое proxy-сервер

Для начала разберем, что это за зверь такой - proxy сервер , и зачем он нужен.Proxyчасто используют для организации выхода в интернет нескольких компьютеров, при том, что физически такая возможность есть только у одного из них. Именно на этой машине и запускаютproxyсервер. На других же компьютерах настраивают программное обеспечение (например, браузеры) таким образом, чтобы использовать этотproxyсервер для выхода в интернет. В результате, если всё сделано правильно, эти компьютеры, точнее, браузеры, работающие на них, получают доступ во всемирную паутину.

Владелец жеproxyполучает возможность управлять доступом всех клиентов, подключившихся к его серверу. Что под этим подразумевается? Например, он может ограничивать скорость доступа для клиентов, разрешать или запрещать доступ к определенным ресурсам, производить аутентификацию пользователей, вести учёт объёма потреблённого трафика, осуществлять кеширование. Вообщем, может очень многое. Именно поэтомуproxyсервера так любят сетевые администраторы на различных предприятиях.

В домашних условияхproxyсервера сегодня используются редко. Я поднимал такой, когда выходил в интернет через простейшийADSLмодем году так в 2009 - нужно было через один модем вывести в интернет два компа. В наши дни большинство людей используют дома роутеры, которые сейчас почти поголовно имеют встроенную реализацию механизма NAT , что позволяет устройствам в локальной сети получать доступ в интернет. При этом, от конечных пользователей практически не требуется производить специальную настройку своего программного обеспечения, не то, что в случае сproxy. Правда,NATне позволяет реализовывать такое управление подключенными компьютерами, какproxyсервер, но в домашних условиях этого, как правило, и не требуется.

Proxyбывают разными. Чаще всего используютсяHTTPproxy, которые позволяют перенаправлятьHTTPтрафик от конечного устройства до требуемого ресурса. СуществуютFTPproxy, позволяющие работать по протоколуFTP, нельзя не упомянуть иHTTPSproxy, которые, по факту, являются теми жеHTTPproxy, только работают с зашифрованным трафиком. В настоящее время считается, что самыми прогрессивными являютсяSOCKSproxy, вернее, последняя версия -. Этиproxyизначально анонимные - конечный ресурс не узнает, какой у вас адрес и вас никто не "вычислит поIP" . Кроме того, даже факт использованияproxyостанется скрытым. К тому же,SOCKS5proxyработают как по протоколуTCP, так и по протоколуUDP, и, в отличии отSOCKS4, умеют производить аутентификацию пользователей. В общем, как написал выше - самые прогрессивные.

На самом деле, я не собираюсь углубляться в эту тему - темуproxyсерверов,NATи прочих высоких материй. Будем считать, что приличия соблюдены и минимальный реверанс в сторону ознакомительной информации завершён.

SOCKS5 proxy server windows. SOCKS5 proxy

Using our SOCKS5 proxies can further minimize your computer's identity from being revealed and reduce CAPTCHAs. This guide explains why SOCKS5 is beneficial and how to use it.

What this guide covers

  • -
  • -
  • -
  • Overview

      With the SOCKS5 proxy on all of Mullvad's VPN servers, you can further minimize your computer's identity from being revealed. This simple yet powerful feature also reduces CAPTCHAs.

      For advanced users, the proxy is located on IP 10.8.0.1 (OpenVPN) or 10.64.0.1 (WireGuard), port 1080.

      The SOCKS5 proxy is only accessible when you are connected to Mullvad.

      Why the proxy is beneficial

      Kill switch

      You may already be familiar with the Mullvad app's built-in "kill switch" safety feature. In other words, in the event that the Mullvad connection is terminated, all of your Internet traffic is automatically blocked, ensuring that your traffic is not accidentally leaked outside of our secure tunnel.

      However, what happens if you've forgotten to start the Mullvad app? This is where using the SOCKS5 proxy comes in handy, to act as back-up protection.

      Reduced CAPTCHAs

      Another benefit is a reduction in the amount of CAPTCHAs you will experience. Many websites and services require this identification when they detect traffic that originates from a VPN server. The proxy makes this detection more difficult.

      Static IPv6 / IPv4 addresses

      Each Mullvad server can have multiple exit IPs, but if you use the SOCKS5 proxy on the server then you will always get the same IP-address - that of the proxy. This can be useful if you need to whitelist your Mullvad IP somewhere. The proxy provides you with an IPv6 address and an IPv4 address. You can find them on our Connection Check page.

      How the proxy works

      If you configure your browser, for example, to use the SOCKS5 proxy, it will direct all of your internet access via the proxy which is only accessible through Mullvad. So if you haven't turned on the app, your browser will prevent all internet access and therefore won't leak any information.

      The proxy also works with routers and any other VPN used together with Mullvad's servers.

      Get started with the SOCKS5 proxy

      Follow these steps to configure your web browser to use our SOCKS5 proxies.

      If you are using WireGuard, you will need to replace 10.8.0.1 with 10.64.0.1 in the instructions below.

      Note: Proxy DNS when using SOCKS V5 is not compatible with thein the Mullvad app.

      Firefox – newer versions

    1. In a Firefox browser window, click the menu button in the top right corner and choose Options or Preferences .
    2. In the search box, type “ network ”, then click on the Settings button in the result.
    3. Select Manual proxy configuration .
    4. Make sure that the HTTP Proxy, HTTPS Proxy and FTP Proxy fields are empty.
    5. In the SOCKS Host field, enter 10.8.0.1 and enter 1080 in the Port field.
    6. Click on SOCKS v5
    7. Tick Proxy DNS when using SOCKS v5 .
    8. To disable, go to step #5 and change the setting to No Proxy .

      Firefox – older versions

      1. In the Firefox menu , click on Edit .
      2. Click on Preferences .
      3. Click on Advanced.
      4. Click on Network Settings.
      5. Select Manual proxy configuration .
      6. Make sure HTTP/SSL and FTP proxy fields are empty .
      7. In the SOCKS Host: field, enter 10.8.0.1 with port 1080 .
      8. Click on SOCKS v5 and enable Remote DNS or tick Proxy DNS when using SOCKS v5 .
      9. To disable, go to step #5 and change the setting to No Proxy .

        Android - Firefox

        Note: The about:config settings page was removed from Firefox on Android and they are currently only available in Firefox Nightly (the development version of Firefox).

        1. Enter about:config in the address bar and click on Send .
        2. In the search field, enter proxy .
        3. Scroll down to network.proxy.socks and enter 10.8.0.1 .
        4. Scroll down to network.proxy.socks_por t and enter 1080 .
        5. Change the value for network.proxy.socks_remote_dns to True .
        6. Change the value for network.proxy.socks_version to 5 .
        7. Change network.proxy.type to 1 .
        8. Clear the field for network.proxy.http.
        9. Clear the field for network.proxy.ssl .
        10. Click on the back button to save the changes.

        To disable, go to step #7 and change the setting to 5 .

    Поднимаем свой прокси-сервер. Создаем и настраиваем собственный прокси-сервер

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

    Причина тому очень проста, вы сами всё поймете, когда уясните себе разницу между этими двумя технологиями. По сути, VPN и VPS это одно и то же, оба они используют промежуточный сервер со своим IP -адресом, но в VPN применяется шифрование трафика, а в прокси нет. Использование VPN более безопасно, но это не единственное его преимущество, — дополнительное шифрование пакетов позволяет противодействовать даже такой технологии фильтрации как DPI .

    Впрочем, сбрасывать VPS со счетов тоже не стоит. Если вы не нуждаетесь в шифровании трафика и хотите изменить IP -адрес только для конкретных программ, можете смело юзать прокси, причем будет лучше всего, если станете использовать свой собственный виртуальный прокси сервер.

    Где его взять?

    Купить услугу у прокси -провайдеров, главное, чтобы сервер располагался в стране отличной от той, в которой действуют блокировки.

    Примечание: цена в месяц на VPS для частных пользовательских нужд составляет в пределах от 2 до 5 долларов США.

    Такие прокси -сервера нередко используются для поднятия полноценного VPN , но в данном примере речь идет о выделенном IP , который вы станете использовать для обхода блокировок и который будет указан в письме, переданном вам предоставившим услугу провайдером. В этом же письме вам будут переданы логин и пароль для подключения к серверу. Также вам понадобится специальная программа-клиент , с помощью которой вы станете подключаться к серверу. Называется она Putty .

    Установив и запустив утилиту, в разделе настроек Session укажите IP -адрес, выданный вам прокси провайдером.

    Поднимаем свой прокси-сервер. Создаем и настраиваем собственный прокси-сервер

    Затем перейдите к настройкам SSH -> Tunnels и укажите в порт (Source Port) 3128 . Включите радиокнопки Auto и Dynamic , нажмите кнопку «Add» .

    Поднимаем свой прокси-сервер. Создаем и настраиваем собственный прокси-сервер

    Переключитесь в раздел Connection и задайте время соединения с сервером не менее 60 секунд . Нажмите «Open» .

    Поднимаем свой прокси-сервер. Создаем и настраиваем собственный прокси-сервер

    Введите полученные в письме логин и пароль и соединитесь с сервером.

    Поднимаем свой прокси-сервер. Создаем и настраиваем собственный прокси-сервер

    Теперь осталось только настроить прокси в той программе, с помощью которой хотите получать доступ к заблокированному контенту.

    Например, в Google Chrome необходимо будет зайти в настройки Система -> Настройки прокси-сервера .

    Поднимаем свой прокси-сервер. Создаем и настраиваем собственный прокси-сервер

    В открывшемся окне свойств интернета включите автоопределение параметров подключения и использование прокси -сервера для локальных подключений. Нажмите «Дополнительно» .

    Поднимаем свой прокси-сервер. Создаем и настраиваем собственный прокси-сервер

    В поле Socks в качестве адреса прокси -сервера вбейте localhost , а порт укажите 3128 .

    Поднимаем свой прокси-сервер. Создаем и настраиваем собственный прокси-сервер

    Примерно так же настраивается прокси и в других программах его поддерживающих. Localhost — это адрес хоста, его дает Putty , 3128 — используемый в ней порт.

    Что лучше, VPN или VPS

    Поскольку мы затронули тему VPS , у читателей может возникнуть вопрос так что же всё таки лучше, готовый VPN или выделенный прокси-сервер? Однозначно ответить на этот вопрос не так просто. Используя выделенный VPS , вы знаете какая информация хранится на вашем сервере, с другой стороны передаваемый трафик не шифруется, что создает угрозу безопасности.

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

    SOCKS5 proxy настройка. Создание и настройка SOCKS5 прокси-сервера в Ubuntu

    Для ускорения работы с некоторыми программами и парсерами, которые я использую, требуются прокси, сначала я арендовал их, но потом решил поднять свои SOKS5 прокси сервера на уже имеющихся серверах с сайтами.

    На всех серверах стоит Ubuntu Server 14.04, может где-то и 12.04, но описание должно подойти и для всех остальных систем основанных на Debian.

    Есть 2 известных мне способа организации работы SOKS5 сервера:

    1. SOCKS через SSH. Этот способ удобен своей простотой но неудобен при частом использовании, или использовании с разных машин;
    2. Установка SOCKS сервера. При использовании этого способа уйдет чуть больше времени на первоначальную настройку, но потом пользоваться прокси будет быстрее и удобнее.

    SOCKS через SSH

    Для того чтоб поднять SOCKS5 через SSH нужен только доступ к SSH сервера.

    Вводим в терминале или SSH клиенте (PuTTY для Windows)

    ssh -D 1080 user@server

    Если запросит пароль, то нужно ввести пароль от SSH сервера.

    -D – указывает порт по которому будет доступен SOKS5 сервер

    Все, после этого вы можете подключиться к SOKS5 серверу по адресу localhost:1080 или 127.0.0.1:1080

    Такой способ удобен тем что не нужно ничего дополнительно устанавливать и настраивать. Но перед каждым подключением или после разрыва ssh соединения, например из-за проблем с интернетом придется заново вводить эту команду.

    Установка SOCKS сервера

    Я знаю 2 SOCKS сервера 3proxy и Dante . У себя использовал Dante Server его настройку и опишу.

    Установить Dante сервер можно с помощью apt-get, по умолчанию устанавливается старая версия (v.1.1). Ниже будут настройки для старой и новой (v.1.4) версий.

    Установка новой версии Dante Server

    sudo apt-get update sudo apt-get install software-properties-common python-software-properties sudo add-apt-repository ppa:dajhorn/dante sudo apt-get update sudo apt-get install dante-server

    После этих действий Dante Server будет установлен, но ругнется и не сможет запуститься, видимо дефолтные настройки имеют ошибку.

    Далее нужно отредактировать файл настроек

    sudo nano /etc/danted.conf

    Приведя его к такому виду

    logoutput: syslog /var/log/danted.log internal: eth0 port = 1080 external: eth0 socksmethod: username user.privileged: root user.unprivileged: nobody client pass { from: 0.0.0.0/0 to: 0.0.0.0/0 log: error } socks pass { from: 0.0.0.0/0 to: 0.0.0.0/0 command: connect log: error method: username }

    Расшифровка конфига:

    • указываем лог файл который будет находиться по адресу /var/log/danted.log;
    • eth0 - сетевой интерфейс на котором висит внешний IP сервера, узнать его можно воспользовавшись командой ifconfig , либо можно просто указать свой внешний IP вместо названия интерфейса;
    • socksmethod - метод авторизации. username - авторизация с указанием логина и пароля системных пользователей. Можно указать none если вы хотите не использовать авторизацию, но не советую оставлять открытым для порт для прокси т.к. сканеры прокси не дремлют, и у меня через открытый порт начали спам рассылать, после чего мне хостер отписал что у моего IP идет спам и надо что-то решать, можно использовать не дефолтный порт а какой-то другой, это позволит отсрочить нахождения вашего прокси сканерами;
    • user.privileged - имя пользователя с расширенными правами;
    • user.unprivileged - имя пользователя с обычными правами (как я понял dante работает от имени этих пользователей в зависимости от того какими правами нужно обладать для выполнения операции).

    После сохранения настроек нужно перезагрузить Dante

    sudo service danted restart

    Все, теперь к SOKS5 прокси можно подключиться с любого устройства, указав IP сервера, порт – 1080, и данные для авторизации (имя и пароль пользователей которые зарегистрированы на сервере).

    Я для доступа к прокси создал отдельного пользователя и указываю его данные. Создавал командой

    sudo useradd -m soksuser && sudo passwd soksuser

    Где soksuser – имя создаваемого пользователя.

    Узнать подробнее о создании пользователей в Ubuntu .

    Установка старой версии Dante Server

    sudo apt-get update sudo apt-get install dante-server

    Далее нужно отредактировать файл настроек

    sudo nano /etc/danted.conf

    Приведя его к такому виду

    logoutput: syslog /var/log/danted.log internal: eth0 port = 1085 external: eth0 method: username user.privileged: root user.notprivileged: nobody client pass { from: 0.0.0.0/0 to: 0.0.0.0/0 log: error } pass { from: 0.0.0.0/0 to: 0.0.0.0/0 command: connect log: error method: username }

    Дальше все так-же как и в новой версии о которой я писал выше.

      SOCKS5 proxy linux. Поднимаем свой SOCKS5 proxy-сервер

      Вводятся постоянные блокировки, и может возникнуть потребность в бюджетном способе их обхода, например, использование socks5. Как это сделать? Рассказываем в нашем материале.

      Если у вас нет своей VDS

      Берем, регистрируемся на digitalocean.com,.

      Простой способ поднятия VPN

      1. Создайте аккаунт на Digital Ocean и добавьте свои платежные данные.
      2. Заходим сюда.
      3. Скрипт собирает droplet c vpn после установки отдаёт настройки с vpn и все, пользуетесь на здоровье.

      И того, всего нужно сделать 3 клика.

      Правда это будет стоить $5 в месяц, но можно легко разделить на друзей.

      Если кто тестировал VPN в три клика на DigitalOcean и не получалось подключить клиента с Win 10 и в «диспетчере событий» (eventvwr.msc) появляется error 720, то в «Диспетчере устройств» (devmgmt.msc) удалите все сетевые адаптеры начинающиеся с «WAN Miniport» и обновите конфигурацию оборудования. После всё будет работать.

      Не очень простой способ поднятия socks5

      • Выберете самый дешевый тариф как описано ниже (у вас будут списывать деньги за час, а не сразу за весь месяц)
      • Создаем новый droplet любой конфигурации, минимальный стоит 5$/месяц, трафик 1TB, чуть дороже 10$/месяц — трафик 2TB, 20$ — 4TB. Операционная система ubuntu 16.04.4 x64 подойдет идеально.

      SOCKS5 proxy linux. Поднимаем свой SOCKS5 proxy-сервер Просто создайте дроплет. Меню может изменится в будущем, но все будет понятно

      SOCKS5 proxy linux. Поднимаем свой SOCKS5 proxy-сервер Выберете Ubuntu 16.04.

      SOCKS5 proxy linux. Поднимаем свой SOCKS5 proxy-сервер Выберите самый дешевый тариф. Провайдеры типа  или Hetzner дешевле, но у DO отличнейший сервис

      SOCKS5 proxy linux. Поднимаем свой SOCKS5 proxy-сервер Выберите регион, который ближе всего к вашему

      Вы можете заметить, что у вас нет ssh ключа в вашем аккаунте. Если так, то вот чуть про  и как их  настроить

      Если вы пользователь Windows — не беспокойтесь, я расскажу как легко работать с ssh ключами в Windows.

      Доступ до вашего VDS

      Если вы Linux или Mac пользователь, то вы скорее всего уже знаете как сгенерировать ssh ключи и как использовать их. В этом случае, просто загрузите приватный ключ на ваш аккаунт Digital Ocean и проследуйте дальше.

      Также — включение двухфакторной аутентификации добавит безопасности и избавит от головной боли в случае чего.

      Есть один момент — DO ожидает формат вашего ключа как если бы он был сгенерирован Linux ssh генератором. Это выглядит вот так:

      ssh-rsa AAAAB3NzaC …7QpNuybOgF root@proglib-ubuntu

      Теперь часть для windows пользователей

      Я лично использую . SSH ключи — это базовый метод контроля Linux серверов и защищенного доступа. Можно прочитать про это на . Если вы Windows пользователь ssh консоль это тоже самое как и cmd.exe.

      Не беспокойтесь об этом, на самом деле это довольно просто.

      Но если вы сгенерировали ключи через Putty, ваш публичный ключ будет выглядеть как то так и в таком виде он не будет работать с Ubuntu:

      ---- BEGIN SSH2 PUBLIC KEY ---- Comment: "rsa-key-20180413" AAAAB3NzaC1yc2EAAAABJQAAAQEAuBflEQeTW9xfNI8N3krfFzxo8iU/NV/3cgxR d2dkWZwYTaPaJsAoJFPtWhmsRuFuw7naZZOo/VFiqCuuYGaQcYRLrDqvfFjAusJg B1ZK2YY57kz/ulzO9LqiVta+Fql4jL5244z9FNHF10YXbBZsmYQikAWJCItCxvZh goY74Sfa5lPRfGojfC0xwayObJjqRcI9PS7z66ixRqO05vPMBekt/7fKoXQ+pUCP LOVeH8AAWdaRWkvT6waCFSmjVBwfkHoghtR9pp/PZihAxpS5dM8H7AJXlvLEhNSp 6smFlkkz+XU3d3Z2FqSLV9K6pBNlNCRn+G/60xVtTqGDAsdPNw== ---- END SSH2 PUBLIC KEY ----

      Убедиться, что ваш ключ будет работать с DO можно следуя этим указаниям

      • Создать ключ используя Linux как описано . Вы будете использовать этот ключ на сервере DO.
      • Сохраните новые созданные публичный и приватные ключи где нибудь на своем компьютере
      • Загрузите приватный ключ в PuttyGen через Conversion -> Import Key
      • Затем нажмите "save private key" — вы будете использовать этот ключ с Putty позже

      SOCKS5 proxy linux. Поднимаем свой SOCKS5 proxy-сервер Конвертирование ключа в PuttyGen

      Если вы не имеет доступа до Linux консоли, вы можете сгенерировать ключи используя следующие действия**:

      • Создайте дроплет в DO, сбросьте root пароль (смотрите картинку), откройте в онлайн консоли. Создайте ключи там и используйте команду  cat  для вывода ключа
      • Создайте дроплет в DO, сбросьте root пароль, откройте Putty и введите логин, пароль
      • В обоих случаях — будет проще создать новый дроплет после того, как нужные ключи будут установлены

      SOCKS5 proxy linux. Поднимаем свой SOCKS5 proxy-сервер Это меню позволяет сбросить пароли и запустить онлайн консоль

      Наконец-то получить доступ до своего дроплета используя Putty и ключи

      • Создайте новое соединение в Putty
      • Введите ваш IP адрес и порт (обычно 22)
      • Введите имя для вашего соединения и нажмите сохранить
      • Пойдите в data -> Auto-login username и введите root

      SOCKS5 proxy linux. Поднимаем свой SOCKS5 proxy-серверSOCKS5 proxy linux. Поднимаем свой SOCKS5 proxy-сервер

      Настройка вашего VDS и прокси сервера

      Теперь у вас есть ваш собственный VDS и ssh терминал с root доступом до него. Отлично!