спасибо, я знаю что такое ipfw, ) но как я уже писал, из-за 5 чудаков, <br>а) не хочется фильтровать сотню мегабит через 5 правил<br>б) хочется им внять дать по башке и сказать за что<br>в) хочется чтобы правило само отсохло через N времени и не заморачиваться еще и на удаление бана.<br>
<br>Спасибо, нжинксу и мемкешу - можно сделать блокировку со всеми этими бонусами.<br><br>Антон.<br><br><div class="gmail_quote">2013/1/15 Михаил Монашёв <span dir="ltr"><<a href="mailto:postmaster@softsearch.ru" target="_blank">postmaster@softsearch.ru</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Здравствуйте, Anton.<br>
<div class="im"><br>
> Ну я раздумываю сделать что-то вроде<br>
><br>
> set $memcached_key "ban_$remote_addr";<br>
><br>
> и привет.. Получится? Или это не самый простой способ сделать динамический бан с ограниченным временем жизни?<br>
<br>
</div>в ipfw есть таблицы (table) . это список подсетей или ip-шек с<br>
временем, когда они из этой таблицы пропадут. Пишется примерно такое<br>
правило:<br>
deny ip from table(1) to any in via em0<br>
блокировать все входящие ip-пакеты, идущие через em0<br>
<br>
Добавление в таблицу делается вот так:<br>
/sbin/ipfw table 1 add 1.2.3.4 1358239012<br>
где 1358239012 - время, когда ip 1.2.3.4 удалится из первой таблицы<br>
<br>
удаление срока - вот так:<br>
/sbin/ipfw table 1 delete 1.2.3.4<br>
<br>
очистка всей таблицы вот так:<br>
/sbin/ipfw table 1 flush<br>
<br>
Всё это работает очень быстро.<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
С уважением,<br>
Михаил mailto:<a href="mailto:postmaster@softsearch.ru">postmaster@softsearch.ru</a><br>
</font></span><div class="HOEnZb"><div class="h5"><br>
_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a></div></div></blockquote></div><br><br clear="all"><br>-- <br>Best regards,<br>Anton Kuznetsov.