Kendi karalistenizi kullanmak
Önceki IP Karalistesi NASIL Sonraki
Kendi karalistenizi kullanmak
Karaliste dosyasının oluşumu
Internet'te olan herhangi bir alan adı ile karışmaması için karalistemizi rbl.zzz alanı olarak tanımlayacağız. Herhangi bir metin düzenleyici içerisinde /var/lib/rbldns/rbl.zzz dosyasını oluşturalım.
Bütün DNS listeleri bir SOA "Start of Authority" - otorite başlangıcı - satırı ile başlar.
/var/lib/rbldns/rbl.zzz ilk satır:
$SOA 172800 bizimfirma.com.tr. root.bizimfirma.com.tr. 0 7200 7200 604800 3600
Dikkatinizi, bizimfirma.com.tr. root.bizimfirma.com.tr. ibaresine çekmek istiyorum. Alan adının Internet'te bulunan herhangi bir şeyle çakışmaması için rbl.zzz kullandık. Ama burada kendi gerçek alan adımızı ve ulaşılabilir bir posta adresimizi kullanıyoruz. Bundan sonra gelen tanım ise 0. Bu da önemli. Bu, dosyanın seri numarası ve DNS'in, alan dosyasında değişiklik olduğunu farketmesinin yöntemi. rbldns'e özgü bir kolaylık ile, bu tanım 0 ise, dosyanın değişme tarihini seri numarası olarak alıyor.
Bundan sonra karalisteye alacağımız numaraları tanımlayacağız. Biçem,
    karalisteli no kısa cevap : açıklama
şeklinde olacak.
/var/lib/rbldns/rbl.zzz örnek:
$SOA 172800 bizimfirma.com.tr. root.bizimfirma.com.tr. 0 7200 7200 604800 3600
195.174.102.72 :127.0.0.2: Izinsiz erisim yapan TR dinamik IP -- 2005-01-08
Karaliste dosyasını rbldns'e entegre etmek
/etc/default/rbldnsd dosyası içerisinde RBLDNSD tanımını aşağıdaki şekilde değiştirelim:
RBLDNSD="- -r/var/lib/rbldns -b127.0.0.1/530 \
-l requestlog -s statlog -f \
tr.countries.nerd.dk:ip4set:tr.countries.nerd.dk.rbldnsd \
dul.dnsbl.sorbs.net:ip4set:dul.dnsbl.sorbs.net \
rbl.zzz:ip4set:rbl.zzz \
"
rbldnsd'yi başlatalım:
# /etc/init.d/rbldnsd restart
Restarting rbldnsd: rbldnsd
rbldnsd: listening on 127.0.0.1/530
rbldnsd: ip4set:tr.countries.nerd.dk.rbldnsd: 20050126 233703:
¬ e32/24/16/8=2061/3910/46/0
rbldnsd: file dul.dnsbl.sorbs.net(3): compatibility mode: specify all NS
¬ records in ONE line
rbldnsd: ip4set:dul.dnsbl.sorbs.net: 20050126 233733:
¬ e32/24/16/8=704801/271341/1628/0
rbldnsd: ip4set:rbl.zzz: 20050129 061909: e32/24/16/8=4763/0/0/0
rbldnsd: zones reloaded, time 0.36e/0.22u sec, mem arena=408 free=60 mmap=7628 Kb
rbldnsd: rbldnsd version 0.994 (18 Dec 2004) started (1 socket(s), 3 zone(s))
Şimdi rbldns'i sorgulayalım:
$ dig +short @127.0.0.1 -p 530 72.102.174.195.rbl.zzz
127.0.0.2
$ dig +short -t txt @127.0.0.1 -p 530 72.102.174.195.rbl.zzz
"Izinsiz erisim yapan TR dinamik IP -- 2005-01-08"
DNS içinden erişim
/etc/bind/named.conf dosyası içerisinde yeni bir alan tanımı yapalım:
zone "rbl.zzz" IN {
        type forward;
        forward only;
        forwarders {
        127.0.0.1 port 530;
        };
};
Özellikle forward only; komutuna dikkat edin. Eğer DNS sunucusu bir şekilde rbldnsd ile iletişim kuramaz ise, Internet üzerinden çözümlemeye gitmeyecek. Bu alan yalnızca bize mahsus olduğundan dolayı bu şekilde çalışıyor.
DNS'i yeniden başlatın:
# /etc/init.d/bind9 restart
Stopping domain name service: named.
Starting domain name service: named.
Artık bu alan için rutin DNS sorgusu yapabiliriz:
$ dig +short 72.102.174.195.rbl.zzz
127.0.0.2
$ dig +short -t txt 72.102.174.195.rbl.zzz
"Izinsiz erisim yapan TR dinamik IP -- 2005-01-08"
Posta Sunucusunda Karalistenin Kullanılması
Bu örnek postfix posta sunucusunu ele almaktadır. Kendi posta sunucunuz için farklı ayarlar olacaktır.
Postfix 1.x sürümlerinde kendi karalistemizi kullanmak istersek; main.cf içerisinde,
maps_rbl_domains = rbl.zzz
smtpd_client_restrictions = reject_maps_rbl
değişikliğini yapın.
Postfix 2.x sürümlerinde ise biçim biraz farklı, yine main.cf içerisinde,
smtpd_client_restrictions = reject_rbl_client rbl.zzz
maps_rbl_domains ve smtpd_client_restrictions değerleri için bunların bir ekleme olduğunu unutmayın. Başka değerlerin yerine değil, ek olarak koyun. Daha fazla bilgi için Postfix Anti-UCE Cheat-Sheet adresine bakabilirsiniz.
Bu değişiklik ile birlikte, postfix posta sunucusu rbl.zzz karalistesinde bulunan IP numaralarından posta almayı reddedecektir.
SpamAssassin'e kendi karalistenizi tanımlamak
Karalisteyi, posta sunucusunda kullanıp karalisteden gelen postaları reddetmek yerine, spamassassin içerisinde, karalisteden gelen postalara not vermek şeklinde kullanmayı tercih edebilirsiniz.
Bunu yapmak için, spamassassin için kendi kuralımızı yazacağız. /etc/mail/spamassassin/local.cf içerisine şunları ekliyoruz:
header RCVD_IN_RBL_ZZZ  eval:check_rbl('rbl-notfirsthop', 'zzz.',
'127.0.0.2')
describe RCVD_IN_RBL_ZZZ        RBL_ZZZ: Yerel karaliste
tflags RCVD_IN_RBL_ZZZ  net
score RCVD_IN_RBL_ZZZ 10
Bu ayarlarla, spamassassin içinde, RCVD_IN_RBL_ZZZ adında kendi kuralımızı tanımlıyor ve bu kurala uyan durumlarda spamassassin'in 10 puan vermesini sağlıyoruz.
Yapmak istedikleriniz bitmiş olabilir
Eğer karalistenizin içeriğini nasıl oluşturacağınızı biliyor iseniz, buraya kadar işlediklerimizle bu karalisteyi sisteminizle nasıl bütünleştireceğinizi gördük. Bundan sonra, karalistelerin otomatik olarak nasıl oluşturulabileceğine bir örnek teşkil etmesi amacı ile rbl.zzz dosyasının içerisini nasıl dolduracağımızı ele alacağız.
Önceki Üst Ana Başlık Sonraki
Karaliste yansısının kurulması ve çalıştırılması Başlangıç Karaliste oluşturmak
Bir Linux Kitaplığı Sayfası