Долгий ответ сервера из-за заблоченных ip

12
I
На сайте с 17.09.2019
Offline
14
1259

Всем привет!

В одно время сайт атаковали боты, заблочил множество их ip в .htaccess путем добавления записей Require not ip. Из-за чего появилась другая проблема - долгий ответ сервера.
Есть ли какая-то альтернатива Require not ip, сильно не влияющая на скорость загрузки сайта? (сайт на Wordpress)

Devvver
На сайте с 02.07.2008
Offline
691
#1
Вы баните подсети или тысячи IP отдельно?
Мой блог. Все о создании сайтов,Seo и СДЛ ( https://e-moldovanu.com/ ) Мой SEO телеграм канал https://t.me/seobloggers
Антоний Казанский
На сайте с 12.04.2007
Offline
786
#2
ichbin :
В одно время сайт атаковали боты, заблочил множество их ip в .htaccess путем добавления записей Require not ip. Из-за чего появилась другая проблема - долгий ответ сервера.

Правильно, потому что при каждом обращении сервер считывает и обрабатывает правила .htaccess, всё это влияет на ответ сервера. 


ichbin :
Есть ли какая-то альтернатива Require not ip, сильно не влияющая на скорость загрузки сайта? (сайт на Wordpress)

Да, либо писать собственную обработку на php, либо использовать плагин в виде брэндмауэра, который блокирует IP-ники по заданным правилам. 

Реализация на php работает быстрее.

√ SEO продвижение ► https://akazansky.ru - экспертный аудит сайтов ( https://akazansky.ru/audit-sajtov ), внедрение эффективных решений цифрового маркетинга. Разговоры о SEO и не только: культурно, вежливо, доброжелательно ► https://t.me/seotusovochka
Mik Foxi
На сайте с 02.03.2011
Offline
1214
#3
Htaccess не предназначен быть большим. Он читается на каждый запрос к серверу. База + php для такого подойдет больше. Ну и банить наверное подсети а не отдельные ипы.
Антибот, антиспам, веб фаервол, защита от накрутки поведенческих: https://antibot.cloud/ (Зеркало: https://антибот.рф/ ) Форум на замену серчу: https://foxi.biz/
Kaavain
На сайте с 28.07.2015
Offline
174
#4

Т.к. htaccess - часть апача, то надо от него уходить ибо:

- апач в принципе небыстрый и 

- если перейдешь на чистый хардкор (NGINX) то он просто перестанет работать.

Почему не сделаешь все то же средствами сервера, а именно iptables? Можно сделать и через NGINX , так будет на порядок быстрее.

Могу порекомендовать только хостинг: https://traf.at/vps - за 3 года все на 4++ и цены не подняли. Ну и банк для белых ИП: https://traf.at/bankm
G6
На сайте с 12.07.2007
Offline
193
#5
Антоний Казанский #:
Реализация на php работает быстрее.

Запустить php и всё причастное, какие-то функции сайта и будет быстрее и легче? Нужны подробности, никогда не проверял.

ТС, у вас какие-то настройки самого сервера не в порядке, либо мощности приближаются к нулю или вы заблочили 10 мб IP. Блокировку по гео, с некоторыми разрешениями, плюс 1000+ cidr не самый мощный тариф шареда потянет легко и без критического замедления.

Работа с ПФ дёшево, плюс тест https://vk.cc/cReVya | Каталог каналов/чатов, ботов MAX https://max.worldwebinfo.ru
Kaavain
На сайте с 28.07.2015
Offline
174
#6
garry69 #:
Запустить php и всё причастное

По сравнению с htaccees - да. При условии что нормально настроено кеширование PHP и MySQL.

G6
На сайте с 12.07.2007
Offline
193
#7
Kaavain #:

По сравнению с htaccees - да. При условии что нормально настроено кеширование PHP и MySQL.

Вот прямо сейчас проверяю на тестовом wp, даже с учетом запуска блокировки до wp не вижу ничего легче и быстрее ( htaccees  в два раза выигрывает). Но по позже проверю под нагрузкой побольше.

Если еще подождать кеширование и мускул, будет раз в 10 выигрывать  htaccees. Он до, до и до всего стартует в данном случаи.

Мудрость Джедаев - Блокировка в .htaccess быстрее, так как её синтаксический анализ в Apache происходит быстрее, чем процесс PHP. Это связано с тем, что .htaccess выполняется раньше PHP-кодов. 

Mik Foxi
На сайте с 02.03.2011
Offline
1214
#8
garry69 #:

Вот прямо сейчас проверяю на тестовом wp, даже с учетом запуска блокировки до wp не вижу ничего легче и быстрее ( htaccees  в два раза выигрывает). Но по позже проверю под нагрузкой побольше.

Если еще подождать кеширование и мускул, будет раз в 10 выигрывать  htaccees. Он до, до и до всего стартует в данном случаи.

Мудрость Джедаев - Блокировка в .htaccess быстрее, так как её синтаксический анализ в Apache происходит быстрее, чем процесс PHP. Это связано с тем, что .htaccess выполняется раньше PHP-кодов. 

чтение htaccess стартует при запросе каждого запроса. если у вас при отдачи страницы будет десяток файлов стилей, скриптов, еще десяток картинок шаблона... вот столько же раз и будет прочитан этот файл. В среднем если размер htaccess больше 200 кб это уже плохая идея и надо что-то менять. не зависимо от того что там, баны ипов или ручное прописывание 100500 реврайтов. 

php + sqlite, с поиском вхождения ипа в диапозоны (с правильными индексами), не зависимо от количества ипов и диапозонов в базе будет мгновенно и легко. у меня так.

G6
На сайте с 12.07.2007
Offline
193
#9
Mik Foxi #:
php + sqlite, с поиском вхождения ипа в диапозоны (с правильными индексами), не зависимо от количества ипов и диапозонов в базе будет мгновенно и легко. у меня так.

Вот я как раз про индексы и задумался и все описанное вами. Список приготовлю из нескольких тысяч cidr и загружу в базу, проверю на  одном сайтике, там us трафик позволяет проверить кучу сеток.

Mik Foxi
На сайте с 02.03.2011
Offline
1214
#10
garry69 #:

Вот я как раз про индексы и задумался и все описанное вами задумался. Список приготовлю из нескольких тысяч cidr и загружу в базу, проверю на  одном сайтике, там us трафик позволяет проверить кучу сеток.

CREATE TABLE IF NOT EXISTS ipv4rules (

ip1 INTEGER NOT NULL default '', 

ip2 INTEGER NOT NULL default '', 

ban INTEGER NOT NULL default '0'

);");

// индекс:

CREATE INDEX IF NOT EXISTS ipv4range ON ipv4rules (ip1, ip2);

начальный и конечный ип подсети хранить в числовом виде.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий