Если ваш сайт в реестре, то первым делом нужно зайти в статистику сайта и посмотреть какие самые популярные страны VPN. У популярных счетчиков как liveinternet и Мейл.ру статистика по странам ведется.
Если счетчик не стоит, поставьте внешний счетчик - он будет фиксировать только легальные заходы, ддос боты его не загружают. А внутренняя статистика только нагружает сервер и может учитывать ботов.
Далее, в Клоудфларе, заходим в раздел Firewall и затем подраздел Firewall Rules.
Создаем новое правило, затем нажимаем Edit expression и прописываем страны исключения, например.
(ip.geoip.country ne "RU" and ip.geoip.country ne "US" and ip.geoip.country ne "T1")
Данная запись означает: если IP не из России, США и не Тор, то требуется пройти каптчу.
У вас, соответственно, будет свой список стран из статистики. Тор в Клоудфларе имеет символьный код T1, а неизвестная страна XX. Введите до 10 условий, чтобы не подтормаживал сайт.
Коды возможных стран vpn для Cloudflare.
HTML:
Armenia AM
Australia AU
Austria AT
Bahamas BS
Belarus BY
Belgium BE
Bulgaria BG
Canada CA
Cyprus CY
Czech Republic CZ
Denmark DK
Dominica DM
Egypt EG
Estonia EE
Fiji FJ
Finland FI
France FR
Georgia GE
Germany DE
Greece GR
Hong Kong HK
Iceland IS
Israel IL
Italy IT
Kazakhstan KZ
Kenya KE
Korea, Republic of KR
Latvia LV
Netherlands NL
New Zealand NZ
Poland PL
Portugal PT
Puerto Rico PR
Romania RO
Russian Federation RU
Singapore SG
Ukraine UA
United Kingdom GB
United States US
TOR T1
Unknown/reserved XX
Но можно и в ручном режиме добавлять - есть подсказки.
После того, как отфильтрованы все ненужные страны, нужно поставить
ПХП-скрипт для точечной блокировки.