Etiket arşivi: ipsec

IPsec (IP security) – Bolum 2

 

Teknolojideki gelişmeler, bilgisayarı hayatımızın vazgeçilmez bir parçası haline getirmiştir. Günlük yaşantımızda yaptığımız pek çok eylem de biz fark etmesek te onlar vardır. Bu denli fazla bilgisayar kullanımı bize pek çok kolaylık sağlamaktadır.

Eskiden tutulan muhasebe defterleri şimdi, iki tıklama ile karşımızda, bankalara gidip para yatırmak yerine yine internet bankacılığını kullanarak oturduğumuz yerden istediğimiz kişiye para yollayabiliyoruz.  Aslında bu temel iki örneğin dışında bilgisayarın faydaları saymak ile bitmez. Benim de bu makaledeki amacım gelişen teknoloji ile hayatımıza giren bilgisayarın oluşturduğu tehditlerin IPSec uygulamaları ile nasıl engelleneceğini göstermek olacaktır.

 

Makalemin ilk bölümünde IPSec ile ilgli gerekli açıklamaları yaptığım için bu makalemde örnek bir senaryo ile IPSec uygulamasını anlatmaya çalışacağım. Senaryomda şirket içerisinde çalışan bir mail server ve onu kullana şirket çalışanları bulunmaktadır. Böyle bir ortamda IPSec olmadan gelen giden şifre bilgilerinin ve mail içeriğinin nasıl okunacağını, ardından IPSec li bir ortamda ise bunun olamayacağını göstereceğim.

 

Öncelikle Windows 2003 üzerine Mail Servisini kuruyor;

image002

 

Bunun için Windows bileşenlerinden “E-mail Services” ini yüklüyoruz.

Yükleme işlemi bittikten sonra, yönetimsel araçlardan “POP3 service” yönetim konsolunu açıyoruz.

image003

 

Konsol üzerinde “New Domain” diyerek yeni bir mail domain i tanımlıyoruz.

 

image004

 

Ben AD domain im ile aynı isimde bir mail domain i açtım istetseniz bunu farklıda açabilirsiniz. Domain açtıktan sonra ise bu domain de mailbox açıyoruz

 

image005

 

Mailbox açarken dikkat etmemiz gereken bir kutucuk vardır. Yukarıdaki şekilde de gösterilen kutucuk işaretli olduğunda, açılacak her mail hesabına ait kullanıcıda otomatik olarak AD üzerinde tanımlanacaktır. Eğer sizin kullanıcılarınız önceden tanımlı ve sadece bu kullanıcılar için mailbox açmak istiyorsanız bu kutucuğu temizlemeniz yeterli olacaktır.

 

image006

 

Server üzerinde gerekli ayarları tamamladık. Bunun ardından istemci tarafında bir yazılım ile maillerimizi kontrol etmek. Bunun için ben yaygın kullanılan “Outlook Express “ programını seçtim. Programı açtığınızda karşınıza yukarıdaki gibi bir karşılama ekranı gelir, bu ekranda isminizi yazmanız yeterli olacaktır.

 

image007

 

Mail adresinizi yazıyorsunuz

 

image008

 

Mail sunucusunu belirtiyorsunuz. ( not: benim dns sunucumda “mail” isminde bir A kaydı bulunmaktadır )

 

image009

 

Gerekli kullanıcı adı ve şifre bilgilerini belirtiyoruz ve böylece istemci kurulumunu da bitiriyoruz.

Ardından sunucu üzerine kuracağımız ethereal programı ile paketleri dinlemeye başlıyoruz. Ben kolaylık olması açısından bu programı sunucu üzerine yükledim, ancak cain vb programlar ile de ağ üzerinde herhangi bir bilgisayardan yine bu bilgileri toplamak mümkündür.

 

image010

 

Yukarıdaki şekilde görüldüğü gibi kullanıcının sadece gönder al yapması, şifresinin öğrenilmesi için yeterlidir.

 

image011

 

Veya hakan kullanıcısının administrator kullanıcısına attığı maili de görmemiz yine mümkündür. Yukarıda öncelikle mail in kimden gelip kime gittiğini buluyoruz, ardından bu paketlerin hemen devamındaki “Message Body” kısmına tıklıyoruz ve bu mesajın öncelikle subject ini sonrada içeriğini görüyoruz.

 

image012

 

Mesajın “Subject” i “deneme” . İçeriğini ise bu kodların en altında görebiliyoruz

 

image013

 

Mesajın içeriği ise “bunu okuyabiliyor musunuz yoksa 🙂 “  . Evet, işte bu kadar basit, siz bilmeseniz bile üçüncü şahısların bu bilgileri alması bu kadar kolay. Peki bu durumda trafiğimizi nasıl güvenli bir hale getirebiliriz? Bunun için ipsec şarttır.

O zaman mail sunucu üzerinde IPSec uygulaması ile bu trafiğin nasıl güvenli bir hal alacağını hep beraber görelim.

 

Start – Run  – mmc dedikten sonra karşımıza MMC konsolu açılacaktır.

 

image014

 

Konsoldan ise “ IP Security Policy Management “ konsolunu çağırıyoruz.

 

image015

 

Burada eğer “Secure Server” policy sini aktif edersek, artık istemciler, client policy sini aktif edene kadar bizim ile iletişime geçemeyeceklerdir. Yani ben mail sunucu olarak diyorum ki; bana yapılacak her türlü ip iletişiminde mutlaka ipsec isterim, istemcide hiçbir policy atanmamış ise tabii ki iletişim olmayacaktır. Ancak istemci tarafında da herhangi bir IPSec Policy atanmış ise iletişim güvenli bir şekilde gerçekleşecektir.  Bu şekilde gerçekleşen bir trafiği ethereal ile izlediğimizde sadece ESP yani Encapsulating Security Payload ibaresi görünecektir, bu verilerin yakalandığını ancak içeriğinin görünemediğini belirtir.

 

image016

 

Paketler yine yakalanabilmekte ancak paketlerin içeriği okunmamaktadır. IpSec sayesinde network üzerinde güçlü bir güvenlik sağlamış bulunuyoruz. Ama burada istememiz halinde tüm ip trafiği yerine sadece POP3 ve SMTP trafiğini IPSec ile koruyabiliriz. Bu sayede gereksiz yere sunucu her paketi IPSec ile güvenli hale getirmeyecek ve performans kaybı minimum a düşecektir. Bunun için var olan standart kurallar yerine kendimize özel bir Policy yapmamız gerekmektedir. Bunu için IP Security management Console içerisinde yeni bir policy oluşturalım.

 

image017

 

Yeni bir policy oluşturmak için “Create IP Security Policy” kısmını seçiyor ve ilerliyoruz.

 

image018

 

Karşılama ekranını geçiyoruz

 

image019

 

Kuralımıza bir isim veriyoruz.

 

image020

Bu seçenek seçili iken, gelen istekler eğer 110 veya 25 dışında ise, yani benim filtrelerimin dışında bir paket ise bu paketlere varsayılan kurallar uygulanacaktır. Ben bunu istemediğim için bu kutucuğu temizleyerek devam ediyorum.

 

image021

 

IPSec için standart kimlik doğrulama yöntemini seçiyoruz, Kerberos yerine ben uygulamada Preshared Key kullanmayı tercih ediyorum.  ( unutulmaması gereken bir nokta; eğer siz sunucu tarafında IPSec policy için kimlik doğrulama olarak Preshared key girmiş iseniz, istemci tarafındaki “client” policy sinin özelliklerinden kimlik doğrulama tipini kerberos tan Preshared Key e çevirmeniz gerekmektedir. Bunu GPO dan da yapabilirsiniz.)

 

image022

 

Kuralın tanımlama kısmı bitti ve ben detaylar kısmına geçiyorum.

 

image023

 

Şu anda kuralımda hiçbir filtremle bulunmamaktadır. Ben bir filtreleme eklemek için “Add” butonuna basıyorum, ancak sihirbazları kullanmak istemediğim için sağ taraftaki kutucuğu da temizliyorum.

 

image024

 

Karşıma standart ip filtreleri gelmektedir, yani ya tüm ip trafiğini yâda sadece ICMP trafiğini seçebiliyorum, oysaki ben tüm ip trafiğini değil de sadece bana gelen POP3 ve SMTP yani 110 ve 25 nolu TCP bağlantılarını filtrelemek istiyorum. Bunun için buraya yeni bir bağlantı filtresi ekliyorum.

 

image025

 

Bağlantı filtresi için tanımlama yapmak üzere yine sihirbazı kullanmadan add düğmesi yardımı ile yeni bir pencere açıyorum.

 

image026

 

Ben bir sunucu olduğum için istemciler bana ulaşacaklardır, istemcileri tek tek yazmak yerine “any” ibaresini kullanıyorum, yani herhangi bir makineden bana gelen paketler için manasına geliyor.

 

image027

 

Peki, herhangi bir makineden bana gelen hangi portları dikkate alacağım? POP3 ve SMTP istediğim için bu portları tek tek belirtiyorum.

 

image028

POP3 için gerekli tanımlamanın aynısını SMTP içinde yapacağım

 

image026

 

image029

 

image030

Her iki tanımlamayı yaptıktan sonra “ok” diyerek pencereyi kapatıyorum.

 

image031

 

Artık bana gelecek tüm ip trafiğinden sadece POP3 ve SMTP trafiğini seçebilecek bir filtre yaptım. Peki böyle bir durum olursa filter action, yani filtreye uygun bir paket gelirse IPSec bunun karşılığında nasıl bir aksiyon gösterecek. Bunu seçmek içinde “Filter Action” sekmesine geliyorum.

 

image032

 

Amacım mail trafiğini güvenli bir şekilde gerçekleştirmek olduğu için gelen bütün isteklerden zorunlu olarak IPSec li görüşme istiyorum.

 

image033

Pencereyi kapatmadan son kez kuralımın kimlik doğrulama sekmesine de gelip son kontrolleri yaptıktan sonra kural tanımlamayı bitiriyorum.

 

image034

Tanımlamış olduğum kuralı artık etkin hale getiriyor ve bu sayede mail sunucuya gelen bütün ip trafiğinden sadece POP3 ve SMTP trafiği IPSevli bir şekilde iletişim kuruyor ve güvenli bir bağlantı meydana geliyor.

Bunun gibi kurala istediğiniz protokolleri ekleyebilir veya çıkarabilirsiniz.

 

Güvenli günler dileği ile.

Hakan UZUNER

IPsec (IP security) – Bolum 1

 

Teknolojideki gelişmeler, bilgisayarı hayatımızın vazgeçilmez bir parçası haline getirmiştir. Günlük yaşantımızda yaptığımız pek çok eylem de biz fark etmesek te onlar vardır. Bu denli fazla bilgisayar kullanımı bize pek çok kolaylık sağlamaktadır. Eskiden tutulan muhasebe defterleri şimdi, iki tıklama ile karşımızda, bankalara gidip para yatırmak yerine yine internet bankacılığını kullanarak oturduğumuz yerden istediğimiz kişiye para yollayabiliyoruz.  Aslında bu temel iki örneğin dışında bilgisayarın faydaları saymak ile bitmez. Benim de bu makaledeki amacım zaten faydalarından çok zararlarını konuşmak ve bunlara karşı nasıl önlem alacağımızı öğrenmek olacaktır.

 

Evet, bilgisayarın yaygınlaşması ile artık her bilgiyi ve kaynağı sanal âlemde görmek mümkün oluyor, tabii ki bunun sonucu olarak kötü niyetli bir takım insanların da bu yaygın ağı kullanarak kaynaklara ulaşabileceği manasına gelmektedir.

Peki, bun nasıl gerçekleşir? Evet günümüzdeki bilgisayarların iletişiminde kullanılan temel bir protokol ikilisi vardır; TCP/IP .  TCP ve IP iki ayrı protokollerdir ve günümüz network altyapınsa temel iletişim protokolleridir. IP protokolü ( Internet Protocol ) ; temel olarak bir ağ üzerinde bulunan cihazın konumlamasını yapmaktadır. Yani bir ağ üzerinde bulunan bir bilgisayara erişmek için o bilgisayarın ip adresine ihtiyaç duymaktayız ve IP bize bu bilgisayarı adresleyerek bu konuda yardımcı olur. IP temel bir protokoldür, ancak iletişimde veri transfer garantisi vermez. IP protokolü bağlantısız (connectionless ) bir protokol olarak bilinir. Yani TCP deki gibi iletişimden önce bir doğrulama söz konusu değildir. ( link : https://en.wikipedia.org/wiki/Internet_Protocol ) , peki verinin karşı tarafa gönderilmesi nasıl sağlanıyor dersek , bunun cevabı , IP Protokolünü tamamlayan TCP Protokolüdür .

IP protokolünün 3 adet farklı versiyonu vardır, IP v4, IP v5, IP v6. Günümüzde ise IP v4 yaygın bir şekilde kullanılmaktadır.  IP Protokolü iletişimin temelini oluşturduğu için aslında IP Protokolünün güvenliği, bizim veri güvenliğimiz manasına gelmektedir. IP v4 te standart olarak bir güvenlik yoktur, yani IP Paketlerinin dinlenmesi halinde alınan paketler içerisinden veriler okunabilmektedir. Bu durum aslında veri trafiğimizin ne kadar güvensiz olduğunu gösteriyor. İşte bu noktada IP Protokolünün eksik kalan güvenlik kısmını IPSec ile doldurmamız gerekmektedir. IP v6 da güvenlik standart olarak gelmekte ancak v4 te bu güvenliği IPSec ile sağlamaktayız.

 

IpSec ( IP Security ) ; IP trafiğinin güvenliğini sağlamaktadır. Engineering Task Force (IETF) tarafından geliştirilmiş bir protokoldür ( link : https://en.wikipedia.org/wiki/Internet_Protocol ) .

IpSec temelde 3 görev üstlenir, Bunlar;

Veri gizliliği  

Veri bütünlüğü

Kimlik doğrulama

IPSec in temel 2 uygulama şekli bulunmaktadır;

 

Transport Mode = LAN üzerinde yapılan IPSec uygulamaları. Yani bilgisayarlar arasındaki IPSec uygulamasıdır. Bu uygulamada IPSec yapan her iki tarafta IPSec ten anlamak zorunda dır .

Tunnel Mode = WAN Linkler arasında ( ağ geçitleri üzerinde )  yapılan IPSec uygulamaları. Bu uygulamaya örnek olarak; şirketlerin farklı bölgelerde olan ofislerinin arasında kurulan trafiğinin güvenliğini arttırmak için IPSec uygulanır. Bu durumda IPSec yalnızca iki ofisi bağlayan network cihazları üzerinde yapılacak ancak ofislerdeki makineler ise bundan habersiz bir şekilde çalışacaktır . Bu durumda şirket içindeki trafik IPSec siz ancak ofisler arasındaki trafik IPSecli olacaktır.

 

IPSec uygulamaların örnek vermek gerekir ise;

İstemci makineler arasında, server lar arasında, server istemci makine arasında veya tunnel mode olarak çalışan iki uzak ofisi bağlayan gateway ler arasında.

 

image002

 

Peki, IPSec’in temelini oluşturan bileşenleri nelerdir?

IPSec’in bileşenleri:

— IPSec Policy

— IKE (Internet Key Exchange)

— IPSec Driver

 

IPSec Policy ;

Bilgisayarımızın IPSec yapmasını istediğimizde aktif etmemiz gereken kurallardır. Bilgisayarlarımızda tanımlı olarak gelen 3 adet standart policy bulunmaktadır. Bunları görmek için;

Start – Run  – mmc  dedikten sonra karşımıza MMC konsolu açılacaktır.

 

image003

 

Konsoldan ise “ IP Security Policy Management “ konsolunu çağırıyoruz.

 

image004

 

Karşımızda işletim sistemi yüklenmesi ile beraber gelen standart üç policy bulunmaktadır.  Bunlar sırası ile

Client: Bu policy uygulanmış olan bir bilgisayar, karşı taraftan herhangi bir istek gelmediği sürece IPSec li bir görüşme yapmaz, ancak karşı taraf IPSec önerirse cevap verir.

Server = Bu policy atanmış bir bilgisayar ( server olması şart değil ) iletişim kurmak isteyen herkesten öncelikle IPSec li bir görüşme talep eder, ancak karşı tarafta herhangi bir atanmış IPSec policy si yok ise, yani IPSec li görüşme yapma imkanı yok ise IPSec siz görüşmeye başlar.

Secure Server = Bu policy atanmış bir bilgisayar ( server olması şart değil ) iletişim kurmak isteyen herkesten IPSec li bir görüşme talep eder, eğer karşı taraf buna cevap veremez ise , görüşme sağlanamaz . Yani iletişim için IPSec şarttır.

IKE (Internet Key Exchange)

IPSec yapacak iki bilgisayar, IPSec li bir görüşme yapmadan önce IPSec standartları üzerinde bir anlaşmaya varır, buna; Security Association- SA denir, IKE nin görevide bu anlaşmayı yapmak ve yönetmektir.

IPSec Driver

Bilgisayara gelen paketlerin, bu bilgisayarda tanımlı olan IPSec Policy ile uyumlu olup olmadığını kontrol eder. Paketler uyumlu ise OSI nin daha üst katmanlarına doğru paket yol alır, uyumlu değil ise paket kabul edilmez.

 

IPSec driverını Disable etmeniz halinde IPSec çalışmayacaktır. IPSec driverını görmek için, aygıt yöneticisini açmalı, view menüsün den “show hiddin devices” seçeneğini seçmelisiniz

image005

 

Peki, IPSec bizi hangi saldırılardan hangi yöntemler ile korur?

Saldırı

DoS (Denial-of-Service)  =  Hizmet kesintisi amaçlı dağınık bölgelerden yapılan saldırılardır. Burada amaç hedef sistemden veri çalmak değil sadece sistemi “down” yaparak servis kesintisine uğratmaktır. ( link : https://en.wikipedia.org/wiki/Denial-of-service_attack )

Man-in-the-middle = Network üzerinden taşınan paketlerin yakalanarak , paketlerin içeriğinin okunması ( link : https://en.wikipedia.org/wiki/Man_in_the_middle_attack )

Spoofing  = IP , DNS , ARP vb çeşitleri vardır , amaç saldırganın kendisini gizlemesi veya gönderilen ip paketlerinde bulunan hedef ip adresi yerine üçüncü şahısın istediği bir ip adresine yönlendirme . ( link : https://en.wikipedia.org/wiki/Spoofing_attack )

Network Sniffing = Ağ ortamında hareket eden verilerin değişik programlar ile yakalanarak incelenmesidir. Yakalanan paketler üzerinde yapılacak çalışma ile network üzerinden her türlü veriye ulaşmak mümkündür.

Replay = Gönderilen paketlerin tekrar bize veya düzenli olarak bir noktaya gönderilmesi sonucu network yoğunlu ve kesilmeleri oluşacaktır.( link : https://en.wikipedia.org/wiki/Replay_attack )

Koruma

 

Authentication Header (AH) Protokolü = IPSec in temel üç görevinden sadece ikisini yerine getirir. Kimlik doğrulama ve veri bütünlüğü

Encapsulating Security Payload (ESP) Protokolü  = IPSec in temel üç görevinden üçünü de yerine getirir.

 

Bu rolleri ise detaylı olarak aşağıdaki şekilde açıklamak isterim;

Veri gizliliği  

Ağ üzerinden taşınan verilerin 3. şahıslar tarafından ele geçirilerek verilerin okunmasını engellemektedir. Yani verileri şifreleyerek ele geçirilen verilerin okunmaz bir hal almasını sağlar, bu sayede veri gizliliğini yerine getirmiş olur.

Ip Sec bu işlemi gerçekleştirmek için DES veya 3DES kullanmaktadır. ( DES = Data Encryption Standard, 3DES = Triple DES ) . Amacımız veriyi üçüncü şahıslardan korumak olduğu için, verinin ele geçmesi halinde dahi okunmamasını sağlamaktır. Bu nedenle DES elimizdeki veri paketlerini şifreleri hale getirir. Bu işlem sırasına; veri paketleri 64bit lik parçalara bölünür ve DES bunları şifreleyerek şifrelenmiş 64bit lik parçalar elde eder. 3DES te ise her bir parça 3üç kere şifrelendiği için daha güvenli olur. DES 56bit lik bir anahtar kullanır.

 

Ek bilgi ;

Şifreleme Algoritmaları Simetrik ve Asimetrik olmak üzere ikiye ayrılır;

Eğer elinizdeki anahtar ile hem veriyi şifreliyor hem de açıyorsanız bu simetrik bir algoritma dır . Ama elinizdeki anahtar ile veriyi şifreliyor, ancak açmak için farklı bir anahtar kullanıyorsanız o zaman bu asimetrik bir algoritma’dır.

Simetrik

— DES

— DESX

— 3DES

— AES (Advanced Encryption Standard)

Asimetrik

— RSA

 

Veri Bütünlüğü

Veri bütünlüğü çok kez veri gizliliği ile karıştırılır. Ancak veri bütünlüğündeki amaç; üçüncü şahısların eline geçen bize ait olan verinin değiştirilip tekrar karşı tarafa gönderilmesini engellemektir. Yani üçüncü şahıslar bu veriyi okuyabilir, bu veri gizliliği ile alakalı bir durumdur, ama verinin değiştirilmesi de son derece tehlikeli bir durumdur.

Bir örnek ile açıklamak gerekir ise; Yurt dışında üretim yapan kurumsal bir firma, yurt içindeki ofisinden üretim siparişlerini mail aracılığı ile yollamaktadır. Böyle bir firmanın gönderdiği mail de bulunan 1000 adetlik ürün siparişine, bizim araya girerek bir sıfır eklememiz bu firma için ciddi sorunlar doğuracaktır, o denenle veri gizliliği gibi veri bütünlüğü de çok önemli bir konudur.

Peki, IPSec veri bütünlüğünü nasıl koruyor? IpSec veri bütünlüğünü korumak için temelde hash fonksiyonlarını kullanır. Bu temel hash fonksiyonları; MD5 ve SHA–1 ‘ dir.

Bu hash fonksiyonlarındaki temel amaç, verinin değiştirilmesini engellemektir.  Bunun için elimizdeki verileri sabit bir parametre ( anahtar ) ile çarpıp sonuçlar elde ederiz. IPSec ile görüşen her iki tarafta bu parametreden haberdar olduğu için, mesajın değişmesi, çarpımın sonucunu değiştireceği ve beklenen paketler ile tutarsızlık oluşturacağı için, mesaj kabul edilmez.

Temel olarak yukarıdaki eylemi iki farklı hash fonksiyonu ile yapabiliriz. Bunların arasındaki temel farklıklar ise;

MD5 = verileri 512 bit lik parçalar halinde alarak 128 bit lik bir çıktı oluşturur.

SHA–1 = verileri 512 bit lik parçalar halinde alarak 160 bit lik bir çıktı oluşturur.

 

Kimlik Doğrulama

 

IPSec; birbiri ile görüşen makinelerin kimliklerini doğrulamasını sağlayarak güvenliği arttırmış olur. Bu sayede iletişim kurduğunuz makinenin gerçekten ulaşmak istediğiniz makine olduğundan emin olursunuz.

IPSec kullanan iki makine IPSec trafiğini başlatabilmesi için aynı kimlik doğrulama metotlarını kullanması gerekmektedir.

IPSec in desteklediği temel 3 kimlik doğrulama yöntemi bulunmaktadır.

— Kerberos Authentication 

— Certificate Authority 

— Preshared Key

 

Kerberos Authentication 

Bir Active Directory Domain yapısında kullanılan temel kimlik doğrulama yöntemidir. Windows 2000 ile beraber geliştirilmiş ve günümüzde çok güvenilir olduğu kabul edilen Kerberos, IPSec yapacak ve aynı domain ortamında olan istemciler için yüksek güvenlik sağlamaktadır.

 

Certificate Authority 

Ortamda bulunan yetkili bir sertifika dağıtıcısı tarafından dağıtılan sertifikalar ile gerçekleştirilen kimlik doğrulama yöntemidir. Temelde her iki bilgisayarında güvendiği bir Sertifika dağıtıcısından alınan sertifikalar, bu bilgisayarların kimlik bilgilerinin karşı tarafta doğrulanmasını sağlar.

 

Preshared Key

Yetkili bir merci veya dağıtıcı olmadan, sadece IPSec ile görüşecek olan makinelerin kendi aralarında görüşmek için belirledikleri ortak bir anahtar kullanımı esasına dayanır. Her iki tarafta iletişim için bir anahtar belirler ve bu ortak anahtarın tutması sayesinde kimlik doğrulama gerçekleşmiş olur.

IPSec in 3 temel görevini inceledikten sonra bu görevleri yerine getirecek olan iki IPSec modelini inceleyelim ( Authentication Header (AH) Protokolü ve  Encapsulating Security Payload (ESP) Protokolü )

Authentication Header (AH) Protokolü

Temel olarak Kimlik doğrulama ve veri bütünlüğü sağlar, ancak veri şifreleme desteği yoktur. AH normal bir ip paketinde IP Header, yani paketin nereden nereye gideceğini belirleyen bölüm ile veri bölümü arasına yerleşir, böylece verileri ( MD5 veya SHA–1 yardımı ile ) imzalayarak güvenli bir iletişim sağlar.

 

image006

 

Encapsulating Security Payload (ESP) Protokolü

Temel olarak kimlik doğrulama, ver, bütünlüğü ve veri şifrelemeyi sağlar. Bu nedenle eğer şirketinizde tam bir güvenlik istemeniz halinde kullanacağınız IPSec yöntemi ESP olacaktır. ESP de IP paketini aşağıdaki şekilde değiştirir.

 

image007

 

Bu iki yöntemden herhangi biri sayesinde şirketinizdeki ağ trafiğini güvenli bir yapıya kavuşturmuş olursunuz.

IPSec in güvenlik için bu kadar avantajı varken neden herkes tüm iletişimi IPSec ile yapmaz? işte bu önemli bir soru dur. Evet IPSec güvenlik için önemli bir çözümdür, ancak bir bilgisayarda IPSec çalıştırılması ve bütün trafiğin IPSec lenmesi o bilgisayarda işlemci ve Ethernet kullanımın arttıracak ve bu bilgisayar performansında düşüş, ağ trafiğinde ise bir artışa neden olacaktır. O zaman IPSec policy lerini hangi makineler arasında uygulamalıyız? IPSec bizim için çok önemli olan server lar arasında, veya yine önemli olan server lar ile yönetici makineleri arasında uygulanmalı. Bu sayede network üzerinde sniff yapan üçüncü şahış, bir domain user ın şifresini yakalasa bile, yöneticilerin şifrelerini veya server ların arasında yönetici hakları ile çalışan servislerin şifrelerini alamayacaktır. Ancak gerek server larınız güçlü, gerek network yapınız gigabit lik ise tabiî ki bütün makinelerin arasında IPSec uygulayabilirsiniz. Bu tamamen güvenlik politikanız ve elinizdeki kaynaklar ile ilgilidir.

Güvenli günler dileği ile.

 

Makalemin ikinci bölümü tamamen uygulama ağırlıklı olup, şirket içerisinde nasıl IPSec policy uygulanacağını anlatmaya çalışacağım.

Hakan UZUNER

Vista Firewall with Advanced Security

Güvenli iletişimin önemli olduğu şu günlerde bireysel korunmanın önemine dikkat çeken Microsoft, Vista ile bir yeniliğe daha imza atmıştır. Bu yenilik, gerek ekstra koruma gerekse kullanım kolaylığı sunan Vista’nın güvenliği gelişmiş firewall aracıdır. Bu makalede Windows Vista’nın gelişmiş firewall aracının yeniliklerini inceleyeceğiz.

Güvenli iletişimin önemli olduğu şu günlerde bireysel korunmanın önemine dikkat çeken Microsoft, Vista ile bir yeniliğe daha imza atmıştır. Bu yenilik, gerek ekstra koruma gerekse kullanım kolaylığı sunan Vista’nın güvenliği gelişmiş firewall aracıdır.

Control Panel’inden veya Security Center arayüzünden ulaşılabilen Windows Firewall aracı, Windows Vista öncesi versiyonlarda bulunan firewall arayüzünden neredeyse bir farkı bulunmamakta; bununla birlikte Administrative Tools klasörü altında Windows Firewall with Advanced Security aracı bambaşka bir arayüzle ve gelişmiş özelliklerle karşımıza çıkmaktadır. ( Resim – 01 ve 02 )

image001

Resim – 01  

image002

Resim – 02

Vista’nın yeni firewall aracında önceki versiyonlarda bulunan tek yönlü port koruması yerine hem içerden hem de dışarıdan (inbound – outbound) portları izole eden gelişmiş bir koruma altyapısı bulunuyor. Bu sayede istenmeyen çıkışlar da önlenebiliyor. Vista firewall ile bir istisna tanımlamak istediğinizde bu iki filtreyi gözönünde tutmanız gerekiyor. Ayrıca Windows’un kendi servisleri için önceden oluşturulmuş istisnalar da bu arayüz kullanılarak yeniden yapılandırlabiliyor.

 

image003

Resim – 03

 

image004

Resim – 04

 

Bunların yanısıra vista firewall aracında farklı çalışma ortamları için üç adet profil barındırıyor. Bu profiller; korunmanın sadece firewall tarafından gerçekleştiği açık ortamlar (Public), korunmanın bir başka firewall (örneğin firewall barındıran adsl modem) arkasında gerçekleştiği daha güvenli ortamlar (Private) ve bir domain’in bulunduğu çalışma ortamları (Domain) için önceden oluşturulmuş konfigürasyonlar bütünü olarak karşımıza çıkıyor. Bu profillerden uygun olanı seçilebileceği gibi tümünü aktif hale getirip bulunulan ortama göre değişmesi de sağlanabiliyor. Aynı zamanda Vista Firewall aracını kullanarak güvenli bağlantı kuralları (ipsec) oluşturulabiliyor. (Resim – 03  ve 04)

Bu makalede ayrıntılı olarak değinmek istediğim konu, kural tanımlayarak istisna (exception) oluşturmak. Dilerseniz bir programın kullandığı tek bir port için yeni bir kural oluşturalım.

 

image005

Resim – 05

 

Giriş penceresinden (Resim – 02) Inbound Rules mensünü seçerek sağ tarafında bulunan Action araç kutusundan New Rule linkini tıklayarak Resim- 05’de görünen sihirbaz penceresini açalım. Burada önemli bir hatırlatma yapmak istiyorum; oluşturacağımız bu kural, firewall aracının ilk arayüzünde bulunan Inbound veya Outbound seçeneklerine göre değişecektir. Ben, Inbound seçeneği altında New Rule linkini seçtiğimden dolayı oluşturacağım kuralı da buna geöre belirlemiş oluyorum.

Hatırlatmadan sonra kaldığımız yerden devam edelim. Sihirbazın ilk sorusu, istisna tanımlamak istediğimiz program için kural türünün ne olduğudur. Burada programın kullanacağı her port için direkt olarak programın kendisine (Program), programın kullanacağı bir veya birden fazla porta (Port), windows’un kendi servislerine (Predefined) istisnalar tanımlayabileceğimiz gibi daha ayrıntılı konfigürasyonlar da yapabiliyoruz. Konuyu daha derin incelemek için bu penceredeki tercihim Custom olacaktır.

 

image006

Resim – 06

Sihirbazın sonraki penceresinde istisna tanımlamak istediğimiz programın yolunu göstermek için This program path kuralını seçip programın bulunduğu yolu Browse butonunu tıklayarak belirliyoruz. Bu pencerede All programs kuralı tüm programlar için istisna oluşturulmasını, Services kuralı ise istenilen bir veya birden fazla windows servisi için istisna oluşturulmasını sağlayacaktır. (Resim – 06 )

 

image007

Resim – 07

Sonraki pencerede belirlediğim program için iletişim protokolü (TCP), lokal portu (1863) ve gerekirse bağlantı kurulacak host’un portunu belirliyoruz. (Resim – 07 )

image008

Resim – 08

Bir sonraki pencerede ise lokal bilgisayarda bulunan bir veya birden fazla network kartına kısıtlama yapmak amacıyla ip numaralarını giriyoruz. Aynı zamanda bağlantı kurulacak host için de bu kısıtlamayı yapabiliyoruz. Bu şekilde kuralımızı noktadan noktaya iletişim gerçekleşecek şekilde sınırlama imkanımız da bulunuyor. Bu pencereyi herhangi bir konfigürasyon yapmadan geçersek lokal host’daki tüm network kartları ile herhangi bir hedef host’a bağlantı kurulmasını belirlemiş oluruz. (Resim – 08 )

image009

Resim – 09

Sonraki pencerede kuralımızın ne amaçla kullanılacağını belirliyoruz. Buradaki amacımız belirli şartlar altında bir bağlantı kurulmasını sağlamak olduğundan Allow the connection seçeneği uygun olacaktır. Eğer bağlantının güvenli bir şekilde (ipsec) gerçekleşmesini istenirse Allow the connection if it is secure kuralı seçilebilir. Bu kural sayesinde bağlantı kurulacak Host’un ve/veya Kullanıcının adını belirleyerek bağlantının sınırlarını iyice daraltabiliriz. Bu penceredeki son seçenek ile (Block the connection) önceki adımlarda belirlenen kurallar doğrultusunda bağlantının kurulmasını engellemek amacı ile kullanılabilir. Yani istenilen uygulama ve/veya port’dan bağlantı kurulamamasını sağlayabiliriz. (Resim – 09 )

 

image010

Resim – 10

Bir sonraki pencerede ise oluşturduğumuz kuralın hangi profiller için geçerli olacağını belirtiyoruz. (Resim – 10 )

 

image011

Resim – 11

 

Sihirbazın son penceresinde kuralımız için tanıtıcı bir isim ve açıklama giriyoruz. Bu adımla birlikte bir inbound rule oluşturmuş olduk. (Resim – 11 )

 

image012

Resim – 12

 

Kuralımızın son halini resim 12’deki gibi görüyoruz. Buradaki kuralların sayısının önceki firewall araçlarında bulunan kurallara nazaran çok daha fazla olduğunu görebiliyoruz. Bu durumda aklıllara gelen ilk soru, bu kuralların ihtiyaç halinde tekrar oluşturulmasının oldukça zaman alıcı bir iş olacağıdır. Tabi ki Vista’nın Firewall aracında hem sistem tarafından oluşturulan kuralları hem de sonradan oluşturduğumuz kuralların tamamını export yöntemiyle yedekleyip import yöntemiyle de ihtiyaç halinde geri yükleyebiliyoruz. (Resim 2 Action Menüsü)

 

image013

Resim – 13

 

Aynı zamanda hali hazırda çalışır durumda olan tüm kuralları görüntülemek için Monitoring menüsünü kullanılabiliyoruz. Bu bölümde sadece istisna kuralları değil, ipsec ile kurulmuş güvenli bağlantıları da izleme imkanımız da bulunmaktadır.

Burada da Vista Firewall aracı ile bütünleşik gelen, Conncection Security Rule sihirbazı ile iki host arasında güvenli iletişim (IPSec) kurmak için nasıl bir yol izleyeceğimize değineceğim.

 

image014

Resim – 14

 

Bu işlemi yapmak için sırasıyla Start > Control Panel > Administrative Tools yolunu izleyerek Resim 14’de görünen Windows Firewall with Advanced Security arayüzünü açalım. Connection Security Rules taşıyıcısına tıkladığımızda menünün sağ tarafında bulunan New Rule linki yardımı ile sihirbazımızı başlatalım.

 

image015

Resim – 15

 

Sihirbazın ilk menüsünde oluşturacağımız kuralın amacını belirtmemiz gerekiyor. Burada, hostlar arası iletişimi engellemek için Isolation, bir kural ile iletişimi engellenmiş host grubu arasından bir host’la iletişim kurmak için yani kural dışı istisna tanımlamak için Authentication excemption, iki host arası güvenli iletişim için Server-to-server, Gateway’ler arasi güvenli iletişim (ör: L2TP VPN) kurmak için Tunnel ya da gelişmiş konfigürasyonlar yapmak için Custom kurallarından birini seçebiliriz. Amacımız iki host arası güvenli iletişim kurmak olduğundan Server-to-server seçeneği uygun olacaktır. (Resim -15)

 

image016

Resim – 16

 

İkinci adımda ise hangi host’lar arası güvenli iletişim kurmak istediğimizi belirtiyoruz. Resim 16’de görüldüğü üzere tek bir host belirleyebileceğimiz gibi birden fazla host grubu veya network belirleme şansımız da var.

 

image017

Resim – 17

Sonraki adımda kuralımızın hangi şartlar altında işleyeceğini belirtiyoruz. ‘Request authentication for inbound and outbound connections’ seçeneği ile güvenli bir iletişim teklif edilir fakat karşı taraf bunu istemezse iletişim normal yollarla gerçekleşir. ‘Require authentication for inbound connections and request authentication for outbound connections’ seçeneği ile gelen bağlantılar için güvenli iletişim şartı aranır, giden bağlantılarda güvenli iletişim teklif edilir fakat kabul görmezse iletişim normal yollarla gerçekleşir. ‘Require authentication for inbound and outbound connections’ seçeneği ile her iki yönde de güvenli iletişim şartı aranır aksi halinde iletişim gerçekleşmez. Amacımıza uygunluğu açısından son seçeneği işaretleyerek devam ediyoruz. (Resim – 17 )

image018

Resim – 18

 

Bir sonraki adımda ise hostların karşılıklı olarak gerçekleştireceği kimlik doğrulama metodunu belirliyoruz. Burada, Computer certificate seçeneği ile her iki host’un güvendiği bir CA’in (Sertifika otoritesi) sertifikasını kullanarak, Preshared Key seçeneği ile iki host arasında önceden belirlenmiş bir anahtar kelime kullanarak ya da Advanced seçeneği ile gelişmiş bir veya birden fazla kimlik doğrulama yöntemini (Kerberos, NTLM vs.) kullanarak iletişim gerçekleşmesi sağlayabiliriz. Preshared Key seçeneği CA’nın ve bir domain yapısının bulunmadığı ortama uygun bir seçenek olacaktır. (Resim – 18)

 

image019

Resim – 19

 

Bu adımda ise kuralımızın hangi firewall profili ile birlikte kullanılacağını seçiyoruz. Tercihen bir veya birden fazla profili seçebiliriz. (Resim – 19)

 

image020

Resim – 20

 

Sihirbazın son adımında kuralımız için bir isim ve açıklama belirtiyoruz. (Resim – 20 )

 

image021

Resim – 21  

Kuralımızın son halini Resim – 21’deki şekli ile görebiliyoruz. 

image022

Resim – 22  

Oluşturmuş olduğumuz kural ile belirli host ve/veya network’ler ile nasıl iletişim kuracağımızı belirlemiş olduk. Firewall aracının giriş menüsünde bulunan Windows Firewall Properties linki ile ulaşabileceğimiz konfigürasyon menüsünde, gerçekleşecek IPSec bağlantılarında kullanılacak anahtar değişimi, veri şifreleme ve kimlik doğrulama işlemleri için kullanılacak yöntemleri belirleyebiliyoruz. (Resim – 22) 

image023

Resim – 23

 

image024

Resim – 24

 

Dilersek, ipsec bağlantısı için gerçekleşecek anahtar değişimi sırasında veri doğrulama (integrity) ve veri güvenliği (encryption) konfigürasyonlarını ayrıntılı bir şekilde düzenleyebilir, farklı algoritmalar kullanılmasını sağlayabiliriz. Buradaki varsayılan metodlar; veri doğrulama için SHA1, veri güvenliği için AES-128 algoritmalarıdır. Burada göz önündebulundurulması gereken bir durum vardır; algoritmaları seçerken Vista öncesi işletim sistemlerinin kullanabileceği algoritmalara uyumlu olmalarına dikkat etmemiz gerekmektedir. Aksi halinde iletişim gerçekleşmeyecektir. Örneğin Vista ipsec bağlantısında veri güvenliği için AES algorimasını desteklemekte fakat XP sadece DES ve 3DES algoritmalarını kullanabilmektedir. (Resim – 23  ve 24)

 

image025

Resim – 25

 

image026

Resim – 26

 

Aynı şekilde, ipsec bağlantısı esnasında gerçekleşecek veri doğrulama ve veri güvenliği için kullanılacak metodları da ayrıntılı olarak yapılandırabiliyoruz. Buradaki varsayılan protokol ESP (Encapsulation Security Payload) ve bu protokolün kullandığı veri doğrulama metodu yine SHA1, veri güvenliği metodu da AES-128’dir. Dilersek, veri doğrulama metodu olarak AH (Authentication Header) ve ESP protokollerini birlikte kullanabiliriz. (Resim – 25  ve 26) Konu hakkında ayrıntılı bilgi https://www.microsoft.com/technet/network/security/ipsecarc.mspx adresinden alınabilir.

 

image027

Resim – 27

 

Farklı kimlik doğrulama yontemleri için de ayrıntılı yapılandırma sözkonusudur. Resim 8’de görüldüğü üzere kullanıcı ve/veya bilgisayar için kerberos, preshared key ve sertifikalı kimlik doğrulama yöntemlerini ayrı ayrı kullanabileceğimiz gibi birden fazla kimlik doğrulama yöntemini de birlikte kullanıp güvenliği maksimum seviyeye çıkarabilme olanağımız da vardır. Burada, iki adımda kimlik doğrulaması yapabilir her adım için farklı yöntemleri (NTLMv2, Kerberos v5, User ve Computer sertifikası) kullanabiliriz. Aynı zamanda bu iki adımdan birini opsiyonel olarak da belirleyebiliriz. (Resim – 27)

Görüldüğü üzere Vista’nın Firewall aracına entegre edilmiş olan IPSec protokolü, güvenli iletişimin öneminin arttığı şu günlerde gerek kullanım kolaylığı gerekse ek güvenlik seçenekleri ile oldukça başarılı bir performans sergiliyor. Bir başka makalede görüşmek dileği ile…

Seymen URAL