reason_gatherer / vpn_collector

Anonymizers активный

Сборщик бесплатных VPN-конфигураций из репозиториев GitHub, фильтрующий их по доступности TCP и качеству туннеля.


Установка
pip install -r requirements.txt
python -m vpn_collector.main --setup-tg
python -m vpn_collector.main --collect
python -m vpn_collector.main --test
pip install requests telethon
git clone https://github.com/amnezia-vpn/amneziawg-go
cd amneziawg-go && GOPROXY=https://goproxy.io,direct make && sudo cp amneziawg-go /usr/local/bin/
git clone https://github.com/amnezia-vpn/amneziawg-tools
cd amneziawg-tools && make && sudo make install
echo "$USER ALL=(ALL) NOPASSWD: /usr/local/bin/awg,/usr/local/bin/awg-quick,/usr/bin/ip,/usr/bin/curl" | sudo tee /etc/sudoers.d/awg_collector
python -m awg_collector.main --collect
python -m awg_collector.main --recheck
python -m awg_collector.main --export
python -m vpn_collector.main --full
python -m vpn_collector.main --recheck
python -m vpn_collector.main --add-source user/repo
python -m vpn_collector.main --add-source https://example.com/sub.txt
python -m vpn_collector.main --add-source t.me/channelname
python -m vpn_collector.main --sync-stars <github_username>
bash scripts/git_push_results.sh
переведено ИИ

reason_gatherer / vpn_collector

Собирает бесплатные конфигурации VPN из репозиториев GitHub, фильтрует их по доступности TCP и качеству туннеля (скорость + доступ к Claude.com), и сохраняет проверенные конфигурации в ротируемые файлы результатов.

Проверенные конфигурации (обновляются каждые 2–3 дня)

Файл Описание
known_good.txt Все проверенные конфигурации, собранные когда-либо — используйте как URL подписки
run_2026-08-07.txt Последний запуск
run_2026-08-03.txt Предыдущий запуск
run_2026-07-29.txt Более ранний запуск
run_2026-07-24.txt Более ранний запуск
run_2026-07-21.txt Более ранний запуск
recheck_2026-08-10.txt Последняя перепроверка (конфигурации повторно проверены из known_good)

Конфигурации, помеченные +++, прошли проверку доступа к Claude.com (не заблокированы из России). Конфигурации, помеченные ---, прошли тест скорости, но Claude.com был заблокирован через них.


Конфигурации AmneziaWG (для AmneziaVPN 1.0.1)

Отдельный сборщик собирает и тестирует конфигурации AmneziaWG из источников сообщества и упаковывает самые быстрые для прямого импорта в приложение Amnezia.

Файл Описание
known_good.txt Все проверенные конфигурации, собранные когда-либо — используйте как URL подписки
run_2026-08-07.txt Последний запуск
run_2026-08-03.txt Предыдущий запуск
run_2026-07-29.txt Более ранний запуск
run_2026-07-24.txt Более ранний запуск
run_2026-07-21.txt Более ранний запуск
recheck_2026-08-10.txt Последняя перепроверка (конфигурации повторно проверены из known_good)

Импорт: Приложение Amnezia → Добавить VPN → Из файла → all_configs.zip

Каждая конфигурация протестирована в реальном туннеле (рукопожатие подтверждено + скорость ≥ 1 Mbit/s). Полный пул проверенных конфигураций (results_awg/known_good/) содержит все прошедшие конфигурации; архив перестраивается, чтобы включать только 50 самых быстрых после каждого запуска.

Источники: Telegram @amnezia_wg, @vpnconfigsgive, Delta-Kronecker/WARP-Config.

Зависимости:

Зависимость Назначение
requests HTTP-запросы конфигураций и ZIP-архивов
telethon Парсинг Telegram-каналов (опционально — пропускается, если отсутствует)
amneziawg-go Демоны AWG в пространстве пользователя для тестирования туннеля (бинарный, не pip)
awg, awg-quick Инструменты CLI AWG — часть amneziawg-tools
# Python deps (already in requirements.txt)
pip install requests telethon

# amneziawg-go — build from source (requires Go 1.25+)
git clone https://github.com/amnezia-vpn/amneziawg-go
cd amneziawg-go && GOPROXY=https://goproxy.io,direct make && sudo cp amneziawg-go /usr/local/bin/

# awg / awg-quick — build from source
git clone https://github.com/amnezia-vpn/amneziawg-tools
cd amneziawg-tools && make && sudo make install

# Allow awg-quick to run without password (required for tunnel testing)
echo "$USER ALL=(ALL) NOPASSWD: /usr/local/bin/awg,/usr/local/bin/awg-quick,/usr/bin/ip,/usr/bin/curl" \

  | sudo tee /etc/sudoers.d/awg_collector
# Fetch + test all sources, update known_good pool
python -m awg_collector.main --collect

# Re-verify existing pool, remove dead configs
python -m awg_collector.main --recheck

# Rebuild archive from current pool (top 50 by speed)
python -m awg_collector.main --export

# Stats
python -m awg_collector.main --stats

Как это работает

GitHub repos / raw URLs / Telegram channels
        ↓
  sync_stars + fetch_all_configs   — auto-syncs starred repos, deduplicates
        ↓
   TCP pre-filter                  — async TCP check per unique host:port
        ↓
   candidates.txt                  — checkpoint: survives interruption
        ↓
  sing-box tunnel test             — real tunnel: speedtest ≥ 1 Mbit/s + Claude.com check
        ↓
  known_good.txt                   — permanent log of all verified configs
  run_YYYY-MM-DD.txt               — dated run file (last 5 kept)

Требования

  • Python 3.10+
  • Бинарный файл sing-box (автоматически обнаруживается из общих путей установки)
pip install -r requirements.txt

Использование

# Full run: fetch → TCP filter → tunnel test
python -m vpn_collector.main --full

# Step by step:
python -m vpn_collector.main --collect        # fetch and TCP-filter → candidates.txt
python -m vpn_collector.main --test           # tunnel-test candidates.txt → known_good.txt

# Quick run on a random subset
python -m vpn_collector.main --collect --sample 30000
python -m vpn_collector.main --full    --sample 50000

# Re-verify existing known_good configs (check if still alive)
python -m vpn_collector.main --recheck        # → recheck_YYYY-MM-DD.txt (known_good untouched)

# Manage sources
python -m vpn_collector.main --add-source user/repo          # add GitHub repo
python -m vpn_collector.main --add-source https://example.com/sub.txt  # add raw URL
python -m vpn_collector.main --add-source t.me/channelname   # add Telegram channel
python -m vpn_collector.main --sync-stars <github_username>  # manually sync starred repos

# Telegram setup (one-time, requires api_id + api_hash from my.telegram.org)
python -m vpn_collector.main --setup-tg

# Stats
python -m vpn_collector.main --stats

Вывод

results/
├── known_good.txt           # all verified configs ever found (never deleted)
├── run_YYYY-MM-DD.txt       # up to 5 dated run files (oldest auto-deleted)
├── recheck_YYYY-MM-DD.txt   # on-demand recheck results from known_good
├── candidates.txt           # TCP-passed queue (intermediate, not tracked in git)
└── tcp_cache.txt            # TCP-verified host:ports cache (not tracked in git)

known_good.txt никогда не перезаписывается. Вставьте сырой URL в Throne / Hiddify как источник подписки.

Источники Telegram

Telegram-каналы являются дополнительным источником конфигураций.

Разовая настройка:

pip install telethon>=1.36
python -m vpn_collector.main --setup-tg   # logs in via phone + SMS code

Учетные данные хранятся в ~/.config/vpn_collector/tg_auth.json (режим 600) и сессия в ~/.config/vpn_collector/tg.session — никогда внутри репозитория.

Добавление каналов:

python -m vpn_collector.main --add-source t.me/channelname

Принимаемые форматы: t.me/name, t.me/s/name, https://t.me/name. Последние 50 постов на канал сканируются на наличие VPN-конфигов при каждом запуске --collect.

Если Telethon не установлен или настройка не была запущена, --collect продолжает работу нормально без TG — без сбоев.

За прокси: Telethon читает переменные окружения ALL_PROXY / HTTPS_PROXY автоматически (socks5://, socks4://, http://). Если ваш Throne/sing-box прокси не находится в окружении, предваряйте команду: ALL_PROXY=socks5://127.0.0.1:<port> python -m vpn_collector.main --setup-tg

Конфигурация

Все настраиваемые параметры находятся в vpn_collector/config.py:

Параметр Значение по умолчанию Описание
TCP_CONCURRENCY 100 Параллельные TCP-проверки
TCP_TIMEOUT 4.0с Таймаут TCP-соединения
TCP_BATCH_SIZE 5000 Конфиги на контрольную точку пакета
TUNNEL_CONCURRENCY 20 Параллельные тесты туннеля sing-box
MIN_SPEED_MBPS 1.0 Минимально допустимая скорость туннеля
SINGBOX_STARTUP_TIMEOUT 3.0с Максимальное время ожидания порта SOCKS sing-box
SPEEDTEST_EARLY_ABORT_AFTER 4.0с Раннее прерывание теста скорости после указанного количества секунд
SPEEDTEST_EARLY_ABORT_FACTOR 0.5 Прерывание, если скорость < коэффициент × MIN_SPEED_MBPS

Автоматическая отправка

Результаты автоматически отправляются в этот репозиторий каждые 2 дня через cron:

# Manually trigger push
bash scripts/git_push_results.sh

Журналы

logs/vpn_collector.log   # main log
logs/autopush.log        # auto-push cron log
Войдите, чтобы оставить комментарий