Day: August 31, 2010

ClamAgent & ClamSink

Amiről már rég írnom kellett volna.

Lassan másfél hónapja tetszhalott állapotából felélesztettem az Exchange-re szabott ingyenes vírusirtómat. Az új darab ugyan csak build számban tér el a régitől, mégis nagy lépés előre.

– ClamD használata. A korábbi verzió a ClamWin-t használta, mint motort. Ez azt jelentette, hogy minden egyes beérkezett csatolmányt lementett a temp könyvtárba, majd elindította rá a clamwin-t. A clamwin felolvasta a saját adatbázisát, majd a tempből a fájlt. Ez a műveletsor, mint látható igencsak disk intenzív ügy. A jelenlegi verzió ezzel szemben a csatolmányt egy TCP csatornán keresztül áttolja a ClamD-nek ahol megtörténik a vírus ellenőrzés. Ráadásul a ClamD csak időnként olvassa fel az adatbázist.

– MSI telepítő. A korábbi verzió kézi telepítése sem volt egyszerű. Ennél a verziónál ez már mintegy tizenöt lépés lenne a kézi telepítés ezért inkább készítettem egy msi-t ami tartalmazza a clamd-t a szükséges futtatókörnyezeteket, beállításokat.

– Pici hibajavítás. Az Exchange 2007 verzió 2010 alatt futtatva egy .NET osztály nevét írja a logba az értéke helyett. Egyébként az Exchange 2007 alatt is produkálja ugyanezt a hibát SP3-tól.

– Támogatás az Exchange 2010-hez. Lényegében nincs sok különbség a 2007-es és a 2010 verzió között, csak a 3.5-ös Frameworkre fordítottam és a 2010 transport dll-jeit használtam. A lényegi különbség a telepítő, ugyanis a 2007 és a 2010 másképp intézi a powershell plug-in-jeit így másképp kell telepíteni.

Folytatás következik (vannak még ötleteim). A cucc letölthető a clamagent.org-ról némi regisztráció után

Javítsuk meg a semmit

Linux tűzfalat használok (jujj, de ez egy Exchange blog). Évek óta bosszant az Exchange Server Event Logban ez a bejegyzés.

Ha van egy mobil eszközünk, ami az ActiveSync for Exchange-el direct push módban beszélget akkor a kliens nyit egy TCP kapcsolatot a szerver felé, a szerver pedig jó sokáig hagyja várakozni a klienst. Némelyik tűzfal ebbe beleun és lekapcsolja a villanyt idő előtt. Ha ez megtörténik, akkor pakolja a fenti kedves üzenetet az Exchange a logba.

Két lehetőségünk van:

1. Megmondjuk az Exchange-nek, hogy ne várjon addig. Ezt a Program Files\Microsoft\Exchange Server\ClientAccess\Sync\web.config fájlban található heartbeat bejegyzések módosításával érhetjük el. Pontosabban ezekről beszélek: MinHeartbeatInterval, MaxHeartbeatInterval, HeartbeatSampleSize, HeartbeatAlertThreshold

2. Csökkenteni a heartbeat értékeket mégsem célravezető. Inkább a csomagok útjában álló tűzfallal kéne tudatni, hogy várjon vagy 30 percet (ez a Microsoft ajánlás)

Térjünk vissza a linuxhoz. A linuxon az ide tartozó bejegyzések a /proc/sys/net/ipv4 alatt találhatóak. Próbáltam kideríteni, hogy melyekhez kellene hozzányúlni. Végül is találtam erre vonatkozóan egy cikket.

Puff neki, ezek szerint a linux vonatkozó timeout-ja három nap (ennyit a 30 perces ajánlásról). Végig is néztem a sajátom beállításait, és valóban.

Akkor ki a tettes? Láthatóan mostmár senki. Július 5.-e óta megszűntek a bejegyzések. Valaki észbekaphatott valamelyik a mobilok és a tűzfal közötti szolgáltatónál és állítottak valamit.

Probléma lezárva.