Ниже описано как в разрыв между внешним миром и локальной сетью поставить машину на базе OpenBSD,
на которой будет в прозрачном режиме отсеиваться спам через spamd.fxp2 - внешний интерфейс
fxp0 - интерфейс локальной сетиПоднимаем бридж:
ifconfig fxp0 up
ifconfig fxp2 inet 172.16.5.111 netmask 255.255.255.0 up
route add default 172.16.5.1
ifconfig bridge0 create
brconfig bridge0 add fxp0 add fxp2 upПроверяем включен ли форвадинг пакетов между интерфейсами и загружаем правила пакетного фильтра pf:
sysctl net.inet.ip.forwarding=1
pfctl -ef /etc/pf.confгде /etc/pf.conf:
ext_if="fxp2"
table <spamd> persist
table <spamd-white> persistrdr on $ext_if inet proto tcp from <spamd> to port smtp \
-> 127.0.0.1 port spamd
rdr on $ext_if inet proto tcp from !<spamd-white> to port smtp \
-> 127.0.0.1 port spamd# "log" so you can watch the connections getting trapped
pass in log on $ext_if route-to lo0 inet proto tcp to 127.0.0.1 port spamd
URL: http://undeadly.org/cgi?action=article&sid=20061108134508
Обсуждается: http://www.opennet.me/tips/info/1331.shtml
Товаритсч рекламирует spamd ?
Однако, ежели "в разрыв между внешним миром и локальной сетью поставить машину", то простите, тут кучу чего можно фильтровать, а нелько спам.
Лучше будет, если школьники 2-го курса местного института будут вовремя зачеты давать
А на pf под фрей - оно еще и не работает.:)
почему у меня pf работает а у тебя не работает?
Да, статья больше теоретическая чем практическая, но это не значит что она не пригодится. Можно таким способом, например, следить чтобы народ спам не рассылал(следить за кол-вом smtp-соединений в час, на серверах актуально).