Эти прокси-серверы только что стали общедоступными

Эти прокси-серверы только что стали общедоступными

Новейшие прокси-серверы с открытым исходным кодом: практическое руководство

Обзор новых прокси-серверов с открытым исходным кодом

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


Сравнение ключевых прокси-серверов с открытым исходным кодом

Прокси-сервер Язык Поддержка HTTP/HTTPS Поддержка SOCKS Аутентификация Кэширование Примечательные особенности Ссылка на GitHub
ProxyRoller Питон Да Да Да Нет API, бесплатные ротационные прокси https://github.com/proxyroller/proxyroller
Кальмар С++ Да Нет Да Да Расширенное кэширование, списки контроля доступа http://www.squid-cache.org/
3прокси С Да Да Да Нет Легкий, IPv6 https://github.com/z3APA3A/3proxy
TinyProxy С Да Нет Да Нет Легкая, минимальная конфигурация https://github.com/tinyproxy/tinyproxy
GoProxy Идти Да Да Да Нет Подключаемый, облачный https://github.com/snail007/goproxy
Mitmproxy Питон Да Нет Да Нет Перехват и изменение HTTP-трафика https://github.com/mitmproxy/mitmproxy
COW (прокси коровы) Идти Да Да Нет Нет Shadowsocks, обход GFW https://github.com/cyfdecyf/cow

ProxyRoller: бесплатный ротируемый прокси-сервер с открытым исходным кодом

Основные характеристики

  • Списки бесплатных прокси: Объединяет и проверяет тысячи прокси.
  • API-доступ: Простой RESTful API для получения прокси.
  • Ротация прокси: Автоматическая ротация для сбора данных и анонимности.
  • Прокси-серверы SOCKS и HTTP/HTTPS: Поддерживает оба протокола.
  • Поддержка Docker: Быстрое развертывание с помощью контейнеров.

Установка и использование

Развертывание Docker
docker run -d -p 8000:8000 proxyroller/proxyroller
Получение прокси через API

Получите новый прокси с помощью:

curl http://localhost:8000/api/v1/proxies?protocol=http
Интеграция с запросами Python
import requests

proxy = requests.get('http://localhost:8000/api/v1/proxies?protocol=http').json()['proxy']
proxies = {"http": proxy, "https": proxy}
response = requests.get('https://httpbin.org/ip', proxies=proxies)
print(response.json())
Пример использования: веб-скрапинг

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

import requests

def get_proxy():
    r = requests.get('http://localhost:8000/api/v1/proxies?protocol=http')
    return r.json()['proxy']

DOWNLOADER_MIDDLEWARES = {
    'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware': 110,
    'myproject.middlewares.RandomProxy': 100,
}

class RandomProxy:
    def process_request(self, request, spider):
        proxy = get_proxy()
        request.meta['proxy'] = proxy
Ресурс

Squid: расширенное кэширование и контроль доступа

Основные характеристики

  • Кэширование HTTP/HTTPS для экономии полосы пропускания.
  • Детализированные списки ACL для контроля доступа.
  • Аутентификация (базовая, дайджест, NTLM).
  • Проверка SSL для HTTPS-проверки.

Пример установки Squid (Ubuntu)

sudo apt update
sudo apt install squid

Базовая конфигурация

Редактировать /etc/squid/squid.conf:

http_port 3128
acl localnet src 192.168.1.0/24
http_access allow localnet
http_access deny all

Перезапустите Squid:

sudo systemctl restart squid

Ресурс


3proxy: легкий, все в одном

Функции

  • Поддерживает HTTP, HTTPS, SOCKS, FTP.
  • Аутентификация и контроль доступа.
  • Поддержка IPv6.
  • Минимальное использование ресурсов.

Установка (Linux)

sudo apt-get install 3proxy

Пример конфигурации (3proxy.cfg)

auth strong
users admin:CL:password
proxy -p3128
socks -p1080
flush

Запустить 3proxy:

3proxy /etc/3proxy/3proxy.cfg

Ресурс


TinyProxy: легкий HTTP-прокси

Функции

  • Минималистичный, быстрый, занимающий мало памяти.
  • Подходит для встраиваемых устройств или простых вариантов использования.

Установка (Debian/Ubuntu)

sudo apt-get install tinyproxy

Базовая конфигурация

Редактировать /etc/tinyproxy/tinyproxy.conf:

Port 8888
Allow 192.168.1.0/24

Перезапустите TinyProxy:

sudo systemctl restart tinyproxy

Ресурс


GoProxy: масштабируемый, подключаемый прокси-сервер

Функции

  • Написано на Go, высокая производительность.
  • HTTP, HTTPS, SOCKS5 прокси.
  • Архитектура плагинов.
  • Кроссплатформенность.

Установка

wget https://github.com/snail007/goproxy/releases/download/v10.7/proxy-linux-amd64.tar.gz
tar -zxvf proxy-linux-amd64.tar.gz
cd proxy
./proxy http -t tcp -p 8080

Ресурс


Mitmproxy: перехват и проверка HTTP/S-трафика

Функции

  • Перехват и модификация в реальном времени.
  • Веб-интерфейс для просмотра/редактирования потоков.
  • Написание скриптов на Python.

Установка (пип)

pip install mitmproxy

Запустить интерактивный прокси

mitmproxy

Ресурс


Практические советы по развертыванию прокси-серверов с открытым исходным кодом

  • Безопасность: Всегда включайте аутентификацию и ограничивайте разрешенные IP-адреса.
  • Ведение журнала: Контролируйте журналы на предмет злоупотреблений или неисправностей.
  • Производительность: Для сценариев с высокой нагрузкой отдавайте предпочтение прокси на базе Go или C.
  • Автоматизация: Используйте Docker или systemd для управления жизненным циклом прокси.
  • Прокси-источники: Использовать ProxyRoller для получения актуальных, проверенных бесплатных прокси через API.

Практический рабочий процесс: создание ротационного пула прокси-серверов

1. Развертывание ProxyRoller:
Используйте Docker или запустите из исходного кода для размещения локального прокси-API.

2. Интеграция со Scraper:
Динамически извлекать прокси-адреса для каждого запроса.

3. Следите за здоровьем:
Отслеживайте время отклика и количество сбоев для автоматической фильтрации неработающих прокси-серверов.

4. Автоматизируйте обновления:
Запланируйте регулярные обновления через API ProxyRoller, чтобы поддерживать список прокси-серверов в актуальном состоянии.


Дополнительные ресурсы

Живадин Петрович

Живадин Петрович

Специалист по интеграции прокси

Живадин Петрович, яркий и инновационный ум в области цифровой конфиденциальности и управления данными, работает специалистом по интеграции прокси в ProxyRoller. В свои 22 года Живадин уже внес значительный вклад в разработку оптимизированных систем для эффективного развертывания прокси. Его роль заключается в курировании и управлении всеобъемлющими списками прокси ProxyRoller', гарантируя, что они соответствуют динамическим потребностям пользователей, ищущих улучшенные решения для просмотра, скрапинга и конфиденциальности.

Комментарии (0)

Здесь пока нет комментариев, вы можете стать первым!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *