Şirket Geneline Gönderilen Toplu Mail Sorunu ve Çözümü ( Brightmail Exchange Server Loop )

Başlığa bakınca mevcut sistemlere bir loop sorunu olduğunu düşünebilirsiniz ancak aslında böyle bir sorun yok. Bu sorun aslında piyasadaki hemen hemen büyün MTA’ lar için geçerli bir sorundur ve aslında sorunun kaynağı yine biziz J

Yani bu sorun yanlış bir konfigürasyondan doğan ve mevcut mail trafiğini inanılmaz arttıran bir durumda.

Büyük bir organizasyonda toplu gönderilen mailler her zaman sorun olmuştur. Bu nedenle kimlerin şirket geneline mail göndereceği her zaman bir soru işaretidir. Bu kimi zaman prosedür ile kimi zaman bir süreç ile belirlenmiştir. Malum bahsi geçen firmaların büyüklükleri düşünülürse bu tür evrak ve standartlar çoktan oturtulmuştur.

Ancak günün sonunda bunu uygulamak mail altyapısından sorumlu olan uzmanlara düşmektedir.

Uzman için en iyi çözüm Moderated Groups olacaktır. Bu konuda aşağıdaki makaleyi inceleyebilirsiniz

https://www.cozumpark.com/blogs/exchangeserver/archive/2011/06/18/exchange-2010-sp1-distribution-list-s-n-rland-rma-ve-distribution-list-management.aspx

Ancak yapı büyük olunca tüm şirket genelini temsil eden bir grup’ a yollanan bu maillerin birisi tarafından kontrol edilmesi hem iş yükü olacak hemde bu kişinin yerinde olmaması, tatil, doğum, nişan, hastalık ve benzeri nedenlerden mail trafiğinde aksaklıklara neden olacaktır. Dahası bu nedenle bir kişi daha bu iş ile ilgileniyor olması ayrı bir kaynak kullanımı olacaktır.

Bu çözüm aslında en iyi çözüm olmak ile birlikte eğer böyle bir insan kaynağınız yok ise bu durumda bu tür maillerin prosedür ile belirli kişiler tarafından gönderilmesine izin verebilirsiniz.

İlk bakışta bu kulağa son derece kolay geliyor, örneğin tüm müdürler sadece tüm şirket geneline mail gönderir diyerek müdürlere yetki vermeniz yeterli olacaktır.

Ancak işin içine servisler ve onların grupları girdiğinde işler karışıyor.

Örneğin Muhasebe departmanından bir kişi diyorki ben bazı uyarıları tüm şirket geneline geçmek için tüm şirket geneline mail atmak istiyorum diyor. Tamam bu da mantıklı gibi, neden ? Müdürler atıyordu birde bu kullanıcı veya buna benzer her servisten bir kullanıcı çıktı. Sorun ne derseniz, sorun bu kullanıcıların kendi isimleri üzerinden mail göndermek istememeleri. Çünkü bu hem dönüşlerin sadece o kişiye olmasına hemde o kişinin işten ayrılması, tatilde olması ve benzeri nedenlerden işlerin aksamasına neden olmaktadır.

Sizde bu nedenle öncelikle bu kişinin çalıştığı servis için açılan mail grubu güvenlik özelliklerinden ( ACL ) bu kullanıcıya “send as” izni veriyorsunuz ve bu kullanıcı artık “Muhasebe” isimli mail grubu üzerinden tüm şirkete mail atabiliyor. SORUN işte tam burada başlıyor! Eğer siz bir grubun tüm şirket geneline mail atmasına izin verirseniz bu grubun tüm üyeleri aslında bu izne sahip oluyor.

Bu durumda örneğin Muhasebe grubunda 50 kişi var, ancak siz bir kişinin bu grup adına mail gönderme yetkisi vermenize rağmen mail’ i tüm şirkete gönderen aslında bu kullanıcı değilde “Muhasebe” grubu olduğu için aslında siz bu gruba şirkete mail gönderme yetkisi vermiş oluyorsunuz, dolaylı olarak artık bu 50 kişide bilmeden yanlışlıkla veya bilerek tüm şirkete mail gönderebilir.

Ever sorun burada başlıyor, her şirket geneline mail göndermek isteyen kullanıcının çalıştığı servis mail grubuna bu izni vermemiz ile beraber artık bu grupların üyelerinede bu izni vermiş oluyoruz ki bu da nerde ise şirket çalışanlarının yarısının tüm şirkete mail göndermeye yetkisinin olması demek gibi bir durum oluşuyor.

Bunun çözümü olarak ne yapılabilir ? Eğer gönderilen maillere cevap beklenmiyor ise, yani yemek saatleri değişti, servis saatleri değişti, bu şirket ile indirim anlaşması yaptık, bu gün kar nedeni ile erken çıkıyoruz gibi gerçekten sadece duyuru amacı ile mail atılacak ise çözüm kontak oluşturmaktır.

1 kontak açarsınız aynı servis grup ismi ile ama sonuna duyuru eklersiniz. Yani ;

Muhasebe – Distribution Group – Üyeleri var – Mail Adresi Var – Cevap alır

Muhasebe – Duyuru – Contact – Üyeleri yok – Mail Adresi Var – Cevap alamaz.

Buraya kadar çözüm güzel gidiyor, örneğin muhasebe için bir duyuru kontak oluşturuyorsunuz, sonra bu kontak için Muhasebe çalışanlarından sadece toplu mail gönderecek kişiye send as izni veriyorsunuz. Bundan sonra ise bu kontak’ ın tüm şirkete mail göndermesini sağlıyorsunuz.

Bu konuyuda merak ediyorsanız onuda detaylandırmak isterim. Tüm şirketi temsil eden bir mail grubu vardır dinamik olarak güncellenen ve siz bu mail grubu üzerinde sadece şu grup üyeleri bana mail göndersin dersiniz. Bu durumda bu grubun üyesi olmayan grup veya kullanıcılar bu tüm şirket çalışanlarını içeren gruba mail atamaz.

Peki durumu daha anlaşılır yapmak istiyorum

Tüm çalışanları içeren mail grubu

CozumPark_ALL

Bu gruba maili sadece aşağıdaki grubun üyeleri gönderebilir

Mail_GONDERENLER

Mail göndermek isteyen kullanıcı

Hakan

Mail göndermek istenilen group

Muhasebe

Şimdi Hakan’ ın öncelikle Muhasebe grubu üzerinden mail göndermesi için yani mail from kısmına bu grubu seçip mail atması için “Send as” iznine ihtiyacı vardır. Bunu verdiniz sonra muhasebe grubunu gidip “Mail_GONDERENELER” grubuna üye yaptınız.

Hakan outlook programını açar mail from kısmına Muhasebe yazar ve to kısmına ise CozumPark_ALL yazarak tüm şirkete mail atar ancak bu durumda tüm Muhasebe grubu üyeleride mail gönderebilmektedirler.

Bunun için ben aşağıdaki gibi bir kontak oluşturuyorum

Muhasebe – Duyuru

Bu kontak için Hakan kullanıcısına send as izni veriyorum sonra da bu kontağı Mail_GONDERENLER grubuna ekliyorum.

Bu durumda da hakan outlook üzerinden CozumPark’ a mail atar ama kontak üye içermediği için hangi kullanıcın bu kontak için send as izni var ise o gönderebilir.

Soruna gelelim. Bu kontak için eğer siz mevcut şirket mail domain adı ile başlayan ancak şirket içerisinde olmayan bir mail adresi kullanırsanız bu mail döngüye girer.

Nasıl ?

Örnek bu kontağın mail adresi no-reply@cozumpark.com ise ve hakan bu kontak üzerinden Serkan’ a mail attı. Serkanda Out of Office tanımlı olduğu için bu mail’ e cevap yazdı.

Şimdi cevap kime gelir ? Exchange server’ a gelir, peki Exchange server to kısmında no-reply adresinin kimin olduğunu bulur ve bakar ki bu bir kontağın external mail adresi bu nedenle bu maili direk dışarıya yollar, ancak cozumpark.com aslında yine onun host ettiği bir mail olduğu için bu mail tekrar Exchange Server’ a geri döner ve sunucu çok ciddi şekilde şişmeye başlar. Hele yapıda önde bir brightmail var ise bu durumda mail exchange server’ dan çıkar ama MX kaydı nedeni ile yine şirketin dış ip adresinden 25 nolu porttan içeri girer ve mail BM’ e düşer, BM de bunu exchange server’ a yollar ama Exchange server yine bu bir external mail adresi diyerek tekrat döngü başlar ve sisteminize inanılmaz bir yük biner.

Hatta ortamda arşivleme yapılıyor ise yani mail tarafı bu durumda arşiv sistemide şişmeye başlar.

Çözüm ise çok basit, bu kontakların sadece X kişi tarafından mail alınmasına onay verirseniz bu kontaklara bilerek veya bilmeyerek yada Out of office de olduğu gibi otomatik yanıtlar dönse bile bu dönenler X kullanıcısı olmadığı için bu mailler NDR ile beraber outlook’ a dönecek ve süreç burada bitecektir.

Bu X kimdir derseniz gerçekte aktif bir posta kutusu olmayan birinin olması yeterli.

Evet biraz karışık ve resimsiz bir makale oldu ancak bu konuda derdi olanlar için bence çok değerli bir bilgi.

Bir diğer makalemde görüşmek dileği ile esen kalın.