Блокирующие серверы TOR

Мне нужен скрипт, который блокирует TOR servers в php … Мне нужно получить список серверов и заблокировать их.

Или любое решение для установки на сервер (centos).

    Более подробная информация о TorDNSEL https://www.torproject.org/projects/tordnsel.html.en и том, как структурировать запрос.

    Ниже приведена функция, которую я нашел в сети, которая может выполнять динамические проверки.

    ( https://check.torproject.org/ должен использовать что-то похожее на это).

    Я не уверен в производительности при более интенсивном трафике.

     function IsTorExitPoint(){ if (gethostbyname(ReverseIPOctets($_SERVER['REMOTE_ADDR']).".".$_SERVER['SERVER_PORT'].".".ReverseIPOctets($_SERVER['SERVER_ADDR']).".ip-port.exitlist.torproject.org")=="127.0.0.2") { return true; } else { return false; } } function ReverseIPOctets($inputip){ $ipoc = explode(".",$inputip); return $ipoc[3].".".$ipoc[2].".".$ipoc[1].".".$ipoc[0]; } 

    Вам нужно проверить, находится ли ip пользователя в узле выхода TOR DNSBL. Использование статических списков узлов выхода не будет хорошей идеей, так как узлы время от времени появляются / исчезают, и вы, вероятно, не захотите регулярно обновлять список.

    Существуют различные черные списки, один из них – EFNET RBL . Обратите внимание, что он также разрешает некоторые другие IP-адреса, которые в некоторых случаях могут считаться нежелательными – если вы просто хотите, чтобы TOR не учитывал эти другие результаты.

    Если необходимо заблокировать идентификатор пользователя TOR, выполните следующие действия:

     ipset -N tor iphash 

    получить список узлов выхода Tor, которые могут получить доступ к $YOUR_IP , пропустить комментарии и прочитать строки за строкой

     wget ipset -q -A tor $IP done 

    отфильтровать наш новый набор в фильтре itables

     iptables -A INPUT -m set --match-set tor src -j DROP. 

    Здесь ( https://github.com/RD17/DeTor ) – простой API REST, чтобы определить, был ли запрос сделан из сети TOR или нет. Я думаю, будет довольно просто использовать его с PHP

    Запрос: curl -X GET http://detor.ambar.cloud/ .

    Ответ: { "sourceIp": "104.200.20.46", "destIp": "89.207.89.82", "destPort": "8080", "found": true }

    В качестве бонуса вы можете добавить значок на свой сайт, чтобы определить, поступает ли пользователь из TOR или нет:

    <img src='http://detor.ambar.cloud/badge' />