Введение
Прокси-пул с автоматической проверкой — это система, которая хранит список прокси, регулярно проверяет их доступность и предоставляет рабочие прокси через API.
Основная настройка
Архитектура
Компоненты прокси-пула:
1. База данных — хранение прокси (PostgreSQL, Redis)
2. Чекер — проверка доступности прокси
3. API — предоставление рабочих прокси
4. Scheduler — периодический запуск проверок
5. Web UI — мониторинг (опционально)
Модель данных
Для каждого прокси храните:
- ip, port, type (http/socks5)
- username, password
- status (alive/dead)
- latency (мс)
- country, city
- last_checked, last_alive
- fail_count
Чекер на Python
Используйте aiohttp для асинхронной проверки сотен прокси одновременно. Для каждого прокси:
1. Отправьте запрос через прокси к httpbin.org/ip
2. Замерьте время ответа
3. Проверьте, что IP совпадает с ожидаемым
4. Обновите статус в базе
Продвинутая конфигурация
Переменные окружения
Большинство инструментов поддерживают стандартные переменные окружения для прокси:
- HTTP_PROXY / http_proxy — прокси для HTTP-запросов
- HTTPS_PROXY / https_proxy — прокси для HTTPS-запросов
- NO_PROXY / no_proxy — список исключений (адресов, которые обходят прокси)
- ALL_PROXY / all_proxy — прокси для всех протоколов
SSL и самоподписанные сертификаты
Корпоративные прокси часто используют собственные SSL-сертификаты. Для работы через них нужно:
1. Получить CA-сертификат прокси у администратора
2. Добавить его в системное хранилище сертификатов
3. Или отключить проверку SSL (только для тестирования)
Аутентификация
Поддерживаются два основных метода аутентификации:
По логину и паролю — стандартная HTTP Basic аутентификация. Credentials передаются с каждым запросом. Формат URL: http://user:pass@proxy_ip:port
По IP-адресу (whitelist) — ваш IP добавляется в белый список. Не нужно передавать credentials.
Проверка работы
После настройки проверьте:
1. Выполните тестовый запрос через прокси
2. Убедитесь, что IP изменился
3. Проверьте скорость соединения
4. Убедитесь в отсутствии DNS-утечек
Устранение неполадок
Прокси не подключается
- Проверьте правильность адреса и порта
- Убедитесь, что файрвол не блокирует подключение
- Проверьте доступность прокси из вашей сети
Ошибки SSL
- Для корпоративных прокси добавьте CA-сертификат
- Для тестирования — временно отключите проверку SSL
- Обновите SSL-библиотеки до актуальной версии
Ошибки аутентификации
- Проверьте логин и пароль
- Убедитесь в правильном формате credentials
- Попробуйте закодировать спецсимволы в пароле (URL encoding)
Лучшие практики
- Используйте переменные окружения — для гибкости и безопасности
- Не хардкодьте credentials — используйте переменные окружения или файлы конфигурации
- Настройте исключения — не проксируйте localhost и внутренние адреса
- Документируйте настройки — в README проекта или wiki команды
- Тестируйте после изменений — любое изменение конфигурации требует проверки
Заключение
Правильная настройка прокси обеспечивает стабильную работу инструментов и безопасность соединений. Следуйте рекомендациям из этого руководства и всегда проверяйте работоспособность после настройки.