Olen käsitellyt roskapostin estoa kirjassani Linux – Tehokas hallinta ja hyvin tarkkaan kirjassa kuvatulla tavalla olen saanut roskapostia vähennettyä selvästi. Tyypillinen osuus posteista, joita palvelimeni ei vastaanota, on noin 90 %. Niitä ei siis edes vastaanoteta, vaan lähettäjälle ilmoitetaan, että olet mustalla listalla, postiasi ei oteta vastaan.

Sendmail, jota käytän postipalvelimena, kirjoittaa lokiin tiedot myös niistä posteista, joita ei ole otettu vastaan. Käytän pientä skriptiä, joka tulostaa tilastoa:

[root@www mail]# spamstats /var/log/maillog.?
Total accepted: 3457
Blocked due to a virus: 0
csma.biz blacklist: 0
spamhaus.org blacklist: 5293
dsbl.org blacklist: 0
spamcop.net blacklist: 62
njabl.org blacklist: 292
ahbl.org blacklist: 0
sorbs.net blacklist: 265
ordb.org blacklist: 0
Blacklist total blocked: 5912
DNS blocked: 3
Delay blocked: 355
Access list denied: 146
Total received: 9873
Total blocked: 6416
Percentage blocked: 64.9853

Yhdeksän edellisen kokonaisen viikon aikana lähes 6 500 postia hylättiin ja mustien listojen ansiosta estettiin lähes 6 000 postia. Pieni hylkäysprosentti kertoo siitä, että roskapostin lähetyksen määrä vaihtelee ja on viimeaikoina peräti vähentynyt. Silti hylkäysprosentti käy ajoittain edelleen yli 90 prosentissa. DNS blocked tarkoittaa, että lähettämistä yrittäneellä postipalvelimella ei ole edes konenimeä. Delay blocked edellyttää lähettäjän sietävän pientä viivettä, jota mahdollisimman nopeaan postitukseen pyrkivät roskaajat eivät usein suostu. Access list on taas käsin ylläpitämäni hyvin lyhyt lista domaineista, joiden postituksista olen häiriintynyt. Jokunen vuosi sitten .hinet.net-osoitteista tuli kiinaksi jotain ja aivan äskettäin hermostuin .com.br-osoitteisiin, joista tuli portugalia, jota en osaa.

Postipalvelimeni on toiminut useita vuosia täysin tyydyttävästi. En juurikaan ole tarkkaillut sen toimintaa pitkään aikaan. Nuo portugalinkieliset spämmit kuitenkin äskettäin vähän herättelivät minua. Sitten vaimon työpaikaltaan lähettämä viesti ei tullut perille ja hänen saamansa vastaus oli:

Reporting-MTA: dns; mx1.ya.elisa.fi Final-Recipient: rfc822;rk_at_lineox.net Action: failed Status: 5.0.0 (permanent failure) Remote-MTA: dns; [194.100.97.85] Diagnostic-Code: smtp; 5.1.0 - Unknown address error 554-'5.7.1 Rejected 193.64.173.32 found in dnsbl.sorbs.net' (delivery attempts: 0)

Postipalvelimen lokissa vastaava merkintä:

Mar 6 09:14:56 www sendmail[9797]: ruleset=check_relay, arg1=Mx1.ya.elisa.fi, arg2=127.0.0.6, relay=Mx1.ya.elisa.fi [193.64.173.32], reject=554 5.7.1 Rejected 193.64.173.32 found in dnsbl.sorbs.net

Poistin sorbsin mustan listan käytöstä ja sain pian viestin netpostista, että on uusi viesti. Niitä ei ollutkaan tullut vähään aikaan. Tarkemmin sanoen ei yhtään tänä vuonna. Noh, paljastui, että niitä olisi pitänyt tulla 7 kpl ja pari laskua oli lähetetty uudestaan huomautusmaksulla lisättynä. Tappiot siis reilu kympin, mutta ei onneksi sen pahempaa.

Alla aika simppeli skriptirivi, jolla saan statistiikkaa sorbsin hylkäämien viestien lähettäjistä ja yrityskerroista:

# grep sorbs.net /var/log/maillog.? | awk '/arg1=[a-zA-Z]/{print $7}' | sort | awk '{if (PREV==$0) count++ ; else {addr=PREV ; sub("arg1=","",addr) ; print addr " occured " count " times." ; PREV=$0 ; count=1}}'

Ja tulostetta:

a.uh11.mailerxsdd.com, occured 1 times.
clickdvw.org, occured 1 times.
c.ss42.shsend.com, occured 1 times.
cubus.crosssoft.de, occured 1 times.
d14-69-116-19.try.wideopenwest.com, occured 1 times.
fimx03.talentum.com, occured 1 times.
fimx04.talentum.com, occured 3 times.
final.yritysposti.com, occured 1 times.
gw03.mail.saunalahti.fi, occured 1 times.
ihe246.internetdsl.tpnet.pl, occured 1 times.
mailcannon.hard.ware.fi, occured 31 times.
maile-ff.linkedin.com, occured 1 times.
mail-ob0-f186.google.com, occured 1 times.
mail-qa0-f63.google.com, occured 1 times.
mailsend.netposti.fi, occured 7 times.
mailzgbaeb.mail.dmdelivery.com, occured 1 times.
mail1.correionaweb.info, occured 1 times.
mout.perfora.net, occured 2 times.
mta004.emldeliver.net, occured 1 times.
mta01.emlza.net, occured 1 times.
nm16-vm1.access.bullet.mail.mud.yahoo.com, occured 1 times.
nm18-vm1.access.bullet.mail.sp2.yahoo.com, occured 1 times.
ns1.biztrainer.biz, occured 1 times.
online.itwhitepapers.com, occured 41 times.
online.technologybriefcase.com, occured 1 times.
outcampmail006.snc4.facebook.com, occured 1 times.
out03.smtpout.orange.fr, occured 1 times.
pmta-vmta8.sfsvs76.com, occured 1 times.
ptr-8-30-162-131.us.gmocloud.com, occured 1 times.
rsuk-mta-77.anpdm.com, occured 1 times.
sacrtt6.lnk.telstra.net, occured 1 times.
smtp.amarketing.fi, occured 1 times.
smtp-mm01.sanomadata.fi, occured 34 times.
smtp-out.vy-verkko.fi, occured 87 times.
smtpout17-01.prod.mesa1.secureserver.net, occured 1 times.
smtp.tele.fi, occured 1 times.

Kaikki .fi-osoitteet hyvin suurella todennäköisyydellä posteja, jotka olisin halunnut saada.

Spamhaus.org:n musta lista on toiminut erittäin hyvin ja se on estänyt todella suuren määrän roskapostia. Yksittäisiä postittajia on aivan liian paljon, jotta niitä kannattaisi listata. Alla onkin pelkästään .fi-osoitteet poimiva komentorivi:

# grep spamhaus.org /var/log/maillog.? | awk '/arg1=[a-zA-Z]/{print $7}' | sort | awk '{if (PREV==$0) count++ ; else {addr=PREV ; sub("arg1=","",addr) ; print addr " occured " count " times." ; PREV=$0 ; count=1}}' | grep ".fi, "

Tulos: ei ainuttakaan.

Lopuksi vielä muut mustat listat:

# for i in spamcop.net njabl.org ; do grep $i /var/log/maillog.? | awk '/arg1=[a-zA-Z]/{print $7}' | sort | awk '{if (PREV==$0) count++ ; else {addr=PREV ; sub("arg1=","",addr) ; print addr " occured " count " times." ; PREV=$0 ; count=1}}' | grep ".fi, " ; done

Eikä taaskaan tulostetta.

Hyvästi sorbs.