Страница 1 из 1
PF/IPFW и таблицы
Добавлено: 2008-11-13 13:20:54
kapa6ac
Доброго дня.
Ситуевина такова за роутером находится почтовик. Не хотелось чтобы спамовские хосты соединялись с почтовиком.
На роутере качнул файло со списком ИПов спамеров (~20 мегов). Хотел запихнуть в таблицу ipfw машина ушла в рестарт.
Поставил PF попробывал ему в таблицу запихать в ответ получил:
Код: Выделить всё
pfctl -f /etc/pf.conf
/etc/pf.conf:84: cannot define table spam: Cannot allocate memory
Подскажите как быть? Уж больно не хочется пропускать самеров.
Re: PF/IPFW и таблицы
Добавлено: 2008-11-13 13:40:49
paradox
покажите правило в pf которое грузит таблицу
и покажите
сколько их у вас там
10 мегабайт что ли
Re: PF/IPFW и таблицы
Добавлено: 2008-11-13 13:49:38
kapa6ac
Код: Выделить всё
table <spam> persist file "/etc/block.txt"
block on fxp1 from <spam> to any port smtp
paradox писал(а):сколько их у вас там
10 мегабайт что ли
IPов? На 20 мегов.
Re: PF/IPFW и таблицы
Добавлено: 2008-11-13 13:55:19
paradox
отсортируйте и позакрывайте по сетям
а то и целыми автономками
Re: PF/IPFW и таблицы
Добавлено: 2008-11-13 13:57:19
paradox
пожалей фаревол
хоть он и казенный
но не всеже ресурсы роутера пускать на search spam table
)))
Re: PF/IPFW и таблицы
Добавлено: 2008-11-13 14:05:42
kapa6ac
paradox писал(а):отсортируйте и позакрывайте по сетям
а то и целыми автономками
Ручками? 20 мегов? Глаз же выпадет!
Нет вариантов?
Re: PF/IPFW и таблицы
Добавлено: 2008-11-13 14:14:15
paradox
про ручки вы сами сказали)))
а вообще юникс для того и юникс что есть куча сопуствующий утилит для этого
Re: PF/IPFW и таблицы
Добавлено: 2008-11-13 16:53:45
kapa6ac
Почикал файлик по сеткам получился 5 мегов. Один черт PF выдает
Код: Выделить всё
pfctl -f /etc/pf.conf
/etc/pf.conf:84: cannot define table spam: Cannot allocate memory

Re: PF/IPFW и таблицы
Добавлено: 2008-11-13 17:02:40
paradox
оставь в файле один айпишник
загрузит или нет?
Re: PF/IPFW и таблицы
Добавлено: 2008-11-13 17:42:26
kapa6ac
Так-то оно грузит. Чую где-то какие-то ограничения есть у PF. Вот тока где и какие?
Re: PF/IPFW и таблицы
Добавлено: 2008-11-13 17:48:45
kapa6ac
Никада не любил PF ))
В IPFW таблицу запихнулось с пол тычка.
80% спамеров отсыпаются еще на подлете.
З.Ы. Вот скриптик для "упрощения" списка спамеров:
Код: Выделить всё
#! /bin/sh
cat /dev/null > $2
less $1 | cut -d . -f 1-3 | sort -u | while read XX
do
echo $XX.0/24 >> $2
done
Re: PF/IPFW и таблицы
Добавлено: 2008-11-13 17:55:05
paradox
если
ничего не найдешь
значит никак
это системный пул
грузить в ядро 10метров адресов никто небудет
бань по целым сетям /8
Re: PF/IPFW и таблицы
Добавлено: 2008-11-13 19:00:49
kapa6ac
paradox писал(а):
бань по целым сетям /8
Гы! Пробывал байда получается, там и моя сетка попадается и маил.ру и яндекс...
Re: PF/IPFW и таблицы
Добавлено: 2008-11-13 19:19:03
paradox
тьфу ты
я ж не дословно имел ввиду
я имел ввиду если там 200 айпишников из китя то смотришь по whois автономку и банишь всю автономку
итд
Re: PF/IPFW и таблицы
Добавлено: 2008-11-14 13:24:56
kapa6ac
Вот может кому пригодится парочка скриптов.
/etc/nospam_to_ipfw
Код: Выделить всё
#! /bin/sh
rsync rsync://rsync.cbl.abuseat.org/cbl/list.txt /etc/t/file
cp /etc/t/file /etc/block.txt
cat /etc/block.txt | sed '1,2d' >> /etc/block1.txt
mv /etc/block1.txt /etc/block.txt
/etc/conv_tab.sh /etc/block.txt /etc/spam.txt
/etc/tab_load.sh
/etc/rc.d/ipfw restart
/etc/conv_tab.sh
Код: Выделить всё
#! /bin/sh
cat /dev/null > /etc/spam.txt
less $1 | cut -d . -f 1-3 | sort -u | while read XX
do
echo $XX.0/24 >> $2
done
/etc/tab_load.sh
Код: Выделить всё
ipfw table 1 flush
cat /etc/spam.txt | while read ip; do
# echo ipfw table 1 add $ip
ipfw table 1 add $ip
done
Сразу хочу оговориться. Таким макаром у меня в таблицу попали несколько моих филиалов, так что будьте аккуратнее.
Re: PF/IPFW и таблицы
Добавлено: 2009-11-21 18:33:05
Neuromancer
тема старая, но по запросу в ру-гугле "pf Cannot allocate memory" вторая ссылка на эту ветку, а решения в ней нет. удручающе выглядят советы как обойти проблему вместо её решения.
вот что я в итоге нашёл. это сообщение выдаётся только когда перезагружаешь конфиг pf.conf
если перед этим очистить таблицы и занести их снова, то всё работает без проблем. испытано на списках ок.270 тыс. записей.
Код: Выделить всё
# pfctl -t spammers -T flush
# cat /root/spammers | xargs pfctl -t spammers -T add
ещё совет для тех, кто использует блокировку спаммеров по списку ip и блокам адресов.
составляйте список разрешённых ip-ов. так как часто бывает, что чей-нибудь корпоративный mx располагается в середине пула динамических адресов провайдера.
Re: PF/IPFW и таблицы
Добавлено: 2009-11-26 22:31:43
neyro
Ипользовать днс блеклисты или сделать свой блеклист на основе этих ипов религия не позволяет(простейший вариант-запихнуть их в mysql базу....хоть 10 гигов - все будет летать) ? Зачем заниматься садомазахизмом и пихать 20мб записей в PF ? Вам его не жалко ? (мне к примеру жалко юзеров которые будут сидеть за Вашим роутером).
п.с. изобретать велосипед в 2009 году по меньшей мере глупо, и особенно писать такие вещи на этом форуме, после 1000000000 статей\обсуждений на тему спама, почтовиков и т.д.
Re: PF/IPFW и таблицы
Добавлено: 2009-11-27 18:23:09
Neuromancer
в этом топике был задан вопрос, на который не был дан ответ. я его нашёл и поделился своим опытом. вопрос о том как строить систему фильтрации по спискам ip не задавался. хотел помочь начинающим админам, которые в поисках ответа неизбежно зайдут в эту ветку. пока откликнулся типичный "для всех бочек затычка". что ж бывает и так. ну а если вам так не терпится высказаться, то расскажите про свой велосипед или вы умеете только на rtfm посылать?
зы иногда бывает полезно разобраться в устройстве велосипеда.
Re: PF/IPFW и таблицы
Добавлено: 2009-11-27 19:21:52
neyro
В любой из статей на этом сайте связанными с exim, есть фильтрация по ип адресам.
п.с. иногда бывает полезно перед тем как постить хотя бы сделать вид, что пытались пользоваться поиском(на форуме....про гугл просто молчу).
Re: PF/IPFW и таблицы
Добавлено: 2009-11-27 21:13:11
Neuromancer
плохой вы однако знаток велосипедов

допустим я поставил себе задачу собрать прозрачный мост и фильтровать соединения по списку ip хостов/подсетей (Ю.Корея, Китай, Бразилия и т.д.). и воткнуть этот мост в разрыв "почтовый сервер - LAN". при чем тут, позвольте спросить, EXIM? решение вообще не зависит от типа сервера и установленной на нём ОС. или по вашему глупо в XXI веке блокировать спамерские хосты до того как они доберутся до сервера? или вы любите нагружать свой сервер? сейчас у меня сервер фильтрует спам, но вот решил проверить как сработает идея превентивной блокировки. заодно можно трафик считать с помощью ng_ipaccnt (настроил с помощью статьи на этом сайте)
кстати может подскажете, есть проблема в этой схеме. правила pf самые простые пропускать всё кроме 1) пускать всех (pass quick) кто входит в белый список и 2) блокировать всех (block quick) кто в чёрном списке. так вот, сперва всё идёт хорошо, но потом сервер перестаёт отправлять почту. я так понимаю какой-то из ресурсов pf переполняется. SMTP-сессия начинается (определяется ip сервера получателя), а дальше обрыв по тайм-ауту. таблица states вроде не переполняется. пока не знаю куда копать дальше...
зы. а я думал вы флеймить начнёте

---
кстати, поздравляю всех с выходом 8-ки!
---
хотя нет, отсылка на поиск по сайту похоже на повадки флеймера. так же как и отправки читать маны. жаль.
Re: PF/IPFW и таблицы
Добавлено: 2009-11-27 22:14:06
neyro
Ну естественно, лучше пропускать весь траффик через отдельный сервак, на котором фильтр будет 10-30 мегов ип адресов перебирать при каждом коннекте. Комментировать этот бред более не собираюсь
п.с. 3 первые ссылки из гугла:
http://www.webhostingtalk.com/showthread.php?t=295983
http://opennet.ru/openforum/vsluhforumID1/87300.html
http://forum.ru-board.com/topic.cgi?for ... &start=320
3 первые ссылки их раздела статьи со словом exim на этом сайте:
http://www.lissyara.su/articles/freebsd ... tfixadmin/
http://www.lissyara.su/articles/freebsd ... rier-imap/
http://www.lissyara.su/articles/freebsd ... rier-imap/
В каждой из них есть то, что нужно в том числе как это сделать через базу mysql.
Re: PF/IPFW и таблицы
Добавлено: 2009-11-27 22:47:31
Neuromancer
neyro покинул этот топик, братья, аминь. к сожалению он так и не понял, что все его сообщения являлись собственно оффтопик, так как не имеют ничего общего с темой обсуждения "PF/IPFW и таблицы". засим и сам прекращаю флейм. у кого будут идеи насчёт означенной выше проблемы с ресурсами pf прошу писать сюда или в личку. может кому-то задача кажется глупой или умозрительной... но если есть старый пень-3 и пара сетевых карт, почему бы не попробовать пользы ради и накопления опыта для?

собственно спрашивать на форуме не собирался, но раз пошла такая пьянка..

всем спасибо, извините за большей частью бессодержательное пополнение треда.
Re: PF/IPFW и таблицы
Добавлено: 2010-05-29 13:49:36
sere9a
На всех форумах советуют увеличить table-entries hard limit ... Но это не помогает, загружаются правила только после полного сброса таблиц... но это, мягко говоря, не удобно
