Blogchevron_rightSunucu Yönetimichevron_rightSunucu Seviyesinde Anti-Spam Filtreleri: SpamAssassin Yapılandırması

Sunucu Seviyesinde Anti-Spam Filtreleri: SpamAssassin Yapılandırması

S
Serversium
calendar_today9 Mayıs 2026
schedule5 dk okuma
Sunucu Seviyesinde Anti-Spam Filtreleri: SpamAssassin Yapılandırması

Sunucu Seviyesinde Anti-Spam Filtreleri: SpamAssassin Yapılandırması

Spam e-postalar, işletmelerin yılda ortalama 12.5 milyar dolar kayıp yaşamasına neden olmaktadır (Radical Fix Güvenlik Raporu, 2024). Sunucu seviyesinde etkili bir spam filtresi kullanmak, hem güvenlik hem de performans açısından kritik öneme sahiptir. SpamAssassin, açık kaynak kodlu yapısı ve esnek yapılandırma seçenekleriyle en yaygın kullanılan anti-spam çözümlerinden biridir.

SpamAssassin Nedir ve Nasıl Çalışır?

SpamAssassin, Apache Yazılım Vakfı tarafından geliştirilen, perl tabanlı bir spam filtreleme motorudur. Sistem, gelen e-postaları 100 üzerinden puanlama yöntemiyle değerlendirir. E-posta 5 puandan yüksek skor alırsa spam olarak işaretlenir, 5'in altındaki skorlar ise temiz kabul edilir.

SpamAssassin'in Temel Çalışma Mekanizması

Sistem, e-postaları birden fazla kriterden geçirir:

  • Header Analizi: Gönderen adresi, konu satırı ve meta veriler kontrol edilir
  • İçerik Taraması: E-posta gövdesindeki şüpheli kelime kalıpları tespit edilir
  • DNSBL Kontrolü: Gönderen IP adresi kara listelerde mi kontrol edilir
  • Bayes Filtreleme: Makine öğrenimi algoritmaları ile örüntü tanıma yapılır
  • RBL (Real-time Blackhole List) Sorguları: Bilinen spam kaynakları sorgulanır

SpamAssassin Kurulumu

CentOS/RHEL Sistemlerde Kurulum

Enterprise Linux tabanlı sistemlerde aşağıdaki komutlarla kurulum gerçekleştirilir:

sudo yum update
sudo yum install spamassassin
sudo systemctl enable spamassassin
sudo systemctl start spamassassin

Ubuntu/Debian Sistemlerde Kurulum

Debian tabanlı sistemlerde ise farklı paket yöneticisi kullanılır:

sudo apt update
sudo apt install spamassassin spamc
sudo systemctl enable spamassassin
sudo systemctl start spamassassin

Kurulum sonrasında yapılandırma dosyası genellikle /etc/mail/spamassassin/ dizininde yer alır. Detaylı bilgi için sanal sunucu kirala hizmetlerimizi inceleyebilirsiniz.

SpamAssassin Yapılandırma Dosyası

Ana Konfigürasyon Ayarları

SpamAssassin'in ana yapılandırma dosyası local.cf olarak adlandırılır. Bu dosya üzerinden tüm temel ayarlar yapılır:

rewrite_header Subject [SPAM]
required_score 5.0
report_safe 1
use_bayes 1
bayes_auto_learn 1
skip_rbl_checks 0
use_razor2 1
use_pyzor 1
ok_languages tr en
ok_locales all

Puanlama Sistemi ve Eşik Değerleri

SpamAssassin'in en önemli parametrelerinden biri required_score değeridir. Bu değer, e-postanın spam olarak kabul edilmesi için gereken minimum skoru belirler:

required_score DeğeriSpam Algılama DuyarlılığıFalse Positive Oranı
3.0Çok Yüksek%15-20
5.0Orta (Önerilen)%5-10
7.0Düşük%1-3
10.0Çok Düşük<%1

Gelişmiş Yapılandırma Seçenekleri

Bayes Filtreleme Ayarları

Bayes filtreleme, SpamAssassin'in en güçlü özelliklerinden biridir. Makine öğrenimi kullanarak spam ve meşru e-postaları öğrenir:

use_bayes 1
bayes_auto_learn 1
bayes_auto_learn_threshold_nonspam 0.1
bayes_auto_learn_threshold_spam 12.0
bayes_path /var/lib/spamassassin/bayes
bayes_file_mode 0700

RBL (Real-time Blackhole List) Yapılandırması

Spam kaynağı olarak bilinen IP adreslerini kontrol eden RBL servisleri:

skip_rbl_checks 0
rbl_timeout 10
razor_timeout 5

En popüler RBL servisleri arasında Spamhaus, SORBS, UCEPROTECT ve Barracuda bulunmaktadır. RBL entegrasyonu ile spam e-postaların %60'a varan kısmı kaynak aşamasında engellenebilir.

Dil ve Karakter Kodlaması Ayarları

Türkçe e-posta trafiği için dil filtreleme kritik öneme sahiptir:

ok_languages tr en de fr
ok_locales all
# Türkçe karakter desteği
ifplugin Mail::SpamAssassin::Plugin::TextCat
textcat_max_languages 10
endif

SpamAssassin Kuralları ve Özelleştirme

Özel Kurall Oluşturma

SpamAssassin'in güçlü yönlerinden biri, özel kurallar tanımlayabilmektir:

# Özel spam kelime listesi
body LOCAL_SPAM_WORDS /(viagra|casino|lottery|winner|prize|free money)/i
score LOCAL_SPAM_WORDS 3.5

# Belirli domainlerden gelen e-postalar için ek puan
header LOCAL_SPAM_FROM Reply-To =~ /spam-sender\.com/i
describe LOCAL_SPAM_FROM Known spam source
score LOCAL_SPAM_FROM 5.0

# URL kısaltma kontrolü
body LOCAL_SHORT_URL /(bit\.ly|tinyurl|goo\.gl|ow\.ly)/i
score LOCAL_SHORT_URL 1.0

Whitelist ve Blacklist Yönetimi

Güvenilir gönderenleri whitelist'e eklemek false positive oranını düşürür:

# Whitelist (güvenilir gönderenler)
whitelist_from *@guvenilir-firma.com
whitelist_from *@partner-sirket.com.tr
whitelist_from [email protected]

# Blacklist (spam kaynakları)
blacklist_from *@bilinen-spam-kaynak.net
blacklist_from *@shady-sender.com

# Auto-whitelist (otomatik liste)
use_auto_whitelist 1
auto_whitelist_path /var/lib/spamassassin/auto-whitelist

Postfix Entegrasyonu

Milter Yapılandırması

Postfix mail sunucusu ile SpamAssassin entegrasyonu için milter (mail filter) protokolü kullanılır:

# /etc/postfix/main.cf dosyasına eklenecek
smtpd_milters = inet:localhost:8891
non_smtpd_milters = inet:localhost:8891
milter_default_action = accept
# /etc/default/spamassassin veya systemd servisi için
SPAMDOPTIONS="-d --pidfile=/var/run/spamd.pid --socketpath=/var/run/spamd.sock --socketmode=0660"

Amavis ile Entegrasyon

Birçok sunucu yöneticisi SpamAssassin'i Amavis ile birlikte kullanmayı tercih eder:

# /etc/amavis/conf.d/20-debian_defaults
@bypass_spam_checks_maps = (1);
$spam_assassin_preferred_language = 'tr';
$sa_tag_level_deflt = 2.0;
$sa_tag2_level_deflt = 6.3;
$sa_kill_level_deflt = 10.0;

Performans Optimizasyonu

Spamd Önbellek Ayarları

Yüksek trafikli sunucularda performans kritik önem taşır:

# /etc/spamassassin/spamc.conf
--max-children 5
--timeout 30
--tempfail
# spamd.service dosyasında
[Service]
ExecStart=/usr/bin/spamd -d --max-children=10 --max-requests=100 --helper-home-dir -i 127.0.0.1 -p 783

Önbellek ve Veritabanı Yönetimi

Bayes veritabanı düzenli olarak bakım gerektirir:

# Bayes veritabanı eğitimi
sa-learn --sync
sa-learn --dump magic

# Veritabanı yeniden oluşturma (sorun yaşanırsa)
sa-learn --rebuild

Yapılandırma Sonrası Kontroller

SpamAssassin Test Komutları

Yapılandırmanın doğru çalışıp çalışmadığını test etmek için:

# Spamassassin syntax kontrolü
spamassassin --lint

# Test e-postası ile spam skoru hesaplama
spamassassin -t < /usr/share/doc/spamassassin/examples/sample-spam.txt

# Bayes veritabanı durumu
sa-learn --dump magic

Günlük İzleme ve Raporlama

SpamAssassin log dosyaları genellikle /var/log/mail.log konumunda bulunur. Düzenli log incelemesi yapılması önerilir:

# Son spam engellemelerini görüntüle
grep "SPAM" /var/log/mail.log | tail -20

# SpamAssassin'e özgü loglar
tail -f /var/log/mail.log | grep spamd

SpamAssassin Alternatifleri ile Karşılaştırma

ÖzellikSpamAssassinRspamdDCC
Kurulum KolaylığıOrtaOrtaKolay
PerformansOrtaYüksekYüksek
Bayes FiltrelemeEvetEvetEvet
RBL DesteğiEvetEvetSınırlı
ÖzelleştirmeÇok EsnekEsnekSınırlı
RAM Kullanımı200-500MB100-300MB50-100MB

Sonuç ve Öneriler

SpamAssassin, doğru yapılandırıldığında spam e-postaların %95'inden fazlasını engelleyebilir. Sunucu seviyesinde spam koruması için şu adımları izlemenizi öneririz:

  1. Temel yapılandırmayı bu rehberde belirtildiği şekilde gerçekleştirin
  2. required_score değerini 5.0 olarak başlatın ve ihtiyaca göre ayarlayın
  3. Bayes filtreleme özelliğini aktif edin ve düzenli eğitim yapın
  4. RBL servislerini entegre edin
  5. Düzenli log izleme yaparak false positive oranını kontrol edin
  6. Whitelist ve blacklist listelerini periyodik olarak güncelleyin

Unutmayın ki etkili bir spam filtresi, sürekli optimizasyon ve izleme gerektirir. IT danışmanlık hizmetlerimiz ile sunucu güvenliği konusunda profesyonel destek alabilirsiniz.

library_booksBenzer İçerikler

Cloud Sunucu Nedir? Avantajları ve Detaylı Rehber
Sunucu Yönetimi
calendar_today5 Nisan 2026
schedule5 dk

Cloud Sunucu Nedir? Avantajları ve Detaylı Rehber

Cloud sunucular, dinamik kaynak dağıtımıyla işletmelerin kesintisiz büyümesini sağlar. Avantajlardan karşılaştırmalara tüm detaylar bu rehberde yer alıyor.

S
Serversiumarrow_forward
Linux vs Windows Sunucu: Hangisi Projeye Uygun?
Sunucu Yönetimi
calendar_today6 Nisan 2026
schedule5 dk

Linux vs Windows Sunucu: Hangisi Projeye Uygun?

Linux ve Windows Sunucu arasındaki teknik farkları, maliyet avantajlarını ve proje uyumluluğunu detaylı olarak karşılaştırıyoruz. Yazılım stack'inize en uygun işletim sistemini seçmek için kapsamlı rehberimizle doğru altyapı kararını verin.

S
Serversiumarrow_forward
Plesk Kurulumu - Ubuntu 24 Üzerinde Adım Adım Rehber
Sunucu Yönetimi
calendar_today16 Nisan 2026
schedule5 dk

Plesk Kurulumu - Ubuntu 24 Üzerinde Adım Adım Rehber

Ubuntu 24 üzerinde Plesk kurulumunu adım adım öğrenin. Bu rehberde sistem gereksinimleri, kurulum adımları ve temel yapılandırma ayarlarını bulabilirsiniz.

S
Serversiumarrow_forward