Вход Регистрация

Кейсы

Прокси SOCKS5 для безопасной автоматизации: от ботов до индексаторов блокчейна

Узнайте, как использовать прокси SOCKS5 для безопасной автоматизации: от запуска ботов до индексирования блокчейн-сетей. Надёжность, анонимность и контроль.

Команда Froxy 16 июл 2025 7 мин
Прокси SOCKS5 для безопасной автоматизации: от ботов до индексаторов блокчейна

SOCKS5 прокси-сервер работает по аналогии с сетевым экраном (файрволом) на основе своего собственного сетевого протокола. Если привязываться к модели OSI, то происходит это на сеансовом уровне (четвёртый из семи). Как раз поэтому SOCKS5 прокси могут быть абсолютно прозрачными для конечных клиентов, следы их работы никак не выявить и не отследить, а ещё они могут работать с разными протоколами приложений: HTTP, FTP, SSH и пр.

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

Почему приватность важна в веб-ботах и децентрализованных системах

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

Веб-боты могут быть заблокированы на основе IP-адресов, гео-расположения, различных технических признаков и поведенческих метрик. Ниже перечень наиболее значимых причин, из-за которых важно уделять внимание конфиденциальности и приватности:

  • Защита от блокировок, связанных с цензурой, государственным и корпоративным контролем. Из-за таких блокировок может нарушаться работоспособность веб-бота (скрапера) или децентрализованной сети (блокчейн, торренты, IPFS).
  • Безопасность данных. Часто случается так, что парсеры нарушают правила сайтов, торговых площадок, соцсетей, бирж и других платформ (намеренно или непреднамеренно), а это в свою очередь может обернуться судебными исками и другими видами разбирательств. В децентрализованных системах на первое место выходит защита данных и транзакций.
  • Раскрытие персональной информации. Если веб-бот или децентрализованная система не предпринимают никаких попыток защиты (шифрования трафика, запутывание следов и т.п.), то их можно отследить непосредственно до владельца.
  • Опасные действия злоумышленников и слежка. Когда злоумышленник знает о вас или о вашей сети транзакций слишком много, он может использовать её уязвимости и воспользоваться ими в своих целях.

Вывод из вышесказанного достаточно простой — нужно защищаться. Протокол SOCKS и SOCKS5-прокси серверы — это одно из самых эффективных средств защиты. Давайте остановимся на них поподробнее.

Что такое SOCKS5-прокси и как они работают

SOCKS5-прокси

Мы уже упоминали, что эти прокси работают на основе специального протокола — SOCKS. Аббревиатура очень похожа на сокращение слова SOCKetS, которая в свою очередь имеет прямое отношение к описанию работы протокола — через сокеты. Но во многих источниках расшифровка чаше трактуется как «SOCKet Secure», то есть «безопасность сокетов». Если акроним читать как обычное слово, то оно переводится на русский как «носки».

SOCKS — это сеансовый протокол, разработанный Дэвидом Кобласом и позже улучшенный и переработанный компанией Permeo Technologies (выкуплена и принадлежит корпорации Symantec), предназначен для эффективной маршрутизации трафика поверх транспортных протоколов TCP (во всех версиях протокола) и UDP (только в версии SOCKS5).

Важно! SOCKS4 и SOCKS5 протоколы несовместимы между собой. SOCKS5 намного функциональнее, он может работать поверх TCP и UDP-подключений, поддерживает авторизацию и совместим с IPv6-адресами.

SOCKS5 прокси сервер — это программная реализация прокси-сервера, работающего по протоколу SOCKS5.

В зависимости от типа IP-адресов (их принадлежности к пулам провайдеров), выделяют:

  • Резидентные SOCKS5-прокси
  • Мобильные SOCKS5-прокси
  • Серверные или датацентровые SOCKS5-прокси

Чтобы было понятнее, сравним SOCKS5 прокси с обычными HTTP-прокси и с VPN:

Характеристика

SOCKS5

HTTP-прокси

VPN

Уровень работы (по модели OSI + протокол)

Поверх транспортного, 4 уровень (TCP/UDP)

Поверх прикладного, 7 уровень (HTTP/HTTPS)

Весь трафик (TUN/TAP)

Анонимность

Высокая

Средняя (может добавлять свои HTTP-заголовки)

Максимальная

Шифрование

Нет (но можно поверх TLS)

Нет (если не HTTPS)

Да (AES, WireGuard и др.)

Скорость

Высокая

Зависит от реализации

Зависит от шифрования

Материалы по теме: общее сравнение прокси, IP-генераторов и VPN и сравнение SOCKS-прокси vs HTTP-прокси.

Клиенты могут арендовать подходящее сетевое оборудование, чтобы самостоятельно установить и настроить SOCKS5-прокси, а могут приобрести и воспользоваться готовым приватным SOCKS5 прокси-сервисом, таким как Froxy.

В каких ситуациях SOCKS5 прокси подходят для рабочих процессов веб-ботов

socks5 прокси в ботах

SOCKS5-прокси будут полезны в разных ситуациях и задачах, от масштабирования многопоточного парсинга контента до обхода гео-ограничений контента в региональных библиотеках стриминговых сервисов.

Наиболее востребование направления для веб-ботов — это обход блокировок по IP (с ротацией) и имитация поведения пользователей (с созданием правдоподобных цифровых отпечатков в паре с безголовыми или антидетект-браузерами). Давайте рассмотрим применение на примерах, заодно покажем, как настраивать SOCKS5 прокси в Python.

Пример: Извлечение гео-ограниченного контента с помощью SOCKS5 и Python

Допустим, нам нужно получить доступ к библиотеке стримингового сервиса из США, пусть это будет Netflix.

Для работы с SOCKS-протоколом устанавливаем библиотеку PySocks, она перенаправляет весь трафик через SOCKS5-прокси.

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

Целевой сайт видит IP-адрес прокси (например, американский), а не ваш реальный, поэтому отдаёт контент, предназначенный для США.

Код на Python:

import requestsimport socketimport socks # не забудьте предварительно установить пакет: pip install PySocks# Настройка SOCKS5 прокси, замените данные на свои (их нужно получить у своего провайдера прокси)socks.set_default_proxy(socks.SOCKS5, "your-proxy-server.zone", 1080, username="USR1", password="Pa$$W0rD")socket.socket = socks.socksocket # Здесь происходит подмена сокетов системы# Теперь все запросы идут только через проксиurl = "https://www.netflix.com/" # Пример гео-защищённого сайтаheaders = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36 "} # Представляемся браузером Chrome версии 136response = requests.get(url, headers=headers) #Отправляем запрос к целевому сайтуprint(response.text) # Выводим в консоли HTML-код страницы

Пример: Puppeteer с прокси SOCKS5 для эмуляции поведения бота

Так как многие современные сайты представляют собой сложные web-приложения, написанные на JavaScript, то для доступа к их содержимому может потребоваться не просто полноценный браузер, но и эмулирование поведения пользователя (с подменой цифрового отпечатка).

Допустим, нам нужно автоматизировать вход в Instagram с разных IP, избегая блокировок со стороны целевого сервиса.

Примерно так будет выглядеть парсер на JavaScript, код базовый и требует расширения (для подключения к headless-браузеру используем библиотеку Puppeteer):

const puppeteer = require('puppeteer');// Скрипт будет работать асинхронно(async () => {const browser = await puppeteer.launch({args: ['--proxy-server=socks5://user:pass@your-proxy.serv:1080', //Укажите здесь свои параметры подключения к SOCKS5 прокси-серверу'--disable-features=site-per-process' // Важно для некоторых сайтов]});//Открываем браузер и новую вкладкуconst page = await browser.newPage();// Переходим на сайтawait page.goto('https://www.instagram.com/', {waitUntil: 'networkidle2'});// Вводим логин/пароль и выполняем другие действия...await page.type('input[name="username"]', 'your_login');await page.type('input[name="password"]', 'your_password');await page.click('button[type="submit"]');// Делаем скриншот страницыawait page.screenshot({path: 'instagram.png'});//Закрываем браузерawait browser.close();})();

Варианты использования в блокчейне и криптовалюте

Варианты использования в блокчейне и криптовалюте

Благодаря своим преимуществам, SOCKS5-прокси будут более чем полезны в децентрализованных системах. Например, их можно использовать для анонимного взаимодействия с нодами, кошельками и скриптами, для обхода блокировок RPC-узлов (например, Infura в санкционных странах), а также для сокрытия IP при работе кошельками — защита от атак «посередине» (с перехватом пароля или других данных в открытой сети).

Пример: Подключение web3.py к узлу Ethereum через SOCKS5

Предположим, что нам нужно отправить транзакцию в сеть Ethereum, скрыв реальный IP. Скрипт на Python может выглядеть так (схематично):

# Импортируем библиотеки, не забудьте установить отсутствующиеfrom web3 import Web3import socksimport socket# Настройка SOCKS5 проксиsocks.set_default_proxy(socks.SOCKS5, "your-proxy.serv", 1080, username="USR1", password=" Pa$$W0rD ") # Замените данные на своиsocket.socket = socks.socksocket# Подключение к Ethereum через Infura (или через свою ноду)# Infura или другая нода видит только IP прокси, а не ваш реальный адресweb3 = Web3(Web3.HTTPProvider('https://mainnet.infura.io/v3/YOUR_API_KEY'))# Проверка подключенияprint(web3.is_connected()) # Должно быть True# Пример: Получение баланса кошелькаbalance = web3.eth.get_balance('0xYourWalletAddress')print(web3.from_wei(balance, 'ether'))

Пример: Использование ethers.js с прокси SOCKS5 для скриптов кошелька

Задействуем Node.js (с соответствующим окружением) и библиотеку ethers.js. Пусть задача будет — отправка транзакций через SOCKS5 прокси-сервер, для скрытия своего реального IP.

Код:

// Подключаем библиотекиconst { ethers } = require("ethers");const { SocksProxyAgent } = require('socks-proxy-agent');// Настройка SOCKS5 прокси// Замените данные для подключения на своиconst proxyAgent = new SocksProxyAgent('socks5:// your-proxy.serv:1080');// Подключение к провайдеру через проксиconst provider = new ethers.JsonRpcProvider({url: 'https://mainnet.infura.io/v3/YOUR_API_KEY',agent: proxyAgent // Передаём SOCKS5-агент});// Пример: Получение баланса кошелькаasync function getBalance() {const balance = await provider.getBalance('0xYourWalletAddress');console.log(ethers.formatEther(balance));}getBalance();

 

Пример маршрутизации трафика с помощью прокси Froxy

Самая главная фишка ротируемых прокси — их не нужно «вращать» вручную (пусть даже на уровне специального кода). Достаточно подключить прокси один раз, а все остальные настройки и логика замены настраивается в личном кабинете (через онлайн-версию дашборда или через API).

Froxy — это надёжный прокси-сервис для аренды ротируемых HTTP и SOCKS5-прокси со всего мира (200+ локаций, таргетинг до города и оператора связи). В наличии 10+ млн. качественных SOCKS5 proxy под любые задачи.

Базовая ситуация — ротация региональных прокси

Предположим, что вам нужно следить за обновлением IP SOCKS5-прокси: чтобы адрес подбирался из конкретной локации и всегда был работоспособным.

В этом случае вам ничего не нужно делать на уровне кода. Достаточно приобрести пакет прокси, настроить прокси-фильтр в личном кабинете (таргетинг, правила ротации, например, выбрать опцию замены при каждом новом запросе) и просто подключить прокси одной строкой (актуальные данные нужно взять в личном кабинете Froxy).

Пример скрипта, который получает на входе URL-сайта, анализирует страницу и обходит все найденные URL (в рамках обозначенного лимита, внешние URL сохраняются в отдельный файл, использование SOCKS5-прокси можно выключить через флаг USE_PROXY):

# Не забудьте установить отсутствующие библиотеки: pip install requests[socks] beautifulsoup4 tldextractimport requestsfrom bs4 import BeautifulSoupfrom urllib.parse import urljoin, urlparseimport csvimport tldextractfrom collections import deque# НастройкиMAX_URLS = 500MAX_RETRIES = 3USE_PROXY = TrueSOCKS5_PROXY = "socks5://proxy_user:PASSWRD@proxy.froxy.com:9000" # Замените на нужныйSTART_URL = "https://site.com" # Замените на нужный адрес# Очередь и множестваvisited_urls = set()internal_urls = []external_urls = []def is_internal(url, base_domain):extracted = tldextract.extract(url)full_domain = f"{extracted.domain}.{extracted.suffix}"return base_domain in full_domaindef extract_meta(soup):title = soup.title.string.strip() if soup.title else ""description = ""desc_tag = soup.find("meta", attrs={"name": "description"})if desc_tag and "content" in desc_tag.attrs:description = desc_tag["content"].strip()return title, descriptiondef fetch(url):tries = 0proxies = {"http": SOCKS5_PROXY, "https": SOCKS5_PROXY} if USE_PROXY else Nonewhile tries < MAX_RETRIES:try:response = requests.get(url, timeout=10, proxies=proxies)if response.status_code == 200:return response.textexcept Exception:passtries += 1return Nonedef crawl(start_url):parsed_base = urlparse(start_url)base_domain = tldextract.extract(start_url).domainqueue = deque([start_url])while queue and len(visited_urls) < MAX_URLS:current_url = queue.popleft()if current_url in visited_urls:continuevisited_urls.add(current_url)html = fetch(current_url)if not html:continuesoup = BeautifulSoup(html, "html.parser")title, description = extract_meta(soup)internal_urls.append([current_url, title, description])for tag in soup.find_all("a", href=True):link = tag["href"]full_url = urljoin(current_url, link)clean_url = full_url.split("#")[0]if clean_url in visited_urls:continueparsed_url = urlparse(clean_url)if not parsed_url.scheme.startswith("http"):continueif is_internal(clean_url, base_domain):queue.append(clean_url)else:external_urls.append([clean_url])def save_to_csv(filename, rows, headers):with open(filename, mode="w", encoding="utf-8", newline="") as f:writer = csv.writer(f)writer.writerow(headers)writer.writerows(rows)# Запускif __name__ == "__main__":crawl(START_URL)save_to_csv("internal_urls.csv", internal_urls, ["URL", "Title", "Description"])save_to_csv("external_urls.csv", external_urls, ["URL"])print("The crawl is completed, data are saved in files: internal_urls.csv and external_urls.csv.")

Для тестирования работы SOCKS5-прокси можете взять код из любого другого готового парсера, который мы описывали ранее:

Посмотрите и другие мануалы в разделе с парсингом.

Прокси SOCKS5

Идеальные прокси для автоматизации и приватного веб-серфинга.

Тарифы $1.99, 100Mb

Лучшие практики для безопасного взаимодействия ботов и узлов

  1. Позаботьтесь о белых списках. Настройте SOCKS5-прокси сервер так, чтобы он принимал подключения только от доверенных IP-адресов и с парой логин+пароль (чтобы исключить доступ посторонних). Периодически проверяйте подключения на предмет подозрительной активности. Если у вы пользуетесь готовым прокси-сервисом, как Froxy, то нужно мониторить потребление трафика и периодически менять пароли для прокси-фильтров. Изучите как установить SOCKS5 прокси в документации провайдера.
  2. Шифруйте трафик. Напомним, SOCKS5-прокси не умеют шифровать данные, они только отвечают за прозрачные редиректы. Поэтому, если вы передаёте в поток чувствительную информацию, позаботьтесь о её закрытии от посторонних глаз. В интернете она передаётся всегда в открытом виде.
  3. Следите за разграничением прав и политиками доступа в команде, а также в разных ботах. Мы рекомендуем каждого отдельного парсера или бота (а ещё лучше — для каждого отдельного потока) подключать отдельный прокси-порт или фильтр. Так вы сможете лучше контролировать расход трафика и надёжно изолировать разрозненные среды. Например, если речь об антидетект-браузере, то SOCKS5-прокси нужно прописать для каждого отдельного браузерного профиля.
  4. Журналируйте всё (ведите логи). А ещё лучше — организуйте свою систему автоматизированного сбора данных об угрозах. С анализом логов и с поиском угроз на основе сигнатур могут помочь нейросети.
  5. Никогда не храните чувствительную информацию в коде скриптов. API-ключи, сертификаты шифрования, логины и пароли, параметры подключения к прокси и т.п. лучше всего хранить на уровне переменных среды или отдельно от основного кода. Особо опасная ситуация, когда ваш код хранится где-то в общем хранилище — GitHub, GitLab и пр.

Материал по теме: Гайд по успешному скрапингу без блокировок

Заключение и рекомендации

conclusion

Используйте качественные прокси! Если нет сил и желания настраивать свою инфраструктуру, всегда найдутся готовые профильные сервисы. Но и здесь тоже свои подводные камни. Если не хотите оглядываться по сторонам, выбирайте Froxy.

Мы предоставляем ротируемые резидентные, мобильные и серверные прокси. Количество параллельных портов может быть до 1000 на один аккаунт. В сети свыше 10 млн. IP, таргетинг до уровня города (200+ стран присутствия) и провайдера связи. В наличии API и простое подключение, а ротация прокси по времени или при каждом новом запросе.

Получайте уведомления о новых функциях и обновлениях Froxy

Узнайте первыми о новых функциях Froxy, чтобы оставаться в курсе событий происходящих на рынке цифровых технологий и получать новости о новых функциях Froxy.

Статьи по Теме

Почему без прокси вы тратите больше, чем думаете

Прокси

Почему без прокси вы тратите больше, чем думаете

Узнайте, как отсутствие прокси-серверов увеличивает затраты: от блокировок и потерь в скрапинге до неэффективной автоматизации. Примеры и решения...

Команда Froxy 4 июн 2025 5 мин
Как обойти блокировку IP-адреса в 2025 году

Прокси

Как обойти блокировку IP-адреса в 2025 году

Как обойти блокировку IP и легально восстановить доступ через VPN, прокси, Tor. Полезные советы по предотвращению будущих ограничений, санкций и...

Команда Froxy 9 апр 2025 8 мин