Чекер проксі для Linux і macOS на bash з перевіркою RBL і сайтів

remcheck.sh перевіряє список проксі в сотні потоків просто на сервері: хто відповідає, як швидко і з якого IP виходить. Ще два режими звіряють вихідні IP із 17 спам-списками і рахують, скільки проксі пропускають Google, LinkedIn, Avito та інші сайти.

  • bash і curl, без встановлення
  • до 1000 потоків
  • режими connect, rbl і target
  • безкоштовно

Версія 1.3 · 39.8 КБSHA-256 dfb2def4382911ca54702a96d0601d8ffee84dfe23e2b89d81911a8d6778210c

Термінал перевіряє сотні проксі: зелені й червоні індикатори пов’язані з вузлами мережі

Запуск за хвилину

Встановлювати нічого не потрібно: bash, curl і стандартні утиліти вже є в macOS і в більшості Linux-серверів. Скрипт перевірить їх під час запуску й підкаже команду встановлення, якщо чогось бракуватиме.

  1. Завантажте скрипт

    Просто на сервер, де працюватимуть проксі.

    curl -fsSLO https://remproxy.com/files/remcheck.sh
  2. Дозвольте запуск

    Один раз після завантаження.

    chmod +x remcheck.sh
  3. Перевірте список

    Вкажіть ID підписки з панелі, your_proxy_id у кожної підписки свій. Результати з’являться в новій папці поруч зі скриптом.

    ./remcheck.sh -P socks5 -f your_proxy_id
Якщо скрипт пише missing tools

Так буває на мінімальних образах Debian і Alpine та в Docker-контейнерах. Встановіть те, чого бракує, однією командою для вашої системи:

Debian / Ubuntu
sudo apt-get update && sudo apt-get install -y curl gawk coreutils grep sed
CentOS / Rocky / Alma / Fedora
sudo dnf install -y curl gawk coreutils grep sed
Alpine
apk add bash curl coreutils gawk grep sed

macOS: усе вже є, встановлювати нічого не потрібно.

Три режими

connect: живі та швидкі

Скрипт відкриває через кожен проксі сторінку, яка повертає IP, і записує час відповіді. Живі проксі потрапляють в alive.txt, найшвидші вгорі.

./remcheck.sh -n 200 -T 8 -f your_proxy_id

rbl: живі та чисті

Кожен вихідний IP звіряється з 17 спам-списками через DNS over HTTPS. Для підписки RemProxy скрипт бере адреси з колонки real_ip, тож перевірка йде одразу, без з’єднань через проксі. Інші списки спершу проходять connect. Чисті проксі йдуть у clean.txt, знайдені в списках у listed.txt.

./remcheck.sh -m rbl -n 100 -f your_proxy_id

target: скільки проксі пропускає сайт

Скрипт відкриває через кожен проксі Google, LinkedIn, Avito та ще 13 сервісів або вашу адресу із заголовками браузера. Відповіді діляться на робочі, капчу, антибот, блокування й ліміти. Спершу кожен сайт відкривається з самої машини без проксі: якщо сайт ріже і її, він перевіряє програму, а не IP. Робочі проксі для кожного сайту потрапляють в ok-сайт.txt.

./remcheck.sh -m target -t google,linkedin,avito -S 300 -f your_proxy_id

Параметри

-f LIST
Список проксі: ID підписки RemProxy або посилання на список. Підійде й файл. Щоб передати список через конвеєр, вкажіть -f -, наприклад: cat list.txt | ./remcheck.sh -f -
-m MODE
Режим: connect (за замовчуванням), rbl або target.
-t LIST
Режим target: сервіси й адреси через кому, наприклад -t google,linkedin,shop=https://site.ua/, або -t all для всіх 16.
-k TEXT
Режим target: сторінка вашої адреси вважається робочою, лише якщо в ній є цей текст.
-S NUM
Режими connect і target: перевірити випадкову вибірку з NUM проксі.
-n NUM
Скільки проксі перевіряти одночасно, за замовчуванням 64, максимум 1000. У режимі rbl те саме число задає, скільки IP одночасно йде в спам-списки: без -n це 128, максимум 256.
-T SEC-Timeout SEC
Тайм-аут на проксі в секундах, за замовчуванням 10. Ключ -Timeout SEC теж працює, як у версії для Windows.
-r NUM
Спроби на проксі в режимі connect, за замовчуванням 2, максимум 5. Наступна спроба йде на іншу сторінку перевірки.
-P PROTO
Протокол для рядків без схеми: http (за замовчуванням), socks5 або socks4.
-e URLS
Сторінки, що повертають IP, через кому. За замовчуванням п’ять: icanhazip, ipify, Amazon checkip, ifconfig.me та ipinfo.
-d DIR
Папка для результатів, за замовчуванням remcheck-ДАТА-ЧАС.
-C
Режим rbl з підпискою 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Таблиця: рядок на проксі, у режимі target на проксі й сервіс, з причиною кожної відповіді.
  • clean.txtРежим rbl: живі проксі з чистим вихідним IP.
  • listed.txtРежим rbl: живі проксі, чий IP знайдено в спам-списках.
  • ok-NAME.txtРежим target: проксі, які відкрили сервіс, найшвидші зверху.
  • summary.txtРежим target: підсумкова таблиця за сервісами.

Перевірка списку RemProxy

Досить ID підписки, CSV-список скрипт завантажить сам. У режимі rbl скрипт бере вихідні IP з колонки real_ip і не підключається через проксі. Кожен рядок списку перевіряється окремо, по 128 одразу, 1000 проксі займають менше хвилини. У підсумку видно кількість і відсоток чистих і знайдених у списках проксі.

./remcheck.sh -m rbl -f your_proxy_id

Тримайте -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
Дізнатися IP цієї машини

Перевірка за розкладом

Періодичного режиму в скрипті немає: розклад веде cron. Перевірка запускається сама, а свіжий результат завжди лежить в одній папці.

  • Відкрийте розклад командою crontab -e.
  • Додайте рядок нижче: перевірка кожні 30 хвилин, результати в папку remcheck-latest, журнал у remcheck.log.
  • Збережіть файл. Переглянути розклад можна командою crontab -l.
crontab -e
*/30 * * * * $HOME/remcheck.sh -P socks5 -f your_proxy_id -d $HOME/remcheck-latest -q >> $HOME/remcheck.log 2>&1

У macOS cron працює так само, але до папок Документи й Робочий стіл йому потрібен повний доступ до диска. Простіше тримати скрипт і список у домашній папці.

Що потрібно: bash 3.2 або новіший, curl, awk, sed, grep, sort.

Запуск у Windows

Для Windows є окрема версія на PowerShell: ті самі режими й параметри, без Git Bash і WSL, розклад через Планувальник завдань.

Чекер проксі для Windows

Питання та відповіді

01Скільки потоків ставити?
Серверу з каналом 100 Мбіт/с вистачає 100–300. Кожна перевірка це один короткий запит, тому темп частіше обмежують тайм-аути, а не канал. Для списку RemProxy не перевищуйте кількість потоків пакета.
02Чому всі проксі зі списку RemProxy мертві?
Якщо список завантажується за ID підписки, скрипт сам розпізнає відмову й покаже IP машини: додайте його до «Дозволені IP» підписки. Якщо ви перевіряєте файл, запустіть скрипт на машині з білого списку. Її IP видно на сторінці «Мій IP» або за командою curl -4 ifconfig.me.
03Навіщо режим rbl, якщо проксі й так працюють?
Поштові сервери й частина сайтів відмовляють адресам зі спам-списків. Режим rbl відокремлює такі виходи, щоб задачі, де важлива репутація, йшли тільки через чисті IP.
04Скрипт кудись надсилає мої проксі?
Ні. У режимі connect через кожен проксі йде запит до однієї з п’яти сторінок, що повертають IP: icanhazip, ipify, Amazon checkip, ifconfig.me або ipinfo. У режимі rbl скрипт питає про вихідні IP DNS Google і Cloudflare, у режимі target відкриває лише сайти з -t. Результати залишаються в папці на вашій машині.
05Як перевірити SOCKS5?
Вкажіть схему в рядку, наприклад socks5://host:port, або додайте -P socks5 для всього списку. Порти RemProxy приймають і HTTP, і SOCKS5.
06Чому Ozon, Wildberries і Яндекс у режимі target дають 0%?
Ці сайти перевіряють, що запит прийшов зі справжнього браузера, і відповідають перевіркою або капчею будь-якій програмі, навіть із чистого IP. Скрипт бачить це за контрольним запитом без проксі в колонці direct і пише примітку під таблицею. Такі сайти перевіряйте в браузері або антидетекті.

Потрібен пул для масових перевірок?

Пули МІКС до 25 000 IP, безлімітний трафік, HTTP і SOCKS5 на одному порту, доступ за IP. Тестова година коштує $1.

Дивитися пакети
ВХІД/РЕЄСТРАЦІЯ