SmarterMail 7

Uz miga.lv tikko tika atjaunināta e-pastu servera SmarterMail versija uz jaunāko 7.0 versiju. Visi, kas izmanto e-pasta tīmekļa vietni http://mail.miga.lv/ uzreiz ievēros, ka mainījies ir vizuālais noformējums, taču tāpat ir pieejamas arī vairākas jaunas funkcijas.

Dažas no tām:

  • vienkāršāka un ātrāka e-pastu meklēšana;
  • iespēja saglabāt pielikumus uz servera un pārsūtīt tikai saites uz tiem (šobrīd limits ir 20Mb vienam failam) – var noderēt gadījumos, kad saņēmēja serveris pielikumus bloķē;
  • kontaktu sadaļa padarīta ērtāka;
  • e-pastiem iespēja uzlikt pazīmi “follow-up” (līdzīgi kā to ļauj darīt Outlook);
  • sinhronizāciju centrs, kurā var pārskatīt visas izveidotās sinhronizācijas ar mobilajām iekārtām vai e-pasta programmām (piemēram, Outlook vai Thunderbird).

Smtp un Pop3 serveris

Kādu laiku jau nomoka doma, ka vajadzētu publicēt savus risinājumus Lattelecom IT olimpiādes uzdevumiem. Kaut vai tāpēc, lai topošajiem dalībniekiem būtu iespēja ne tikai redzēt, kādi uzdevumi bija jārisina agrāk, bet arī redzēt risinājumu piemērus, tādā veidā nedaudz izlīdzinot izredzes starp jaunajiem dalībniekiem un tiem, kas olimpiādē piedalās jau otro vai trešo gadu pēc kārtas.

Kā pirmo šādu piemēru izvēlējos 2009. gada fināla kārtas studentu grupas 1. dienas uzdevumu “S: SMTP/POP3 serveris”. Šāds uzdevums tika izvēlēts, jo SMTP un POP3 protokoli, lai arī mūžseni, ir vēl joprojām ļoti aktuāli, bet tajā pašā laikā ļoti triviāli, ja nav mērķis saprast e-pasta saturu, bet tikai to pārsūtīt tālāk.

Pirmais solis, šo uzdevumu pildot, ir atrast protokola aprakstus. Pirmā iespaida iegūšanai nekā labāka par Wikipedia nevar vēlēties – SMTP un POP3. Tālāk jau var pētīt precīzās specifikācijas, kurās būtu jābūt aprakstītām visām detaļām: RFC 5321 (SMTP) un RFC 1939 (POP3). Un, pats galvenais, jāver vaļā komandrinda un telnet, lai izmēģinātu ar roku pieslēgties kādam reālam serverim.

IT olimpiādē dalībniekiem bija 6,5 stundas, lai ar šo uzdevumu tiktu galā. Diemžēl tikai viena komanda (Tornado) iesniedza risinājumu, kas veiksmīgi tika galā ar e-pastu saņemšanu un atdošanu klienta programmatūrai. Tā kā man pašam ir acīmredzamas priekšrocības, kas radās, pašam izdomājot šo uzdevumu, risinājums tādā formā, kā tas redzams pievienotajā arhīvā, aizņēma apmēram 2,5 līdz 3 stundas.

SimpleMail risinājums: SimpleMail.zip  (44kb). Risinājums gan netiek darbināts kā serviss, bet gan kā komandrindas aplikācija, taču tas darīts, lai vienkāršotu tā izmēģināšanu. Tāpat nav arī realizētas papildus iespējas, par kurām olimpiādē vienojās dalībnieki. Tornado komandas risinājumā vairākas papildus iespējas bija realizētas.

Kā darbināt serveri – jāpalaiž SimpleMail.exe un sava klienta programmatūra jākonfigurē, lai izmantotu 127.0.0.1:25 un 127.0.0.1:110. Jāņem vērā, ka localhost vārda izmantošana varētu nestrādāt, ja e-pasta programmatūra atbalsta IPv6 – tādā gadījumā tā mēģinās slēgties pie adreses ::1, kuru serveris var neatbalstīt. Serveris pieņem e-pastus visiem adresātiem, lai piekļūtu pie saņemtajām e-pasta adresēm, kā POP3 lietotāja vārds un parole jānorāda šī e-pasta adrese.

Risinājumā ir ļoti daudz punktu, kurus vajadzētu pielabot, taču galveno virzienu, kādā strādāt, tas labi parāda.

Pamata servera darbību nodrošina klase BaseServer. Izveidojot šo objektu, tas automātiski palaiž TCP serveri (izmantojot TcpListener klasi) un jaunu pavedienu (Thread), kurš gaidīs, kad pie servera kāds pieslēgsies. Svarīga nianse – šis pavediens pats jauno pieslēgumu neapstrādā. Tā vietā tas izmanto metodi QueueUserWorkItem, kas nodrošina spēju apstrādāt vairākus pieslēgumus reizē. QueueUserWorkItem izmanto .NET iebūvētu slodzes dalīšanas mehānismu, kas ļauj reģistrēt vairākas darba vienības, kuras tiek izpildītas viena pēc otras, nodrošinot, ka paralēli netiek izpildīti vairāk uzdevumu kā dators spēj veiksmīgi darbināt.

BaseServer nodrošina pamata funkcionalitāti – tas no pieslēguma nolasa komandu (gan SMTP, gan POP3 komanda tiek nodota vienā atsevišķā teksta rindā) un nodod šo komandu apstrādei IProcessor interfeisam. Klases, kas implementē šo interfeisu (SmtpProcessor un Pop3Processor), nodrošina katras konkrētas komandas izpildi, kā arī saglabā pieslēguma stāvokļa informāciju (lietotāja vārdi, e-pasta saņēmēji utt.).

Šādi sadalīts kods ļauj izvairīties no koda dublēšanas un nodalīt tīkla savienojuma apstrādi no SMTP vai POP3 komandu apstrādes. Izmantotais mehānisms arī demonstrē salīdzinoši elegantu veidu, kā nodrošināt salīdzinoši augstu veiktspēju, kur viens pieslēgums nebloķē citus.

SmarterMail 6.6 uz miga.lv

Uz miga.lv ir atjaunināta e-pasta servera versija no SmarterMail 6.1 uz 6.6 (izmaiņu saraksts). Izmaiņas nav nekādas lielās, dažādi sīki labojumi. Būtiskākais ir tas, ka vajadzētu būt uzlabotai ātrdarbība – iepriekšējā versija pamanījās noēst 100% CPU un turēt dažus e-pastus bezgalīgā mēstuļu pārbaudes procesā.

E-pastu jaunumi uz miga.lv servera

Nesenā miga.lv programmatūras atjaunināšana uz SmarterMail 6.0 izraisīja mēstuļu filtra nekorektu darbību, tika veikta nozīmīga izmaiņa mēstuļu filtrēšanā – ieviests greylisting (wikipedia). Īsumā – šis filtrs nepazīstamu sūtītāju e-pastus pirmajā reizē noraida. Īstie sūtītāji vienmēr mēģina vēlreiz, bet mēstuļu sūtītāji taupa savus resursus un atkārtoti vēstuli nosūtīt mēģina gaužām reti.

Šis filtrs uzreiz akceptē visus sūtītājus, kas atrodas Latvijā – pagaidām mēstules no Latvijas datoriem tiek sūtītas gana reti, kā arī dažādus populārākos e-pastu servisus, piemēram, gmail. Tādēļ galvenie cietēji ir dažādas tīmekļa lapas, kas, piemēram, sūta foruma reģistrācijas apstiprinājumus. Šie apstiprinājumi tagad var kavēties līdz pat 15 vai 30 minūtēm, atkarībā no sūtītāja.

Labā ziņa ir tā, ka katrs lietotājs savos uzstādījumos šo filtru var atslēgt, ja, piemēram, nepieciešams steidzami saņemt minēto reģistrācijas apstiprināšanas e-pastu.

Papildus šim jauninājumam šodien tika atjaunināta programmatūra uz SmarterMail 6.1.3518 versiju (izmaiņu saraksts), kurā solīta mēstuļu filtra SpamAssassin darbības uzlabošanās. Šī filtra sliktā darbība bija galvenais iemesls, kāpēc pēdējās pāris nedēļās mēstuļu atpazīšana bija tik sliktā līmenī.

Nobeigumā daži attēli, kas parāda greylisting noderīgumu.

Ienākošo mēstuļu skaits pa dienām (te gan jāņem vērā, ka pēdējās nedēļās daļa mēstuļu netika atpazītas):
Ienākošo mēstuļu skaits

Kopējais ienākošo un izejošo e-pastu skaits pa dienām:
Ienākošo un izejošo e-pastu skaits

Izejošo SMTP savienojumu skaits pa dienām (parāda, cik daudz savienojumu agrāk tika veidoti, lai paziņotu kādam citam serverim, ka mēstules adresāts nav atrasts):
Izejošo SMTP savienojumu skaits

Jauna SmarterMail 6.0 versija uz miga.lv

Uz miga.lv ir atjaunināta e-pasta servera versija uz SmarterMail 6.0 (izmaiņu saraksts). Izmaiņas nav pārāk mainījušas mail.miga.lv saskarni, taču daži jaunumi ir. Piemēram, e-pastu saraksts vairs nedalās lapās, bet ir viens garš, skrollējams saraksts. Kā arī uzstādījumu sadaļā parādījusies iespēja nomigrēt uz savu kontu visus datus no citas esošas pastkastītes (piemēram, gmail).

Krietni uzlabots arī mēstuļu filtrs - tagad mēstules tiek filtrētas, izmantojot daudz vairāk dažādus bloku sarakstus (RBL), kas, cerams, aizsargās pret gadījumiem, kad kādu IP kāds no servisiem nobloķējis netaisnīgi.

miga.lv šobrīd jauniem domēniem nav pieejams e-pasts

Pagaidām uz miga.lv servera jauniem domēniem nav iespējams pieslēgt e-pasta pakalpojumu. Iemesls triviāls - izbeigušās SmarterMail domēnu licences. Drīzumā tiks iegādātas papildus licences, lai šo problēmu novērstu.

miga.lv e-pasta serverim papildināta mēstuļu aizsardzība

miga.lv e-pasta serverim šodien tika papildināts mēstuļu filtrs ar SpamHaus ZEN bloķēšanas sarakstu. Šis saraksts satur daudz spameru IP adreses, no kurām sūtīts e-pasts ļoti ticami ir spams (visdrīzāk attiecīgo datoru ir apsēdis kāds vīruss). Cerams, ka šis papildinājums samazinās to mēstuļu skaitu, kas netiek automātiski aizmestas uz Junk E-mail sadaļu.

Šobrīd uz miga.lv aktivizētie mēstuļu filtri:

  • SpamAssassin (maksimums 30 punkti)
  • Bayesian Filtering (10 punkti)
  • DomainKeys (-20 līdz 10 punkti)
  • RBL: SpamCop (10 punkti)
  • RBL: Spamhaus ZEN (10 punkti)

Noklusētie mēstuļu limiti (šos uzstādījumus var katrs pielāgot gan visam domēnam, gan katram lietotājam atsevišķi):

  • <10 punkti: nav mēstule
  • 10 - 20 punkti: vēstule tiek atzīmēta ar "SPAM-LOW" tekstu tās nosaukumā
  • 20 - 30 punkti: vēstule tiek atzīmēta ar "SPAM-MED" tekstu tās nosaukumā
  • > 30 punkti: vēstule tiek automātiski iemesta Junk E-mail direktorijā.

Jāņem vērā, ka mēstules, kas iemestas Junk E-mail direktorijā, netiek lejupielādētas, izmantojot POP3 pieslēgumu, tāpēc lieki aizņems vietu, ja netiks ar roku izdzēsti.

Papildināts [4. jūnijā]: Bayesian filtrs tika atslēgts, jo tas pārāk bieži vēstules bez jebkādām sliktām pazīmēm atzina par mēstulēm.

Atjaunināts SmarterMail uz mail.miga.lv servera

Šodien uz miga.lv servera tika atjaunināta SmarterMail Enterprise programmatūra no versijas 5.5.3317 uz 5.5.3362. SmarterMail uz servera nodrošina visu, kas saistīts ar e-pastu saņemšanu, nosūtīšanu un apskatīšanu (SMTP, POP3, IMAP, Webmail).

Jaunumu saraksts (pamatā tikai kļūdu labojumi): http://www.smartertools.com/SmarterMail/ReleaseNotes.aspx