Ich bin beim Lesen über die BSDCan 2014 Talks wieder auf bgp-spamd.net aufmerksam geworden. Nun ist der OpenBGPd leider nicht so flexibel wie ich es gerne hätte deswegen habe ich das ganze mal mit BIRD eingerichtet. Hier die nötigen Schritte falls ich doch nicht der einzige bin mit einem Interesse an BGP Blacklists und Whitelists.
Leider benutzt FreeBSD noch immer die alte prä-4.6 Syntax für Redirects:
Die Reihenfolge der rdr Regeln ist hierbei wichtig (first match statt last match wie bei normalen Regeln). Die Verbindungsmetadaten werden auf pflog0 geleitet wo spamlogd sie mitschneiden kann um zu verhindern, dass Mailserver mit denen häufig genug kommuniziert wird wieder vom Greytrapping betroffen werden.
Code:
################################################################################
# BGP spam lists
################################################################################
define spam_asn = 65066;
define spam_source = 148.251.233.239;
define spam_destination = 64.142.121.62;
table t_spam;
filter spam_import {
bgp_community.add((my_asn, spam_asn));
accept "ok";
}
filter spam_whitelist {
if (spam_asn, 42) ~ bgp_community then {
accept "in whitelist";
} else {
reject "not in whitelist";
}
}
filter spam_blacklist {
if (spam_asn, 666) ~ bgp_community then {
accept "in blacklist";
} else {
reject "not in blacklist";
}
}
protocol bgp spam {
description "Spam black and white lists by bgp-spamd.net";
table t_spam;
local as my_asn;
source address spam_source;
neighbor spam_destination as spam_asn;
multihop 64;
export none;
import filter spam_import;
}
protocol firewall spam_white {
table t_spam;
fwtype pf;
fwtable "bgp-spamd-white";
export filter spam_whitelist;
}
protocol firewall spam_black {
table t_spam;
fwtype pf;
fwtable "bgp-spamd-black";
export filter spam_blacklist;
}
Leider benutzt FreeBSD noch immer die alte prä-4.6 Syntax für Redirects:
Code:
rdr pass log on $ext_if proto tcp from <bgp-spamd-white> to $ext_v4 port smtp -> $smtp_v4
rdr pass log on $ext_if proto tcp from <spamd-white> to $ext_v4 port smtp -> $smtp_v4
rdr pass on $ext_if proto tcp from any to $ext_v4 port smtp -> 127.0.0.1 port spamd
Zuletzt bearbeitet: