İletişim hepimiz için gerekli en temel ihtiyaçlarımızdan birisidir. Bizim sektörümüzde iletişim deyince akla ilk gelen şey e-mail teknolojileridir. Microsoft’un bu aşamada bize sunduğu çözüm ise Exchange Server’dır. Exchange server Microsoft’un posta trafiğinde hayati önem teşkil eden en önemli ürünüdür. Bu yazımızda Güvenli bir mesajlaşma yapısı için, yine Microsoft’un en önemli güvenlik ürünlerinden birisi olan ISA Server 2004′ü kullanarak Exchange Server’ı mümkün olan en güvenli yöntemle dış dünyaya açacağız.

Bu aşamada Exchange Server’da Front End Backend Mimarisini kullanarak bu işi gerçekleştireceğiz. Bu iş her ne kadar karmaşık gibi görünse de eminim bu yazımdan sonra pek çoğunuza çocuk oyuncağı gibi gelecektir.

Exchange Front End Back End Mimarisi Nedir & Neden Kullanırız?

Normalde bir adet Exchange server küçük ve orta çaplı kurumların hemen her türlü ihtiyacına cevap verecek kapasitededir. Tabii Exchange serverın donanım ihtiyaçlarının tam anlamıyla karşılanarak çalıştırıldığını düşünerek bunu söylüyorum. Öte yandan bizi birden fazla Exchange Server kullanamaya iten bir dizi sebep vardır. Bunlar performans ve güvenlik olarak ikiye ayrılır.

Exchange Front End Backend yapısını kullanmaya başladığınızda aşağıdaki gibi bir dizi avantajı kazanırsınız :
1-)Backend Microsoft Cluster, FrontEnd Network Load balancing cluster; Exchange Backend MS Cluster servisi sayesinde, arka planda çalışan Exchange serverlardan 8 Node luk yani 8 serverlık bir server kümesi oluşturabilirsiniz. Bunun size getirisi sunucularınızdan bir tanesinden doğan problemden dolayı bütün mesajlaşma yapınızın ve kullanıcılarınızın etkilenmemesidir. Çünkü, Cluster yapısında çöken bir serverın yerini diğer serverlar üsteleneceklerdir. Böylelikle kesintisiz bir iletişim yapısı kazanırsınız.

Aynı zamanda cluster yapısında hızda ön plandadır. Çünkü Exchange’in kullanıcıların ve public folderların tuttuğu databaseler ortaktır ve diğer sunucular bu ortak veritabanını kullanırlar. Her server kendi işlemci ve ramlerini kullandığından Exchange veri depoları çok daha hızlı bir şekilde çalıştırılır. Kullanıcılarınız da bunun keyfini yaşarlar.

2-)FrontEnd NLB cluster içinde aynı şey söz konusudur. Çünkü ön planda çalışan FrontEnd serverlar arasında yük dengelemesi yapılır. Bu hem hız hem de tek serverda oluşacak hatadan dolayı mesajlaşma yapınız etkilenmemesi demektir.

3-)Backend serverlara antivirüs programları, frontend serverlarda ise antispam yazılımları kulanılır. Böylece spam email henüz kullanıcıya iletilmeden filtrelenir ve bir şekilde bir virüs emaile bulaşmışsa temizlenir.

Front End Exchange nedir?

FrontEnd Exchange, Backend’den gelen postaları  postaları dış dünyaya yani internetteki diğer posta sistemlerine göndermek ve dışarıdan gelen postaları da alıp Exchange Backend sunucuna iletmekten sorumlu olan Serverdır. Bu açıdan Front end Serverlar bir SMTP gateway’dir.

 FrontEndlerin tek görevi bu değildir. Artık Kullanıcılar Outlook Web Access, Outlook Mobile Aceess ve Microsoft Active sync server olarak FrontEnd sunucuları kullanacaklardır. Eğer bu yapıyı kullanamasaydınız Kullanıcılar ilişkili oldukları Exchange serverı kullanarak bu hizmetlerden faydalanacaklardı. Bu da zaten Exchange databaselerini yönetmek gibi ağır bir işi olan Exchange Serverların performanslarını daha da düşürecekti. Bu açıdan FrontEnd Exchange Exchange yapısındaki bir roldür.
Frontend Serverların karakteristik özelliği posta iletim görevlerinden dolayı internete bağlı olmalarıdır. Microsoft’unda tavsiye ettiği gibi FrontEnd serverlar genelde firmanın Demilitarized zone’unda ( DMZ ) bulunurlar. DMZ’in bir başka adı ise Perimeter Network’dür.

Back End Exchange nedir?

FrontEndlerden farklı olarak, Backend Exchangeler’in görevi arkaplanda ublic Folder’ların depolanması ve yönetimi, Kullanıcıların mailboxlarının depolanması, yönetilmesi, firma için mailbox erişimi, Recipient Policyleri ve Recipient Update Services’ın yönetimi, Global Address List ve Offline Address List’in tutulması ve güncellenmesidir. Aslında en önemli göreve sahip olan sunucular BackEnd Serverlardır, çünkü emailleri depolarlar. Bu kadar kritik göreve sahip olan Exchange serverları’da biz internete çıkarmayız. Bu yönden Backend’in en tipik özelliği internet erişiminin olmamasıdır. Neticede yine tavsiye edilen Backend sunucuların DMZ’de yada Frontend’in bulunmadığı bir ağda tutulmasıdır.

 

Anlaşılacağı üzere Backend ve Front End arasındaki trafik bir firewall tarafından korunması gerekir. Bunu yapacak olan firewall ISA Server’dır ve tam da bizim makalemizin konusuda bu zaten.

Bölüm 1 – Ağ Topolojisi hakkında Genel Bilgiler

Benim bu makalede kullanacağım network 2 ayrı networkden oluşmakda. Bunlar , internal (yerel ağ, client bilgisayarlar bu networkde bulunuyor), external yani internet ve DMZ –ki ISA server terminolojisinde buna Perimeter Networkde denir. Backend serverlar genellikle internal tutulurlar ve front end serverlarda DMZ’de. Bütün networkler ISA Server sayesinde birbirleriyle görüşecekler. Aşağıdaki şekilde Networkümüzün bir genel şemasını görmektesiniz ( Şekil 1 )

Şekil 1- Networkumuzun Genel Topolojisi

Şekile dikkat etmişseniz, switchlerin yanında vmnet2, vmnet3 bridge gibi bazı ifadeler var. Bu makalenin tamamı VMWARE programı sayesinde yazılmıştır. VMWARE programında her network için vmnet denilen sanal switchler vardır. Bu sanal switchlerin birbiriyle bir bağlantısı yoktur. Bridge ise internete erişimi olan bir switchdir ve gerçek Ethernet kartlarını kullanırlar. Siz gerçek hayatta vmnetleri değil gerçek switchleri kullanacaksınız, bu aşamadan da bir sorun olmayacaktır. IP aralıkları ve IP adresleri ise yukarıdaki şekilde açıkça açıklanmıştır. Bu sebeple ilerleyen bölümlerde bunlardan uzun uzadıya bahsedilmeyecektir.

 

Exchange Front End Backend Yapısını Gerçekleştirmek

FrontEnd Backend yapısını gerçekleştirmek bir dizi uzun ve karışık adımları tamamlayarak yapılacak.Ancak yinede gözünüzde büyütmeyin ve üzülmeyin. Bu makale sayesinde bu iş gayet kolay olacaktır Ben özetle yapılacakları listeleyim ;

  1. Elimizde bir tane Exchange server olacak, bu server yerel ağda yani internalda bulunacak.
  2. İkinci bir Exchange Server kurun veya ISA Server yapılandırmamızı yaptıktan sonra da bu sunucuyu kurabilirsiniz. Şimdilik siz ikinci Exchange serverınızı kurup hazır edeblirsiniz. Ancak unutmayın bu server daha sonra DMZ’de çalışacağından IP adresi değişecek. Bu da DNS’de bir dizi düzenleme yapmanızı gerektirecektir. Yani DNS’te FrontEnd makinanın host kayıtlarını düzenlemeniz gerekiyor.
  3. ISA Server’da Backend ve FrontEnd’in görüşebilmesi için gerekli policy yazılacak.
  4. DMZ’deki makine FrontEnd yapılacak.
  5. ISA Server’da DMZ’deki serverın mail göndermesi ve alması için gerekli ayarlar yapılacak.
  6. FrontEnd Server’da Forms Based Authentication yapılandırılacak.
  7. Frontend Servera SSL sertifikası yüklenecek.
  8. Sertifika’nın bir kopyası ISA Servera yüklenecek
  9. FrontEnd için bir OWA Publish rule yazılacak.
  10. Ve yapı test edilecek.

Bu aşamada ISA ve Exchange Server kurulumu konumuz dışında olduğundan dolayı bu makalede yer vermeyeceğiz. Konuyla ilgili olarak lütfen diğer makalelerimize başvurunuz.

Ve artık başlayalım …

 

Isa Server’da Yapılacak işlemler

İşe ilk önce ISA Server’da bir rule yazarak başlayacağız. Birkaç network objesi oluşturup basit bir rule yazacağız. Buradaki amacımız, Lan’daki Backend server ile DMZ’deki FrontEnd serverın görüşmesini sağlamak olacak.
Önce Isa Server yönetim konsolunu açalım. Konsolu açtıktan sonra aşağıdaki gibi bir ekranla karşılaşacaksınız. ( Şekil 2 )

Şekil 2- ISA Server 2004 yönetim konsolundaki Firewall Policy alanı.

Burada ilk önce Hem Front End Server hemde Backend Server için birer computer objesi oluşturmamız gerekiyor. Yukarıdaki şekildeki gibi Toolbox’ı ardından Network objects’i açın ve “New” butonuna tıklayarak “Computer” ı seçin.

Şekil 3- FrontEnd için oluşturacağımız obje’nin ayarları.

Şekil 3′de de görüldüğü gibi Name kısımına FrontEnd’in ismini yazın. Bu isim tamamen size kalmış ve makinenin gerçek ismi olması gerekmiyor. Ben Kısaca FEX diyorum buna. “Computer IP address” kısımına FEX’in IP adresini yazın. Dilerseniz “Description” bölümüne de  basit bir açıklama girebilirsiniz. İşinizi bitirdikten sonra da OK’e tıklayın.
Yukarıdaki yolla bir computer objesi de  Backend için oluşturacağız. Yapılandırma aşağıdaki şekildeki gibi olacaktır ( Şekil 4)

Şekil 4 – Backend içini oluşturulacak Computer objesinin ayarları

Bu objeyi de oluşturduktan sonra yaptığınız değişiklikleri kaydetmeniz gerekiyor. Bunun için ISA Server management console ana penceresinde (Şekil 5) appy butonuna tıklayın :

Şekil 5 – Apply butonuna tıklayarak değişiklikleri kaydedin.

Unutmayın, ISA Server’da yaptığınız her değişikliği Apply butonuna tıklayarak uygulamak zorundasınız, yoksa çalışmayacaktır. Eğer bir hata yaptıysanız, basitçe discard butonuna tıklayarak değişikliği geri alabilirsiniz.
Şimdi ISA Serverda FEX ve BEX’i görüştürmek için gerekli kuralımızı yazalım. Bunun için ISA Server Firewall Policy ekranında Tasks’ı seçin ve New Access Rule linkine tıklayın ( Şekil 6 )

Şekil 6 – Yeni bir erişim kuralı yazacağız.

Linke tıkladıktan sonra bir kural sihirbazı başlatılacaktır. Önce kurala bir isim verelim. Ben kurala FEX to BEX diyeceğim ( Şekil 7 )

Şekil 7- Kuralınıza bir isim vermek zorundasınız.

Kurala bir isim verdikten sonra bu kuralın bir izin kuralı mı yoksa bir yasaklama kuralımı olduğunu belirlemelisiniz. ( Şekil 8 )

Şekil 8 – Bu bir izin mi yoksa bir yasaklama kuralımı olacak ?

Biz burada “Allow” seçeneğini seçerek bir izin kuralı oluşturacağız. Zaten ISA Server normalde her şeyi yasaklar. Sizin gidip nelere erişmek istiyorsanız bunları için birer rule oluşturmanız gerekiyor. Next diyerek devam edelim.
Bir sonraki adımda hangi protokollere izin vereceğiniz belirlemelisiniz. Exchange Server çok sayıda port kullanır, buları tek tek girmeniz gerekir. Ancak bizim yazacağımız erişim kuralında trafik sadece iki Exchange Server arasında olacağı için “all outbound” seçeneğini seçeceğiz. Yani iki Exchange server birbirine her protokolü kullanarak ulaşabilecek. ( Şekil 9 )

Şekil 9 – All outbound traffic ile bütün trafiğe izin verin.

Daha sonraki aşamada Access Rule Sources adında bir ekranla karşılaşırsınız. Bu ekranda Trafiğin kaynağını belirlemeniz gerekir. Yani paketler hangi networkden gidecekler. Burada biz Computers altından daha önceden oluşturduğumuz FEX ve BEX adlı bilgisayar objelerini seçeceğiz. Yani kaynak hem front-end hem de Exchange olacak.
Bu bize kolaylık oluşturacaktır. Çünkü iki kural yazma zahmetinden kurtulacak, bir seferde erişimi sağlayacağız. ( Şekil 10 )

Şekil 10 – Oluşturduğunuz computer objelerini kurala dâhil edin.

Objeleri tek tek seçerek add butonuna tıklayın. Sol taraftaki ana ekranda yerlerini aldıklarını göreceksiniz. Bilgisayarlar source kısmına eklendikten sonra next butonuna tıklayıp devam edin. Bir sonraki ekranda Bu sefer bize Destination yani hedef’in neresi olduğunu sonran bir ekranla karşılaşacağız. Bu ekran Sources ekranıyla aynı olduğu için screenshot eklemeye gerek görmedim. Burada yapacağımız şey yine HEM FEX hem de BEX computer objelerini eklemek olacaktır ( Şekil 11 )

Şekil 11- Destination yine FEX ve BEX olacak.

Sonraki aşamada bize bu sefer, hangi kullanıcıların bu trafiği kullanacağını sonra bir user sets isimli ekranla karşılaşacağız. Burada varsayılan olarak all users adlı bir ön tanımlı user set kullanacağız. Yani buraya dokunmuyoruz. All users diyoruz çünkü bizim Exchange serverlarımız ISA Secure NAT clientları.

Başka bir deyişle Default gateway olarak ISA serverın ip adresini kullanıyorlar. Ve SecureNAT clientlarda authentication yapılamayacağı için burada her kullanıcıyı temsil eden All users kullanacağız ( Şekil 12 )

Şekil 12 – All users adlı user set i seçiniz.

Nex butonuna tıklıyoruz. Bundan sonraki aşamada herhangi bir konfigurasyon ekranı çıkmayacak karşımıza. Sonraki aşamadaki özet ekranına ve son aşamadaki finish ekranında OKleyerek sihirbazı bitiriyoruz.
Sihirbaz tamamlandıktan sonra değişiklikleri Apply ederek uyguluyoruz.. Böylelikle ISA Serverdaki ilk yapılandırma tamamlanmış oluyor.
Elbette ISA Serverda yapacaklarımız bu kadar değil ama onlarıda ilerleyen aşamalarda gerçekleştireceğiz.
Bir sonraki makalemde görüşmek üzere, iyi günler
ÖZGÜR KOLUKISA