1 Mayıs 2009 Cuma

Kerio Mail Programı ve Uygulamaları


Kerio mail kişisel olarak e-mail yönetiminin yapılabildiği bir programdır.Kişiler yeni hesaplar ekleyerek e-maillerini istediği şekilde yönetebilirler.Eklemiş olduğu hesaplara ait özelliklere erişebilir ve o e-mail adreslerine ait değişiklikler yapalbilirler.


KERIO MAIL PROGRAMININ KURULUMU


--Next diyerek ilerlenir.
--Complete seçilerek Next tıklanarak devam edilir
--Next diyerek ilerlenir.
-- Domain adı:deneme.com ve host adı:sunucu.deneme.com olarak girilir ve next denilerek devam edilir
--Kullanıcı adı ve şifre belirlenerek devam edilir.
--Finish diyerek kurlum tamamlanmış olur.


KERIO MAIL PROGRAMININ KULLANIMI


--Kullanıcı adı ve şifre girilerek servere'a bağlanılır.

--Add denilerek kullanıcı eklemesi yapılabilir.
--Kullanıcıya ait Bilgiler girilir ve Next butonuna basılarak devam edilir.
--Next butonuna basılarak devam edilir.
--Next butonuna basılarak devam edilir.
Kullanıcı eklemesi de tamamlanmış olmaktadır.Bu işlemlerin sonucunda program kullanıma hazır hale gelmiştir.Kullanıcılar Kerio Mail Programı ile hesaplarına bağlanarak e-posta yönetimini yapılabilirler.



Firewall

Firewall (Ateş duvarları);ağı iç ağ ve dış ağ olarak ikiye ayırarak denetimi sağlayan bir yapıdır.Dış ağdan gelen zararlı tehlikelere önlem olarak kullanılan etkili bier sistedir.Firewall, ağın içinden veya dışından gelen yetkisiz erişimleri engelleyen, süzen ve izin denetimi sağlayan yazılımlar veya donanımlardır. Ateş duvarlarını yazılımsal, donanımsal veya her ikisinin de bir arada olduğu gruplara ayırabiliriz. Aslına bakarsanız donanımsal olanların üstünde de bir çeşit gömülü yazılım (firmware), BIOS vs ismi altında yazılımlar çalışmaktadır.Ateş duvarı deyince sadece bizi dışarıdan gelen saldırılara karşı koruyan birşey düşünmemek gerekir. Gelişmiş ateş duvarları bunların dışında NAT (Ağ Adres Çevrimi), VPN (Sanal Özel Ağ) gibi teknolojileri de bize sunarlar.


Firewall Üzerinden Yapabileceğimiz İşlemler
Girilecek olan IP aralıkları belirlenip onların dışına çıkılması yasaklanabilir.Virüs taraması yapılabilir.Virüslü dosyaların gönderimi ve alımı engellenebilir.Sözcükler belirlenip o sözcükleri içeren web sitelerine giriş yasaklanabilir.İçerik iltesi yapılabilir.Örneğin akademik sitelere erişim için yasaklar kaldırılabilir veya cinsel içerikli sitelere erişi yasaklanabilir.Herhangi bir adrese olan erişime engel konulabilir ve son olarak ta internetin bant genişliği ayarları yapılabilir.Band genişliğini belirli bir seviyeye değiştirebiliriz.


WINS: Microsoftun çıkarmış olduğu bir yapıdır. TCP/IP üzerinde NetBIOS kullanan yönlendirilmiş ağlardaki NetBIOS ad çözümlemesinde kullanılan bir yapıdır.Host adı ile Ip dönüşümünü içerisinde barındırır.Aynı zamanda, kendine bildirilen kayıtları listeler haline tutar ve istendiği takdirde onları verebilen bir yapıdır.

NFS: Sun firmasının geliştirmiş olduğu bir yapıdır.

SMB: IBM tarafından geliştirilmiş bir yapıdır. Türkçe karakterleri içerisinde barındırmaz ve DOS işletim sisteminden beri kaynaklarını paylaştıran bir yapı olmuştur.

Active Directory

Active Directory, Ağ üzerinde bulunan tüm bilgilerin (örneğin kullanıcılar, gruplar , bilgisayarlar vb.) depolanmasını sağlayan ve bu bilgilerin kullanıcılar ve yöneticiler tarafından kolayca kullanılmasını ve bulunmasını sağlayan bir servistir. Ayrıca güvenlik, oturum açma sırasında kimlik denetimi gibi işlemlerde Active Directory ile bütünleşik olarak çalışmaktadır.
Microsoft ağlarında kullanılan dizin hizmetidir.
Bu veritabanı, kullanıcılar, bigisayarlar, mekanlar, yazıcılar gibi organizasyonun tüm bilgilerini saklar. Bu dizin vasıtasıyla çeşitli yönetimsel kısıtlamalar oluşturulabilir ya da kullanıcıların çalışma ortamları ihtiyaçlar ve standartlar doğrultusunda şekillendirilebilir. Bu şekillendirmeler Grup İlkesi sayesinde yapılır.

Active Directory'nin ilk uygulaması, Windows Server 2000 ile gerçekleşmiştir. LDAP uyumlu bir veritabanıdır.
Active Directory'nin Genel Özellikleri
-Tek bir noktadan yönetim
-Organizasyon
-Yönetim
-Kontrol

Active Directory'nin Genel
Özellikleri
-Network’ün domain olarak adlandırılan birimler halinde düzenlenmesini sağlar.
-Kullanıcıve grupların listesini merkezi olarak tutar.
-Kullanıcıve grupların ancak gerekli izinlere sahip olmasıdurumunda kaynaklara erişmesini sağlar.
-Domain içindeki nesnelere birçok özelliklerinden erişimi sağlar.
-Domainin OU adıverilen alt parçalara bölünmesini sağlar. Bu yönetimin delege edilmesini sağlar

Web Services (Web Servisleri)

Bu sistem http protokolü üzerinden çalışan bir yapıdır.Veri depoları etiketleri arasında tanımlanmıştır.Web'in 2.0 ve sonrası sürümlerinde etkisini gösteren bir kavramlardandır.Bilgiler "XML" formatındadır.Kullanıca bilgi vb konularda yardımcı olmaktadır.Farklı noktalardan girilen bilgilerin farklı işlenmesini sağlar. Verinin istendiği gibi yapılandırılmasını sağlar. XML herhangi yapısal bilginin saklanmasında ve farklı işleme ortamlarında bilginin transferinin mümkün olmadığı koşullarda bilginin evrensel yapılandırılması için kullanılmaktadır.XML, farklı türdeki ve yapıdaki dokümanların tanımlanması için kullanılan uluslararası bir standarddır.Bilgi içerikli metin ifadeler olduğu dolayısıyla güvenlik tehditleri çok fazladır.İki türlü güvenlik önlemi mevcuttur;
Simetrik şifreleme: Belirli anahtara bağlı kalınarak oluşturulan bir şifreleme türüdür. Anahtar karşı PC tarafından bilineceğinden kullanımı büyük riskler taşımaktadır.
  • Blow Fish: Eski bir algoritmaya sahiptir. En temel şifreleme algoritmalarına sahiptir.
  • Idea: Gelişmiş bir şifreleme standardıdır.Ücretli ve lisanslı kullanımı gerekmektedir.Bu sebeple de çok yaygınlaşmamıştır.
  • 3Des: Daha önce IBM tarafından geliştirilmiş olan Des'’in gelişmiş bir halidir.Birçok farklı anahtar ve daha gelişmiş güvenlik yapıları vardır. Günümüzde de bankalar bu standardı kullanmaktadırlar.
  • Twofish: Gelişmiş bir şifreleme standardıdır.Kullanımı çok yaygın değildir.
  • AES: Yaygın olarak kullanılan şifrelemedir. zip şifrelemede kullanılır.
  • RC4 ve RC5: Günümüzde en çok kullandığımız bir algoritma yapısıdır.Şifreleme yapısı olark en çok tercih edilenlerdendir.Bu şifrleme algoritması da lisanslı olup kullanım için ücret verilmesi gerekmektedir.

Asimetrik şifreleme: Günümüzde daha çok kullanılan bir şifreleme yapısıdır.. Bağlantı sırasında karşı taraftaki bilgsayara anahtarı aynen göndermez.Bu da simetrik şifrelemeye göre daha çok tercih edilmesinin sebebidir.Gönderilen anahtar asimetrik bir yapıya sahip bir anahtar olmaktadır.Çeşitli yapıları vardır;

Açık Anahtar: Açık bir anahtar yapılanmasına dayanan bir sistemdir. Güvenlikte önlemler bir 3. kişiye bağlıdır.Belirli bir süreç içerisinde gerçekleşen bir yapıdır. Bu 3. kişi istemci ve kullanıcı tarafından kabul gören bir sertifika otoritesidir.Tanımlanacak olan genel ve özel anahtarlar sertifika otoriteleri tarafından tanımlanmaktadır.

Nesnelerin Ağ Üzerinden Aktarılmasının 2 protokolü vardır.

a) RTSP Komut Yapısı
(Gerçek Zamanlı Akış Protokolü)
  • Describe: Listelere ulaşmak için kullanılan medya parametrelerini listeler.
  • Teardown: Veri aktarımı keser.
  • Play: Sunucudan istemciye veri akışını başlatır.
  • Record: İstemciden sunucuya veri aktarımını başlatır.
  • Pause: Veri aktarımını durdurur.
  • Setup: Oynatıcı ve kullanıcı arasında mantıksal bir kanaldır.

b) Voip:
İnternet protokolü üzerinden ses aktarımı yapar. 3. Katmanla IP üzerine yapılandırılmıştır.İnternet üzerinden ses taşınmasını sağlayan bir yapısı bulunmaktadır.

H323 protokolü:

Telefon sinyallemesi yapan bir sistemdir.Daha önceleri var olan bir yapı olan POTS sistemi yerine geçimş bir sistemdir.
Adresleme olrark telefon numarasının kendisini kullanır.mesaj formatı ikili kodlar ile yapılmaktadır.Arama sonlandırması komutla veya tcp bağlantısının kesilmesi ile gerçekleşir.Geişmiş bir yapıya sahiptir.Kurulacak olan iletişimin nasıl tanımlanacağını belirler.RFC ile tanımlanmış bir yapıdır.Telefonlarla genelde uyumlu çalışmaktadır.ASCII kullanır. Gelişmekte olan bir yapıdır.Yapısında url de tanımlanmışır.

IIS üzerinden Web Sitesi Oluşturma ve Yayınlama

IIS Üzerinden Bir Web Sitesi Oluşturmak ve Yayınlamak
Windows Server 2003 sistemi üzerinden bir Web sitesi oluşturmak için yapılacak ilk işlem bilgsayarım sağ tıklanarak yönet denilerek Internet Informatiomn Service menüsüne erişilir.Biz kuracak olduğumuz Web sitemiz için IP 'mizi 10.0.0.5 olarak tanımlayacağız ve host adresi olraak da: http://www.kanarya.org/ vereceğiz.Bu işlemler sırasında Web sitemize ait dosyaların yeri default olrak bırakılmayacak biz dosyalarımızı C:/kanarya dizini içerisinden çağıracağız.Arkadaşlar yapacak olduğumuz bu site bir php tabanlaı bir site oluğ kullnacak olunan uzantımız ise sitemiz php olduğundan kullanacak olduğumuz ISAPI dosyası için php5isapi.dll adlı kütüphane dosyamız kullanılacaktır.




Yapılacak ilk işlem Bilgisayarım sağ tıklanarak ,Bilgisayarı Yönet seçilir
Internet Information Service kısmından web sitesi klasörüne tıklanır


Karşımıza "Web sitesi oluşturma sihirbazına hoşgeldiniz" mesajının gelmesinden sonra ileri butonuna basılır ve devam edilir.


Web sitemizin adresinin www.kanarya.org olarak tanımlıyoruz.Bu web sitemizin host adresi olmaktadır.

Web sitesi için kullanılacak IP ve TCP bağlantı noktası seçilir
ana üst bilgisi www. kanarya.org olarak yazılır


Web sitesi için giriş dizini belirlenir.Web sitemizi hangi dizinden çağıracaksak onu belirteceğiz.

Web sitesi erişim izinleri belirlenip, İleri butonu tıklanır.


Adresi kanarya.org'un olan sitemizin özellikleri belirlenir ve Web sitemizin TCP ve IP gibi kimlik bilgileri tanımlanır

Kaynak içeriğinin alınması gereken yer belirlenir.Uygulama ayarları yapılır.
Çalıştırma izinleri ve uygulama havuzu belirlenir.hangi uygulamalara izin verilip verilmediği belirlenir.

Uygulama yapılandırması yapılır.

Uygulama uzantısı eşlemesi ekleme ve düzenle seçenekleri yapılır
Tüm filler seçilir. çalıştırılabilir ve dahil hat seçilir.

Gerekli uygulama yapılandırması seçeneğinden "ISAPI uzantılarını ön belleğe al kutucuğu seçilir ve Tamam'a tıklandıktan sonra web sitesi oluşturma gerçekleşir.Arkadaşlar artık Windows Server 2003 işletim sistemi üzerinden IIS hizmeti ile bir Web sitesi tanımlamış olduk.

26 Nisan 2009 Pazar

SMTP, POP3 ve IMAP Protokolü ve Uygulamaları


Kişilerin bilgisayarlar aracılığıyla elektronik ortamda birbirleri ile haberleşmelerini sağlayan temel yapıya e-mail (e-posta) denilmektedir. E-posta (electronic mail, e-posta), haberleşme ve iletişim için kullanılan servislere verilen genel isimdir.Elektronik posta, ya da e-mail internetin belki de en çok kullanılan özelliğidir. Internete, ya da Internete bağlı olan herhangi bir ağa bağlı olan herkese mesaj gönderebilirsiniz.Temel olarak internet ağı üzerinden iletişimi sağlayan bir yapıdır.Bu iletişim sırasında e-posta adresleri kullanılır;
Email adresleri iki kısımdan oluşmaktadır.Bu iki kısım "@" işareti ile birbirinden ayrılmaktadır. Örneğin; "sedvur@hotmail.com" burada ilk kısım yani "sedvur" kullanıcı adını belirtmektedir.İkinci kısım yani "hotmail.com" ise mail servisini sağlayacak olan adrestir.Bu mail hizmeti veren host'un adıdır.

Her E-Mail'de Bulunan Temel Yapılar

From: Bu kısma; e-posta'yı gönderen kişinin e-posta adresi ,adı ve soyadı yazılmaktadır.Örnek; from:sedvur@hotmail.com Samet Sedat VURAL gibi

Subject: Bu kısıma; gönderilecek olan e-postaya konu belirlenip içeriğe uygun bir tanımlama yapılmaktadır.Örnek;ÇOK ACİL,Beni acil olarak ara vb...gibi

To: Bu kısma , e-posta'yı göndereceğimiz kişi veya kişilerin e-posta adresleri yazılmaktadır. Gönderilecek kişi sayısı 1'den fazlaysa adresler aralara virgül veya noktalı virgül konarak (bazı sistemlerde bir boşluk bırakılarak) yazılmaktadır.Örnek; To: sedvur@hotmail.com; s.sedatvural@hotmail.com; gibi

Cc: Bu kısma, e-postanın kopyasını başka bir kişiye ya da kişilere (posta içeriği ile doğrudan ilgili olmayan kişilere mesela) göndereceksek, onların adresleri yazılır. (Cc : Serdar VURAL gibi)

Bcc: Bu kısım Cc ile aynıdır fakat yalnız, maili alan kişiler To: ve Cc: alanlarındaki bilgileri görebilmelerine karşin, Bcc: alanındaki bilgileri göremezler Örnek; Bcc: S VURAL. Bazen, size gelen bir iletiyi bir başkasına aynen iletmeniz gerekebilir. Bunu sağlayan mekanizma, mailin baş kısmında "Forward:" seklinde görülür. Kullandığınız e-posta programları, standart olarak, bir maili başkasına "aynen gönderme" seçeneklerini size sunarlar. Elektronik postaların baş kısmında daha değişik alanlar da vardır.

E-Mail Protokolleri

Bir e-posta sunucusu genellikle SMTP(Simple Mail Transfer Protocol) adı verilen ve 25 numaralı uygulama portunda çalışan E-Posta Transfer Ajanı (MTA) aracılığı ile e-posta alıp gönderir. Hem gelen hem de giden e-posta bu port üzerinden hareket eder. Sadece hareket yönleri farklıdır ve bu işlemi bildiğimiz bir posta ofisine benzetebiliriz. İki e-posta sunucusu aralarında konuşmaya başladıklarında ilk olarak SMTP protokolüne özgü olarak el sıkışma diye tabir edilen safhayı gerçekleştirirler. O anda her sunucu hangi kullanıcıdan hangi kullanıcıya e-posta göndereceği ve alınacağı konusunda birbirlerine gerekli bilgileri verirler ve eğer alıcı sunucuda ilgili e-posta hesabı var ise data akışı başlar. Bu safhada bir çok farklı kontrol yapılabilir ve istenmeyen e-postaların engellendiği filtreler çalıştırılabilir.

Data akışının sonlanmasından sonra alıcı sunucu eğer gelen mesajı başarı ile alabildi ise gönderici sunucuya bunu onaylar ve kendi içinde yapması gereken işlemleri başlatır. Şu anda asıl amaç gelen e-postanın ilgili kullanıcının kutusuna uygun şekilde teslim edilmesidir. Bunun evvelinde virüs kontrolü, istenmeyen e-posta süzgeçleri ve ayrıca kullanıcıya ya da e-posta sunucusuna özgü e-posta kabul etme filtreleri çalıştırılabilir. E-posta tüm bu kontrolleri geçtikten sonra halen elenmedi ise ilgili kullanıcının e-posta kutusuna koyulacaktır.

Bundan sonrası kullanıcının e-postayı kendi kutusunda web üzerinden okuması ya da kullandığı e-posta alma protokolüne göre kendi sistemine getirmesi ile devam eder. POP3 veya IMAP adını verdiğimiz protokoller bu andan itibaren kullanılmaya başlanır. Tüm bu işlemler yapılırken kullanıcıların adları ve şifreleri tüm safhalarda tek tek kontrol edilmektedir. Yanlış kullanıcı adı veya şifre ile işlemler gerçekleştirilemez.

1.SMTP Protokolü (Basit Posta Aktarım Protokolü)

E-posta gönderme protokolü (Simple Mail Transfer Protocol), bir e-posta göndermek için sunucu ile istemci arasındaki iletişim şeklini belirleyen protokoldür. Sadece e-posta yollamak için kullanılan bu protokolde, basitçe, istemci bilgisayar SMTP sunucusuna bağlanarak gerekli kimlik bilgilerini gönderir, sunucunun onay vermesi halinde gerekli e-postayı sunucuya iletir ve bağlantıyı sonlandırır.25 numaralı port SMTP sunucusu için ayrılmıştır.

E-posta almak için POP3 ya da IMAP protokolü kullanılır.Ücretsiz hizmet veren büyük e-posta servisi sağlayıcıları da SMTP ve diğer e-posta gönderim ve kontrol protokollerini desteklemeye başlamışlardır.Outlook, Eudora, Kmail, Thunderbird, Evolution, Sylpheed gibi e-posta istemcileri, e-postalarınızı gönderilmek üzere sunucunuza iletirken SMTP servisinden faydalanırlar.

SMTP server bazı basit text komutlarını anlayabilir. En çok kullanılan komutlar :

HELO : kendini tanıtmak için kullanılır.

EHLO : kendini tanıtıp, erişim istemek için kullanılır.(daha gelişmiş bir selamlama mesajı olarakta tanımlanabilir.)

MAIL FROM : göndericiyi tanımlamak için kullanılır.

QUIT : oturumu kapatmak için kullanılır.

RSET : reset olarak kullanılır.

HELP : Komutlar hakkında yardım almak için kullanılır

RCPT TO : Alıcıyı özelleştimek için kullanılır..

DATA : Mesaj gövdesini tanımlamak için kullanılır. ( to, from ve subject ilk üç satır olmalıdır. )

VRFY : Adresi tanımlamak için kullanılır.

EXPN : Adresi genişletmek için kullanılır.



2. POP3 Protokolü

Pek çok e-posta sistemlerinde SMTP yanında ikinci bir servis daha vardır : POP (Post Office Protocol). POP servisinin işlevini ikiye ayırarak anlatmak daha uygundur;

Standart SMTP, size bir mail gönderildiğinde bu maili, gideceği yere ulaşana dek yönlendirerek iletir (routing). Eğer mailin son varış noktasına ulaşılamıyorsa (bağlantı kopukluğu) SMTP daha sonraki bir zamanda (1 saat sonra vb) aynı maili tekrar göndermeye çalışır. Eğer uzunca bir süre sonra mail hala gönderilememişse size bir hata maili ile birlikte mailinizi geri gönderir. Bunun önune geçmek icin kullanılan sisteme POP (ya da şu anki haliyle POP3) adı verilir. POP3 servisi bir posta kutusu vazifesi görür ve gelen maillerin gideceği yere aktarılması yerine bu kutuda tutulmasına olanak tanır. Daha sonra, kullanıcı bu POP servisine bağlanıp kendi maillerini kendi sistemine aktarır.

İkinci kullanım, mantık olarak yukarıdaki ile aynı olmasına rağmen işlevsel olarak farklıdır. Bu internet- kişisel bağlantılarında karşımıza çıkar. Evden, işyerinden yapılan SLIP/PPP türü bağlantılarda size gelen mailleri almak ve okumak için POP3'ü destekleyen e-posta programlarının (Eudora, Netscape mail gibi,) kullanılması çok büyük avantajlar sağlar. Bu şekilde, makinenizi açmadan posta kutunuzdaki tüm mailleri kısa surede alır; sonra bağlantıyı kapatır ve maillerinizi okursunuz (off reader). İsterseniz cevaplar yazar, daha sonra tekrar slip/ppp bağlanarak maillerinizi SMTP servisiniz üzerinden gönderebilirsiniz. Böyle bir kullanım size çok büyük zaman kazandırır.

3.IMAP Protokolü

IMAP (Internet Message Access Protocol; İnternet Mesaj Erişim Protokolü), bir e-posta iletişim protokolüdür. 1986 yılında Stanford Üniversitesi'nde geliştirilmiştir.IMAP4 olarak de bilinen IMAP, yerel kullanıcıların uzaktaki bir e-posta sunucusuna erişmesini sağlayan bir uygulama katmanı protokolüdür. En son sürümü IMAP sürüm 4 Revizyon 1 (IMAP4rev1) olup, RFC 3501'de tanımlanmıştır. IMAP4 TCP/IP protokolü üzerinde 143. portu kullanarak çalışır.

Eposta sunucularından mesaj çekmek konusunda yaygın protokollerden biridir. Modern E-posta sunucularının neredeyse tamamı tarafından desteklenir
IMAP'ın Uygulanması

Genel kullanımda, bir kullanıcının e-posta istemcisini (Outlook, Apple Mail, Outlook Express, Thunderbird ; Hotmail ve Gmail web arabirimleri vb.) kullanarak yolladığı e-posta mesajları, önce kullanıcının oturum açtığı e-posta sunucusu tarafından kabul edilir ve genellikle SMTP kullanarak alıcının posta kutusunu içinde barındıran başka bir e-posta sunucusuna gönderilir. Bu aşamada alıcının göndericinin mesajlarına ulaşabilmesi için bunu e-posta istemcisi ile çekmesi gereklidir. Fakat SMTP tek yönlü bir protokoldür (sadece gidiş). Kullanıcının isteği üzerine posta kutunuzda bulunan e-posta mesajının istemcinize inmesini sağlayamaz. Bu aşamada yapılandırmaya bağlı olarak POP3 veya IMAP devreye girerek ilgili mesajın oturum açmış ve talep etmiş istemciye çekilmesi sağlanır.

IMAP ve POP3 kullanımı arasındaki temel fark IMAP ile E-Posta sunucusuna bağlantı kurulduğunda, kutuda birikmiş e-postaların sadece başlık bilgilerini istemciye getirir.POP3 ise bütün mesajları istemciye çeker.Genel prensip olarak kullanıcı ve e-posta sayısının çokluğuyla doğru orantılı olarak kullanılır. Uygulamada web postası kullanan neredeyse bütün sunucularda IMAP protokolü kullanılır.


IMAP'ın POP3'e göre avantajları

Bağlantı şekli açısından bakıldığında;Bir e-posta sunucusuna POP3 ile bağlanıldığında bütün yeni mesajlar istemciye çekilir ve bağlantı kapatılır.IMAP kullanıldığında oturum açıldıktan sonra bağlantı sadece istek olduğu durumlarda açık kalır.(Bir mesajın açılması ve içeriğinin görüntülenmesi gibi).

Büyük boyutlu posta kutularında bu özellik içeriğin görüntülenmesini de sağlar.Çoklu kullanıcı desteği açısından bakıldığında;POP3 aynı posta kutusunda aynı anda tek kullanıcıyı destekler.Tersi durumda işleyiş tarzı sorun yaratır.IMAP ise çok kullanıcıyı destekler.Bir kullanıcının yaptığı değişiklik eş zamanlı olarak diğer oturum açmış kullanıcı tarafından görülebilir.

HTTP Protokolü

HTTP PROTOKOLÜ

Hypertext Transfer Protocol (HTTP) (Köprü Metni Aktarım Protokolü) Web sunucuları ile Web tarayıcılarının Internet üstünden birbirleri ile haberleşmek için kullandıkları ortak dildir. Bu protokol kullanıcı ile sunucu arasındaki mesaj alısverisinin hangi formatta olacagını belirler. Güvenilir bilgi iletimi gerektirdigi için mesajlar TCP baglantısı ile iletilir. Dolayısıyla kullanıcı ile sunucu arasında bir bilgi alısverisi olmadan önce, iki nokta arasında TCP baglantısı kurulur. 80 numaralı TCP portunu kullanır. HTTP’de aktarılan veri dosya olmak zorunda değildir.Bu nedenle aktarılan nesneler hipermetin olarak isimlendirilir.Web siteleri büyük küçük bir çok dosyadan oluşur.Bir istek geldiğinde bu dosyaların hızlı bir şekilde aktarılması gerekir.Bu aktarma işleminde ftp yetersiz kaldığı için HTTP protokolü tanımlanmıştır. HTTP kalıcı bağlantıları desteklemez .İstemciden bir istek gönderildiğinde sunucu ile bağlantı kurulur cevap gelir ve bağlantı kesilir.HTTP 1.1 sürümü kalıcı bağlantılara destek vermektedir.Fakat yaygın kullanılmamaktadır.Bunun sebebi birden fazla kullanıcıya hizmet verirken zaman sorunları. HTTP bir 7.katman protokolüdür ve smtp’de olduğu gibi MIME yapısına benzer bir yapı tanımlanmıştır.Bir Web tarayıcısı bir web sayfası talep ettiğinde, Web sunucusuna bir request/istek gönderir. Bu istek mesajında bir Header (başlık) ve belli durumlarda bir Body (gövde) kısmı bulunur. Web sunucusu da bu istek mesajına bir response/yanıt mesajı ile karşılık verir. Bu yanıt mesajında da her zaman bir Header ve çoğu zaman bir Body kısmı bulunur.HTTP bir istek/yanıt protokolüdür. Her yanıttan önce bir istek verilmiş olmalıdır.Her ne kadar istek ve yanıt mesajlarının içerdikleri bilgiler farklı olsa da Header/Body yapısı ortaktır. Header’da mesajla ilgili Meta-bilgileri, Body’de mesajın içeriği bulunur.
Http ‘nin İstek Komut Yapısı
----------------------------------------------------------------
KOMUT PARAMETRE HTTP SÜRÜMÜ
----------------------------------------------------------------



HTTP isteğinin ilk satırı istek yöntemini, istenilen kaynağın URL’sini ve protokolün sürümünü içerir.

  • İstek komutları büyük ve küçük harfe duyarlıdır ve her zaman büyük harf ile yazılırlar.
  • HTTP’de tanımlanmış birkaç farklı istek yöntemi olmasına rağmen Web sunucu tümünü her bir kaynak için desteklemiyebilir.
  • Bu yöntemlerin en yaygınları GET, HEAD ve POST’tur.

    Bazı HTTP Komutları

  • GET: Dosya çağırma komutudur.

  • HEAD: Get komutuna benzer ancak sadece başlık bilgilerini gönderir.
  • POST: Postun farkı parametre içermesidir.
  • DELETE: Web sayfasını siler.
  • OPTIONS: Verdiğimiz komutun türünü belirtir.
  • PUT: Bir web sayfasını saklamak üzere gönderir.
  • TRACE: Web sunucularını kontrol etme işlemidir.


İstek Mesaj Header (Başlık) Yapısı

İstemci genelde istek mesajı ile bir kaç tane Header alanı da gönderir. Bunlar, isim ve değerden oluşur. Bu alanlar, istek ya da istemci hakkında daha fazla bilgi vermek ya de isteğe durum koşulları eklemek için gönderilirler.








Sunucu Cevap(Response) Komut Yapısı

Sunucu yanıtlarında, istemcinin gönderdiği istek mesajlarında olduğu gibi her zaman bir header ve opsiyonel bir body kısmı bulunur.

--------------------------------------------------------------------------
HTTP/1.1 XXX (Cevap kodu 3 haneli numaralardan oluşur)
Açıklamalar

--------------------------------------------------------------------------



İlk satır olan Status Line’da protokol ve sürümü, cevap kodu ve cevapın yazılı mesajı bulunur.Cevap kodları 3 haneli rakamlardan oluşur.İlk hanesi verdiğiniz komutun tür bilgisini içerir.

İlk satır olan Status Line’da protokol ve sürümü, cevap kodu ve cevapın yazılı mesajı bulunur.Cevap kodları 3 haneli rakamlardan oluşur.İlk hanesi verdiğiniz komutun tür bilgisini içerir.

Cevap Kodları

  • Seri 1xx : Alt seviye HTTP etkileşimlerinde kullanılırlar.

  • Seri 2xx : İstekle ilgili herşeyin uygun ve düzgün olduğunu belirtirler. 200: OK ,204: No Connect mesajı verir.

  • Seri 3xx : Genellikle bir çeşit yönlendirme ifade ederler. İstek geçerliydi fakat Web tarayıcı istenilen içeriği başka bir yerde/adreste bulmalı.

  • Seri 4xx : Bir hata oluştu ve bu hatanın sorumlusu sunucu değil, sunucu hatadan dolayı Web tarayıcısını sorumlu tutuyor. 404 : sayfa bulunamadı,403 : yasak,408 istek zaman aşımına uğradı.

  • Seri 5xx : Bir hata oluştu fakat bu sefer hata Web tarayıcıdan kaynaklanmıyor, hatanın sorumlusu sunucu ya da sunucuda çalışmakta olan bir betik.

Cevap Başlık Yapısı

Content-Base :Tüm göreli URL’leri çözümlemek için sunucunun taban (base) URL’ini tanımlar
Content-Length :Yanıt mesajının Body kısmının boyutunu (byte olarak) belirtir
Content-Type :İsteğin ortamını (media) belirtir
Date :İsteğin gönderildiği tarih ve zamanı tanımlar
eTag :İstenilen kaynak için bir varlık etiketi (entity tag) yaratır
Last-Modified :İstenilen kaynağın en son ne zaman değiştirildiğini tanımlar
Location :Kaynağın bulunduğu yeni yeri belirtir
Server : Web sunucunun adını ve sürümünü tanımlar
Set-Cookie :Sunucunun, Web tarayıcının daha sonraki isteklerinde göndermesini istediği bir isim ve değer çifti tanımlar.Set cookie ile sununun istemciyi tanıyarak dosyaları tekrar yüklemesi engellenir.
WWW-Authenticate :Doğrulama şeklini ve metodunu tanımlar


HTTP Protokolünün Özellikleri

Http kalıcı bağlantılarda etkili bir yapıya sahip değildir.HTTP protokolü sayesinde kullanıcılara birçok sınırlandırmalar yapılabilmektedir.
  • Dizin güvenliği: Dizinlere ait özellik ve sınırlamaların belirlendiği kısımdır.Klasörlere yetkilendirme yapılmaktır.
  • Varsayılan dip not: Gönderilecek olan bilgilerin içerisine önceden belirlenmiş bir html nesnesinin eklenmesidir.Örneğin; Web sitesinin adı
  • Giriş dizini: Dizin içerisinde varsayılan içerik bulunamamışsa ve klasöre istek yapılmışsa klasör içeriği listelenir. http://localhost veya http://127.0.0.1
  • Anonim: Herhangi bir kullanıcı adı ve parolası girilmeden erişimi sağlamaktadır.Kullanıcı adı ve parolası girilmez. USS_WIN2003 bu kullanıcı adı IIS kurulurken oluşturulur. Kullanıcı adı ve parola ile de hizmet verilebilir. Ayrıca belirli IP blokları arasındaki bağlantılara cevap verebilme gibi birçok ayarlar buradan yapılmaktadır.
  • İçerik derecelendirme: Http üst bilgisi ile kullanıcılara bazı kategorilerde ne tür içerik olduğu gönderilebilir. Web tarayıcıardaki bu bilgi yığınına bakıp içeriki ksıtlaması yapılabilir.
  • Mime türleri: web sitesi ilk oluşturulduğunda tüm uzantıları desteklemez. Bazı uzantıların desteklenmesi için bunların tanımlanması gerekmektedir. Bunları Mime aracılığı ile yaparız. Hangi uzantıya hangi veri yığını göndereceğimizi tanımlanır.
  • BITS: Bir tür aktarımım biçimidir . Microsoft kullanır. BITS ile büyük boyutlu dosyalar daha kolay gönderilir.
  • ASP.net: Asp sürümlerini tanımlayabiliriz. 1 ve 2 sürümlerinden hangisini kullanacağımızı belirleyebiliriz. Yapılan projenin asp ise dll dosyasının doğru şekilde yorumlanabilmesi için sürümünün seçildiği bölümdür.
  • ISAPI: exe dosyası gibidir, DLL uzantılıdır. Bir dosyayı çalıştırılabilir olarak tanımladığımız zaman, DLL uzantılı bir dosyaya istek yapıldığı zaman o dosyanın içeri kullanıcıya gönderilmez. Dosya çalıştırılır, bir değer çıkar ve bu değer kullanıcıya gönderilir. DLL çalıştırılır ve kullanıcıya çıktısı gönderilir.
  • NOT:Adres çubuğunda herhangi bir .dll uzantılı bir dosya görüldüğü takdirde demek oluyor ki obir ISAPI uygulamasıd
  • CGI: Bir dosyanın içeriğini değil, o dosyayı çalıştırıp çıktısını kullanıcıya göndeririz.
    Bir exe dosyasının 1000 kez çalıştırılması gerekebilir. CGI performans problemlerine yol açmıştır.Genellikle UNIX için kullanılır. Windows için WinGCI kullanılır. WinGCI, Windows için özelleşmiştir. WinCGI’nın farkı bir konsol yapısını kullanmamasıdır. Sanal bir konsol yapısı açılmaz.
  • 2 tip ISAPI uygulaması vardır:
  • 1. ISAPI uzantıları: Belli bir uzantıda çalışır. GCI programlama güçlüğünü aşmak istediği yerlerde kullanır.
  • 2. ISAPI filtreleri: bir web sayfasının içeriğinin kullanılmasıdır. Gelen her içerik uygulamadan geçirilip kullanıcıya gönderilir. Tüm içerik kontrol edilir.
    WWW için CGI için arabirimlik yapar. Tamamen exe dosyalar yazmadan temel kod yığınlarıyla web sayfaları oluşturulabilir hale gelmiştir.
  • APACHE
    APACHE de tanımalmış olan bir ISAPI’dir. Konsol tabanlı bir yapısı vardır.. Unix tabanlı bir sistem olarak geliştirilmiştir.Windows ailesinde APACHE'nin yaptığı görevlerii IIS (Internet Inforation Services) yapmaktadır.