Чекер прокси для Linux и macOS на bash с проверкой RBL
remcheck.sh проверяет список прокси в сотни потоков прямо на сервере: кто отвечает, как быстро и с какого IP выходит. Во втором режиме скрипт ещё и сверяет выходные IP с 17 спам-списками.
- bash и curl, без установки
- до 1000 потоков
- режимы connect и RBL
- бесплатно

Запуск за минуту
Ставить ничего не нужно: bash, curl и стандартные утилиты уже есть в macOS и в большинстве Linux-серверов. Скрипт проверит их при запуске и подскажет команду установки, если чего-то не хватит.
- Скачайте скрипт
Прямо на сервер, где будут работать прокси.
curl -fsSLO https://remproxy.com/ files/ remcheck.sh - Разрешите запуск
Один раз после скачивания.
chmod +x remcheck.sh - Проверьте список
Дайте ссылку на список из панели: your_proxy_id у каждой подписки свой. Файл на диске тоже подойдёт: ./remcheck.sh -f proxies.txt. Результаты появятся в новой папке рядом со скриптом.
./remcheck.sh -P socks5 -f https:// proxy.remproxy.com/ your_proxy_id.csv
Если скрипт пишет missing tools
Так бывает на минимальных образах Debian и Alpine и в Docker-контейнерах. Установите недостающее одной командой для вашей системы:
sudo apt-get update && sudo apt-get install -y curl gawk coreutils grep sedsudo dnf install -y curl gawk coreutils grep sedapk add bash curl coreutils gawk grep sedmacOS: всё уже есть, ставить ничего не нужно.
Два режима
connect: живые и быстрые
Скрипт открывает через каждый прокси страницу, которая возвращает IP, и записывает время ответа. Живые прокси попадают в alive.txt, самые быстрые сверху.
./remcheck.sh -f proxies.txt -n 200 -T 8 rbl: живые и чистые
Каждый выходной IP сверяется с 17 спам-списками через DNS over HTTPS. Для CSV из панели RemProxy скрипт берёт адреса из колонки real_ip, поэтому проверка идёт сразу, без соединений через прокси. Другие списки сначала проходят connect. Чистые прокси идут в clean.txt, найденные в списках в listed.txt.
./remcheck.sh -f proxies.txt -m rbl -n 100 Параметры
-f LIST- Список прокси: файл, ссылка http(s) или - для чтения из stdin.
-m MODE- Режим: connect (по умолчанию) или rbl.
-n NUM- Сколько прокси проверять одновременно, по умолчанию 64, максимум 1000. В режиме rbl то же число задаёт, сколько IP одновременно уходит в спам-списки: без -n это 128, максимум 256.
-T SEC- Тайм-аут на прокси в секундах, по умолчанию 10.
-P PROTO- Протокол для строк без схемы: http (по умолчанию), socks5 или socks4.
-e URL- Страница, которую скрипт открывает через прокси. Она должна отвечать IP-адресом, по умолчанию ipv4.icanhazip.com.
-d DIR- Папка для результатов, по умолчанию remcheck-ДАТА-ВРЕМЯ.
-C- Режим rbl с CSV RemProxy: всё равно подключаться через каждый прокси, а не брать IP из колонки real_ip.
-q- Без строки прогресса. Под cron она выключается сама.
Форматы списка
Скрипт понимает разные записи в одном файле, повторы и пустые строки пропускает. CSV из панели RemProxy тоже подходит.
host:port
host:port:user:pass
user:pass@host:port
socks5://user:pass@host:port
ip;port;country;speed;uptime;real_ipЧто появится в папке
alive.txtРабочие прокси, самые быстрые сверху.dead.txtПрокси, которые не ответили.results.tsvТаблица: прокси, статус, выходной IP, время в мс, в режиме rbl ещё и списки.clean.txtРежим rbl: живые прокси с чистым выходным IP.listed.txtРежим rbl: живые прокси, чей IP найден в спам-списках.
Проверка списка RemProxy
Ссылка на CSV из панели работает напрямую. В режиме rbl скрипт берёт выходные IP из колонки real_ip, проверяет каждый адрес один раз и не подключается через прокси. В работе сразу 128 адресов, 1000 IP занимают меньше минуты. В итоге видно число и процент чистых и найденных в списках прокси и адресов.
./remcheck.sh -f https://proxy.remproxy.com/your_proxy_id.csv -m rbl Держите -n не выше числа потоков в вашем пакете, иначе часть проверок упрётся в лимит и попадёт в мёртвые.
Если IP нет в белом списке
Список отдаётся только на IP из белого списка подписки. Если этой машины там нет, скрипт остановится и покажет её IP: откройте panel.remproxy.com/subscriptions, выберите подписку, в разделе «Доступ» добавьте этот IP в «Разрешённые IP» и повторите проверку. В журнале cron этот случай виден по коду выхода 3.
remcheck: the list server rejected this machine, its IP is not in the subscription whitelist.
IP of this machine: 203.0.113.7
Allowed IPs of the plan: 198.51.100.20Проверка по расписанию
Периодического режима в скрипте нет: расписание ведёт cron. Проверка запускается сама, а свежий результат всегда лежит в одной папке.
- Откройте расписание командой crontab -e.
- Добавьте строку ниже: проверка каждые 30 минут, результаты в папку remcheck-latest, журнал в remcheck.log.
- Сохраните файл. Посмотреть расписание можно командой crontab -l.
crontab -e*/30 * * * * $HOME/remcheck.sh -P socks5 -f https://proxy.remproxy.com/your_proxy_id.csv -d $HOME/remcheck-latest -q >> $HOME/remcheck.log 2>&1 В macOS cron работает так же, но к папкам Документы и Рабочий стол ему нужен полный доступ к диску. Проще держать скрипт и список в домашней папке.
Что нужно: bash 3.2 или новее, curl, awk, sed, grep, sort. В Windows скрипт работает в Git Bash или WSL, инструкция ниже.
Запуск в Windows
Своего bash в Windows нет, его приносит Git for Windows: в Git Bash есть bash, curl и нужные скрипту утилиты. Скрипт работает там без изменений.
- Установите Git for Windows с сайта git-scm.com, настройки установщика можно не менять.
- Откройте Git Bash из меню «Пуск».
- Создайте папку и скачайте в неё скрипт:
mkdir -p /c/ remcheck && cd / c/ remcheck && curl -fsSLO https:// remproxy.com/ files/ remcheck.sh - Запустите проверку. Префикс bash заменяет chmod:
bash remcheck.sh -P socks5 -f https://proxy.remproxy.com/ your_proxy_id.csv -n 100 - Результаты лежат в C:\remcheck\remcheck-ДАТА-ВРЕМЯ. В Windows процессы запускаются медленнее, чем в Linux, поэтому начните с -n 100.
Расписание в Windows
- Откройте «Планировщик заданий» и выберите «Создать простую задачу».
- Триггер «Ежедневно». Потом в свойствах задачи на вкладке «Триггеры» включите повтор каждые 30 минут.
- Действие «Запустить программу». Программа и аргументы ниже.Программа
C:\Program Files\ Git\ bin\ bash.exe Аргументы-lc "/c/ remcheck/ remcheck.sh -P socks5 -f https:// proxy.remproxy.com/ your_proxy_id.csv -d / c/ remcheck/ latest -q" - Сохраните задачу. Свежие результаты будут в C:\remcheck\latest.
Если на сервере включён WSL, запускайте скрипт в его Ubuntu так же, как в Linux.
Вопросы и ответы
01Сколько потоков ставить?
02Почему все прокси из списка RemProxy мёртвые?
03Зачем режим rbl, если прокси и так работают?
04Скрипт куда-то отправляет мои прокси?
05Как проверить SOCKS5?
Нужен пул для массовых проверок?
Пулы МИКС до 25 000 IP, безлимитный трафик, HTTP и SOCKS5 на одном порту, доступ по IP. Тестовый час стоит $1.
Смотреть пакеты
