Jump to content

Recommended Posts

Posted

Сайт клиента работает через Cloudflare, временами набегают DDOS-еры, просят денег, проводят атаку на пару дней-часов, и уходят.

Хочу сделать белый список постоянных клиентов, добавить их всех в whitelist Cloudflare ( меню Firewall, вкладка Tools).

У сайта есть постоянное комюнити, около 20к авторизованых участников которые за последний месяц хотя бы дважды заходили на сайт, вот их я и планирую добавить в белый список.

Чтоб при жестком ддосе просто отрубать все остальные ip в админке Cloudflare (меню Firewall, вкладка Firewall rules).

 

20к ip конечно хочется добавить как то оптом, но вот формы куда их можно просто скопировать нет.

На вкладке Tools можно только по одному ip добавлять, зато можно 50к записей судя по документации.

На вкладке Firewall rules другой интерфейс, можно добавить сразу несколько ip в правило, но не слишком много, лимит на 4кб текста, 200ip пролазит 300 уже нет, всего можно 5 правил, и одно из них мне нужно под "Deny All".

 

Понятно, что надо добавлять все 20к через api в "IP Access Rule" ( то что там добавил видно в меню Firewall, вкладка Tools)

Ключь нашел в профиле, Account ID на вкладке Overview.

Тестовый ip запостил, работает.

 

Комюнити плотное, но ip меняются потихоньку, а доступно всего 50к записей на бесплатном акке.

Значит ip надо уметь удалять.

Массового удаления в api не нашел.

Можно получить полный список, взять оттуда ID и поодному удалять.

Ну и все сразу вытянуть не получится думаю, уж сильно много текста на 20к это займет в json

По чуть чуть вытянул удалил. И как то очень медленно это api работает.

 

Другой вариант, при постинге Ip в белый список ловить ответ в json, и сохранять себе в базу

ip:id

И когда ip стал не актуален удалять его по id, так выйдет меньше движений с тормозным api.

Но тут уже я вижу что собираюсь какой то небольшой софт писать, а не просто засунуть список ip.

 

Вроде бы задача подобная моей не что то сверх редкое, вот думаю спрошу, может есть готовое решение?

 

Posted

С внешним не очень производительным или функциональным сервисом хорошим решением будет локальный кеш.

На сервере или админской машине заводите базу данных, все добавления/удаления делаете через БД с последующим запросом API, и время от времени очищаете кеш и заполняете его через API.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.