- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Тренды маркетинга в 2024 году: мобильные продажи, углубленная аналитика и ИИ
Экспертная оценка Адмитад
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
(VDS. No ipt_LOG)
Всем добрый вечер. Помогите, пожалуйста, составить правило:
Нужно, чтобы через iptables банило айпишники, шлющие пакеты, вес которых превышает 1400 байт.
Заранее, спасибо за ответ.
iptables -I INPUT 1 -m connbytes --connbytes 1400:100000 -j DROP
но смысл? ведь пакеты размером больше mtu все равно будут фрагментированы. да и таким правилом можно самому себе доступ к серваку полностью отрубить.
неслабое отсеивание претерпит правило, мне нужно чтобы при случае когда засечет iptables этот пакет, добавлял -j DROP правило к src ip.
можно дропать на время после некоторого числа пакетов и писать в лог. и модуль connbytes лучше заменить на length:
iptables -A INPUT -m length --length 1400:10000 -m recent --set --name big_packet --rsource
iptables -A INPUT -m length --length 1400:10000 -m recent --rcheck --seconds 60 --hitcount 5 -m limit --limit 1/minute --limit-burst 1 -j LOG --log-prefix 'BIG packet'
iptables -A INPUT -m length --length 1400:10000 -m recent --rcheck --seconds 60 --hitcount 5 --name big_packet --rsource -j DROP
mklist, пишите в логи как вам уже тут посоветовали, в случае когда пакет больше 1400 , и парсите его. Но всё же можете пояснить зачем вам это, может кто-то предложит более гибкое решение если раскроете больше информации?
вариант с -m string который я вам советовал не подошел что ли?
дропать все пакеты больше определенного размера - плохая идея, мягко говоря.
хотя бы отбирайте их с помощью string match, а потому уже отсеивайте по размеру
или расскажите более детально про этот ваш DOS, мб можно отбирать кого банить просто по кол-ву пакетов на определенный порт с помощью -m recent например...
У меня вообще была идея сделать tarpit, но модуля не оказалось =) В линуксе я практически не шарю, о чем наглядно показывает эта тема.
/ru/forum/627626
Если нет tarpit - попроси своего сисадмина поставить
Просил. Результат: Купите дедикатед сервер, с ядром возиться не будем.