Veri güvenliği sağlama da üçüncü kişiler içeriği okuyamaz. Fakat güvenlik bununla kısıtlı değildir. Güvenliğin alt ağlar açısından da sağlanması gerekir yani alt ağda hangi veri gezecek bu tanımlanır. Ağ içinde gezecek olan bilgi yığını fiziksel olarak filtrelenir.
DAT: 80’li yıllarda internetin gücüdür. Güvenlik sorunları ile karşılaşmıştır. SMTP bir açıktan yararlanarak tüm sun sistemine zarar verdi. Birçok sistem smtp’ye ihtiyaç duymuyordu. Önlem olarak ya smtp servislerini kapatalım ya da bir şekilde ağların içine smtp trafiği girmesin denildi. Bu çözüm bir ağın dış dünyadan tamamen soyut yapısını, dış dünyayla haberleşmesini kontrol edip bilginin belli kurallar çerçevesinde dışarı aktarılması ya da içeri alınması gibi izinleri verecek bir katman tanımlanır. Buna firewall(ateş duvarı) denir.
Firewall: ağın çıkış noktasında bulunur. Yönlendiricinin hemen arkasında. Tüm ağ trafiğini yönlendirecek, gelen giden veriyi inceleyecek, kurallara göre geçmesine izin verecek ya da vermeyecek. Firewall 3 nesilde incelenir:
İlk nesil: 86 SMTP problemi için geliştirilmiştir. Ağımızı dış dünyadan istenmeyen servislerden soyutlarız.
4. katman yazılım adreslemesi yapar. 4. Katmanda bilgiyi inceleyebilir ve kurallar tanımlayabiliriz. Örneğini; 80 nolu portun isteklerini reddet. İlk nesil firewall’lar yazılımlarla ilgili problemleri çözmeye çalışmıştır.
Bir süre sonra dağıtık servisten alıkoyma servisleri ile ilgili problemler ortaya çıkmıştır.
** servisten alıkoyma: bir bilgisayara sürekli istek yapıp o bilgisayarı yormak. Birden fazla kullanıcının bunu yapmasına dağıtık servisten alıkoyma denir.
İkinci nesil: yukarıda bahsedilen durum için firewall çözüm olarak görülmüş. 4. Katmandaki firewallara ek oalrak 3. Katmanda da firewallar işlemler yapmaya başlamış. Tanımlanan kurallar şu şekilde olabilir; dış dünyadan gelen şu ip adresli bilgisayarın paketlerine izin verme. Burada ip adresleri filtrelenmeye başlamıştır.
Üçüncü nesil: yukarıda birinci ve ikinci nesilde bahsedilen güvenlik önlemleri yetersiz kalabilir. Örneğin bir bilgisayar sürekli farklı ipler ile çok fazla sayıda istek yapabilir. Bu gibi durumlarda bu işin çözümü 7. Katmandadır. Veriyi filtreleme. Burada da kurallar tanımlanır.örneğin; Dışarıdan içeri gelen veri sayısı 1000’i aşıyorsa ve gelen istek hep aynıysa gelen veriyi kim olursa olsun engelle.
** buradaki başka bir işlevsellik; artık zararlı yazılımlar ağlar üzerinden yayılmaya başladı. Fakat 7. Katmanda içeriği filtreleyebiliriz. Mesela; yazılımları virüs taramasından geçiririz.
**Peki ağ içinde güvenlik nasıl sağlancak?Yani ağ içerisindeki bir bilgisayar diğer bilgisayarlardan nasıl korunacak? Burada farklı çözüm yolları vardır. firewall yine filtreleme yapar ama ağa değil bilgisayara yerleştireceğiz. Kurallar bilgisayar üzerinde çalışır. Buna istemci türü ateş duvarı(firewall) denir. İstemci türü firewall, bilgi yığınını daha alt katmanda 3. Katmandan yukarı çıkmadan irdeler.
Bir firewall nasıl yapılandırılır?
Firewall’da ağı ikiye ayırmak gerekmektedir. Ethernet kullanılır. İki tane Ethernet kartı kullanırız. Bu Ethernet kartları ile iç dünya ile dış dünyayı birbirinden ayırırız.
Uygulama:
• Sanal makine kapalı iken
• Virtual machine setting açıp, Add denir
• 2 tane network adapter tanımlıyoruz
• Start sanal makine diyoruz.
• Kerio’yu bilgisayara masaüsütüne aldı
• Yerel ağ bağlantımız 2 tanedir;
1’si iç dünya(ağ)
2’si dış dünya (ağ)diyoruz.
• Kerio winroute Firewall 6.6 ‘nın tam kurulumunu yüklüyoruz.
• yönetim konsolu için şifre tanımlanır.
• kurulum tamamlandı.
• sağ al köşede oluşan simgeye çift tıklıyoruz.
• Firewall internete nasıl bağlandığını soruyor.
• Eğer internete bağlanmak için 2 tane yol varsa birinde sorun varsa diğerinden otomatik olarak bağlanılır..
• Multi çoklu bağlantı içindir.
• Bizim dışarı bağlanmak için tek bağlantımız var 1. Seçeneği seçiyoruz.
• Dış ağ diyoruz.
• Trafic Policy: New kısmına Messenger diyoruz.
• Source kısmına Add diyoruz host diyoruz.
• Ip adresi tanımlıyoruz 10.11.12.13 diyoruz.
• Service kısmına Windows Messenger kısmını seçiyoruz.
• Action kısmına DROP diyoruz.
• son olarak apply diyoruz.
Sayfayı açıyoruz.
User kısmına Add User diyoruz.
**firewall hem iç ağa hem de dış ağa özel bir yapılanmadır. İnternete bağlanmak için dış ağ kullanılır. Firewall ile kullanıcı ve gruplar tanımlanabilir. Firewall’u sadece kurallar kümesi olarak düşünmemeliyiz, kullanıcılara hizmet sunabilmek de, güvenlik de önemlidir.
Falover: internete bağlantı için birden fazla yol varsa fakat biz hep aynı yolu kullanıyorsak, kullandığımız yolsa sorun olursa başka bir yol kullanılır.
Traffic load balancing: ağdaki bilgisayarlar için firewall yönlendirici gibi davranır.
Bantwidth limiter: download ve upload’a kısıtlama getirilir.bandwidth’in belirli bir ip’ye, belirli saatlerde geçerli olması sağlanabilir.kullanıcı bazında kısıtlama da getirilebilir . örneğin; her kullanıcı günde 8gb veri indirebilir.
content filting(içerik filtreleme)
Traffic policy: 3. Ve 4. Katmandadır. http, ftp ve zararlı yazılımlara karşı içerik filtrelenir.
Antivirüs: firewall yazılımı ağ içine giren trafiği virüs taramasından geçirir.
**büyük boyutlu dosyaları firewall taramasından geçirebilmek için, ilk önce dosyayı segmentlere ayırmalı, daha sonra tekrar birleştirip kullanıcıya göndermelidir. Bu sorun teşkil edebilir.
http policy: filtreleme en çok http için kullanılır. url grubu için kurallar tanımlayabiliriz.
Belirli bir url bloğunun engellenmesi örneği;
URL den www.facebook engelleyebiliriz.
url begin with *.facebook.* ( içinde tüm facebook geçen url blokları engellenir).
** web siteleri tek tek gruplandırılıp, seçilen grubun engellenmesi sağlanabilir.(iş, eğitim vs.)
** iç ağ ile dış ağ arasında tüm veri yığınını elden geçirdiği için NAT gibi çalışır.
Whitelist: tanımladığımız sunucunun adresi iis tarafından kontrol edilebilir.
Set IIS: web sayfalarını kategori yapar.
Advanced: Bu kuralı belli bir zaman aralığında gösterilebiliriz.
Başka bir url adresine yönlendirme sağlayabiliriz.
DNS forwarder: sunucu bazında host dosyası tutmaya izin verir. Sadece firewall üzerinde yapılacak bir tanımlama ile tüm ağ dış dünyaya erişemez ya da erişebilir.
Content Rules:
Cache: Ftp için ön bellekleme gerçekleştirebiliriz.
Proxy Server: Firewall NAT gibi çalışır.
Forbidden words: Küfürlü içeriğin kullanıcıya iletimi engellenebilir.Yasaklı kelimler.
ISS: puan verip belli bir değere ulaştığında engelleyebiliriz.
Accounting: hesaplar
Advanced Options: Ağ aygıtlarının birbiriyle özel bir şey yapmadan haberleşmesini sağlar.
Point to point: noktadan noktaya bağlantıyı engellemek içindir.
Ağ üzerine kaynak paylaşımı
Kaynak paylaşımı; Dosyaların ağ üzerinde diğer kullanıcılara sunulması ve donanımların ağ üzerinden diğer bilgisayarlara sunulmasıdır.
SMB: UNİX sistemlerinde kullanılan temel kaynak paylaşımıdır.
NFS: sun firması geliştirmiştir.
Bu iki protokol temel protokollerdir.
SMB: IBM tarafından geliştirilen bir protokol kümesi üzerinde çalışır. Bu protokol kümesine NETBEUI denir.
NETBEUI, bilgisayarlara adresleme yapmak için 8 bitlik yapı tanımlar ve alt ağ tanımlamaz. Bu protokolde yönlendirme yoktur. ağda 2 üzeri 8 tane bilgisayar bulunabilir.bilgisayarların 15 karakter uzunluğunda ASCII karakter kümesi ile tanımlanmış isimleri bulunur. “\\ bilgisayara adı” şeklinde isimler yazılır.
SMB, protokolü ile bir bilgisayarın kaynaklarına direk erişim söz konusu değildir. Sanal ağaç tanımlanır. Temel yetkilendirmeler yapılır. Okuma, yazma vs.
SMB’nin TCP/ip üzerinden kullanımında sıkıntılarla karşılaşılmıştır. Bu sıkıntıları aşmak için tünelleme yapılır.
*tünelleme: SMB yapısını kullanan bilgisayarlar farklı ağlarda ise ve birbirleriyle haberleşmede NETBEUI kullanıyorsak tünelleme yapılabilir. ağınız dışında bir bilgisayar ile NetBEUI dışında haberleşemiyorsun. Bu nedenle ıp paketleri kullanılmış.
* *NetBEUI , SMB’nin işlevsellini artırabilmek için sana yapıdadır.
Yeni bir protokol; CIFS
CIFS: tek bir protokol üzerinden yapılandırma değildir. Bant genişliği artışı sağlandı. IBM tarafından paketlenmiş bir protokol kümesidir.
** SMB için karakutu uygulamaları vardır. karakutu uygulamaları patentli programlar için kullanılır. Karakutu uygulamalarında, iki grup bulunmaktadır. Birinci grup asıl programdan matematiksel bir sonuç çıkarır, diğer grup ise o sonuca uygun bir program yazar.anal
** ağda bulunan bir bilgisayarın, diğer bilgisayarların kaynaklarına erişbebilmesi için bir yetkiye tabi tutulmasını bekleriz. Bu yetki kullanıcı adı ve şifre şeklinde tanımlanır. Ağda 30 bilgisayar olduğunu düşünürsek, 30 tane kullanıcı adı ve 30 tane de şifre bulunmaktadır. Her bilgisayarın kendi mekanizmasına sahip olduğu ağlarda yönetilme problemi vardır. merkezi bir denetim mekanizmasına ihtiyaç vardır.
DC: tüm ağı kontrol eden bir bilgisayar tanımlanır ve tüm bilgisayarların yönetim yetkisi bu bilgisayara verilir. DC istemcilerden tüm yetkiyi alır.
Bilgisayarlar birbirinden kaynak kullanırken yetkiler DC üzerinde tanımlı ve kaynak kullanma yetkisini dc verir. Bir bilgisayar başka bir bilgisayardan kaynak isterken DC’ye başvurur, DC sertifika üretir ve istemci sunucudan kaynak isterken bu sertifikayı kullanır. Diğer bilgisayarların kaynaklarını kullanabilmek için jeton gibi düşünebiliriz.
** DNS sisteminde internete bağlı herhangi bir noktadan kaynak kullanılabilir. Örneğin; İstanbul’dan Ankara’da bizim DC’ye bağlı noktalar arasında iletişim kurulabilir.
Active Direction Bir sistemi ya da ağı etki alanı bilmek için bir DC ihtiyaç vardır. Server 2003 de yönetim konsolu rol ekle/kaldır dan ekleyebiliriz. Etki alanı merkezi bir yapıdır.
Uygulama:
• Active director: Rol/ekle kaldır denir.
• Etki alanı denetleyici türü
• Bizim etki alanı olmadığımızda yeni diyoruz. Bu ağacı yeni tanımlı yeni ormanda etki alanı oluşturacağız.
• Adı: abc.com
• Etki alanın NetBIOS adını en fazla 15 abc deyip ileri denir
• Sonraki adım dosyaları nerde tutulacak ileri denir
• DNS desteğini doğrulama ileri denir
• İzinler ileri denir
• Geri yükleme modu: Bu parola aynı zamanda admistrator parolası olacaktır.
• Ağa mesajları yayımlar.
• Bilgisayar yeniden açılacak. Yönet denir..
• Userdan yeni kullanıcı oluşturduk sonra çift tıklayıp özelliklerine girdik.
• Daha sonra siteleri ve hizmetleri girdi.
• Başlat/yönetimsel araçlar/etki alanı güvenlik ayarları/buradan parola giriş en kısa en uzun karakter sayısını belirleriz.
WINS: Microsoft çıkarmıştır. Liste sorununun çözümü için geliştirilmiştir. WINS, kendisine bildirilen isimleri tutar, belli aralılarla bu listeyi kontrol eder ve isteyenlere listeyi gönderir. Sadece iste tutan servistir. Ağdaki kullanıcıların listesi istenirken WINS’e başvurulur.
Kerberos: DNS sistemini kullanır. Kerberos sertifikalara dayalıdır. sertifikaların geçerlilik süresi vardır. Bu da probleme yol açar. Bu sistemde bilgisayarların saatlerinin birbirine yakın olması sağlanır.
KERBEROS :
Kerberos, bir bilgisayar ağı kimlik doğrulama protokolünün adıdır. Güvenli olmayan bir ağ içinde kullanıcıların kimliklerini güvenli şekilde ispat etmelerini sağlayan, MIT (Massachusetts Institute of Technology - Massachusetts Teknoloji Enstitüsü) tarafından geliştirilmiş yazılımdır. Kerberos mesajın gizlice dinlenmesini ve bazı saldırıları engelleyerek veri bütünlüğü sağlar. Tasarımcıları öncelikle hem kullanıcı hem de sunucunun birbirinin kimliğini kontrol ettiği istemci-sunucu modelini amaçladılar. Kerberos simetrik anahtarla şifreleme yöntemini kullanır.
WEB SERVİSLERİ
Web2 ve Web3 kavramı için farklılaşan işerlin tek bir protokol üzerinden gerçekleşmesini sağlar. Bankaların birbirleri ile haberleşmesi, hava durumu bilgisini almak( farklı ülkelerde) gibi işleri yaparken kullanabiliriz. Farklı noktalardan girilen bilgilerin farklı işlenmesini sağlar. Verinin istendiği gibi yapılandırılmasını sağlar.
Farklı hizmetler kullanılsa da bilgisayarın otomatik olarak gelen veriyi algılamasını sağlar. Bir standartlaştırma söz konusudur. Komutlar nasıl tanımlanacak, gelen bilgi nasıl parçalanacak, herhangi bir yerden bilgi alacağımız zaman bilgiyi nasıl parçalayıp, nasıl kullanacağız gibi işlemlerin yapılmasını web servisi sağlar.
SGML dilinin özelleştirilmiş bir yapısı tanımlanmış ve sonra da XML tanımlanmış. XML , SGML in web üzrinde kolayca kullanılması için geliştirilmiştir. 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. Taglar kullnılır. Örneğin;
XML sadece yapıyı tanımlar içerisinde ne kullanılacağını kullanıcıya bırakmıştır. Fakat burada da bir sorun vardır. örneğin; ben kişi diye tanımladım ama karşıdaki kişi insan diye tanımlarsa ne olacak? Bu sorunun çözümü için de WSDL tanımlanmıştır. Bilgi değiş tokuşu yapmamızı sağlar.
WSDL, web servisleri(adresleri) ve onlara nasıl erişildiğinin tanımlandığı XML tabanlı bir dildir. WSDL; hangi blokların istemci ile sunucu arasında taşınacağını, hangi bloğun verisinin ne ifade edeceğini, tagların isimlerinin ne olacağı gibi bilgileri tanımlar. ** karşı tarafa hangi komutlar verilebilir. Ve karşı taraf çıktıyı hangi formatta gönderecek en önemli iki özelliğidir. Bu sayede farklı veri yapıları kullanan hizmetlerce iş görebiliriz.
Web servisleri, yüzlerce farklı hizmetten yararlansak bile hizmetlerle ilgili tüm süreçlere ulaşmamızı sağlar. Hizmet başarısız olunca ne yapılacak, başarılı olursa ne yapılacak gibi. Böylece yeni nesil web sistemleri kullanılabilir. Yeni nesil web’i güçlü kılan bir hizmetin farklı hizmetlerden yararlanabilmesidir. Yani bir şehirle ilgili bilgi okurken, o şehirle ilgili hava durumu bilgisini de görebiliriz. Yani farklı sitelerden bilgi alıp birleştirebiliriz. İçerik bir kaynakla kısıtlı kalmadığından dolayı işlevsel hale gelir.
Web servisleri http protokolü üzerinden servis veren uygulamalardır. Web servisinde aktarılan bilgi bir html yapısı değil salt bilgi yığınıdır. İstemci veya sunucular bilgiyi xml formatında alırlar. Web servislerinde, servisin taşınmasını sağlayan ek protokollerde vardır.
SOAP: Web servisleri arasında veri aktarını sağlar. Verinin WSDL tarafından tanımlanan yapısının XML formatında aktarılmasını sağlar. Soap, güvenlik mekanizması sağlar. İçeirğin şifrelenmesi, kullanıcı adı, şifre gibi. Güvenlik mekanizması sunduğundan dolayı daha çok tercih edilir.
CORBA: veriyi ikili formda taşır.
GÜVENLİK
Uygulama katmanı protokolleri düz metin dosyalarını taşır. Bunu problemi güvenliktir. Bilgi yığını metin içerdiğinden dolayı mesajların içeriğine kolaylıkla ulaşılabilir. Örneğin e- postalar.
İnternet protokolleri güvenlikle ilgili ek protokoller sunmaz. Bu yüzden güvenlik özelleştirilmiştir.
Simetrik Şifreleme: bir anahtara bağlı ve karşı tarafta anahtara bağlı şifreleme türüdür.
Blowfish: elektoronik ve digital şifreleme ile ilgili algoritmalar geliştirilmiştir. Simetrik şifreleme için temel bir algoritmadır. Değişken uzunlukta anahtar kullanılabilir.(1-448 bit arasında)
DES: veri şifreleme standartıdır. Eski bir şifreleme algoritmasıdır. 56 bitlik sabit uzunlukta anahtar kullanılır. Tüm olasılıklar denenerek anahtara ulaşılabilir.
3DES: 168 bit uzunluğunda şifreleme anahtarı kullanılır. 3 anahtar kullanır. Bankalar arası haberleşme için kullanılabilir mesela.
IDEA: iyi bir algoritma lisansı için bir ücret ödenmesi gerekmektedir bu yüzden yaygın değildir.
RC-4, RC-5: simetrik şifreleme algoritmalarıdır. 1-2048 bit arası değişen uzunlukta anahtar kullanılabilir. RC-5 daha çok kullanılır. Patentlidir. RC-4’ün zayıflığını kaldırır.
Twofish: gelişken bir algoritmadır.
Rijindeal:
AES: gelişmiş standart adı verilir. Yaygın olarak kullanılır.
** simetrik şifrelemenin sorunu anahtar taşımanın nasıl gerçekleştirileceğidir.
Asimetrik şifreleme: karşı tarafa anahtar taşıma problemini çözer. Simetrik şifreleme daha hızlıdır, asimetriğe göre. Burada veri iletimi yine simetrik şifreleme ile gerçekleşir fakat anahtar karşı tarafa asimetrik şifreleme il gönderilir. Asimetrik şifreleme de özel ve genel anahtar vardır.
Asimetrik şifreleme de iki yöntem vardır;
1- Açık anahtar
2- Web of trust
Açık anahtar yapılanmasında önemli bir problem iletişim kuracağımız bilgisayarın o bilgisayar olup olmadığını bilemiyor olmamızdır. DNS hatalı cevap verebilir. Bunun için PCI tanımlanmış. İstemcinin de sunucunun da güvendiği üçüncü bir odağa dayanır. Buna sertifika otoritesi(CA) denir. İstemci sunucunun doğruluğunu ispatlamak için güvenilen 3. Kişi tarafından onaylanan bir bilgi yığını ister. Ya da sunucu istemcinin doğruluğunu kanıtlamak için bunu yapar. biz kendi ürettiğimiz genel anahtarımızı sertifika otoritesine veririz, sertifika otoritesi bizim genel anahtarımızı alıp kendi özel anahtarıyla bir işleme tabi tutar ve bize bir genel anahtar gönderir. Sertifika otoritesinin genel anahtarı istemcide de sunucuda da bulunur.
* genel anahtarlara sertifika denir.
* her sertifikanın kendine ait bir seri numarası, özel bir algoritması, bazı ek bilgiler, adres bilgileri gibi bilgileri vardır.
*kök sertifika yetkilileri altlarına sertifika dağıtabilirler.
TLS: uygulama katmanından çıktıktan sonra 4. Katmanda veriyi şifreleyerek karşı tarafa gönderebiliriz. Bu işi TLS yapar.
İnternet protokolleri 7. Katmanda basit metin yapıları tanımlar. TLS her protokole rahatlıkla uygulanabilir. 7. Katman protokolleri veriyi alt katmana taşıyıp, alt katmanda şifreleyip gönderir.
PCI yapısı kimlik kanıtlama ya da güvenlik sağlamak için kullanılır ülkemizde. PCI kök sertifika yetkilisine ihtiyaç duyar. Peki bu kim olacak? Güvenilir olmalıdır ve bazı garantiler vermelidir. Örneğin eğer bir kullanıcı başka bir yere yönlendiriliyorsa şu kadar zararı karşılayacağım gibi garanti vermelidir. Kök sertifika yetkilileri güvenilir olmalıdır.
PGP: yeni sayılabilecek bir teknolojidir. Open PGP ile standartlaştırılmıştır. Bir internet protokolüdür. Genel anahtarlarımı bir alana depoluyoruz. İşlevselliği gerçekten şifrelenmiş bir iletişim kurmamızı sağlamasıdır.
ÇOKLU ORTAM VERİSİNİN AKTARILMASI
Ses, video gibi nesnelerin ağ üzerinden aktarılmasında bazı farklılıklar vardır. örneğin; fazla miktarda bant genişliği. Zaman önemlidir. Aktarım gerçek zamanlı olmalıdır.
** bant genişliği çoklu ortam verilerinin aktarımında önemli bir kavramdır. Bant genişli az olan kullanıcıya ona uygun , geniş olan kullanıcıya ona uygun veri yığınları gönderilmelidir. Kullanıcıya özgü veri yığını aktarılmalıdır.
Broadcosting: tüm ağlara yayın
RTSP: gerçek zamanlı akış protokolüdür. Çoklu ortamın aktarılmasıdır. RTSP birbirine bağlı iki protokolden oluşur.
1. RTCP: RTCP ile alakalı kontrol kısmıdır.
2. RTP: mantıksal bağın yapısını tanımlar.
KOMUT YAPILARI
Describe: medya parametrelerinin listelenmesi için kullanılır.
Setup: oynatıcı ile sunucu arasında mantıksal kanal oluşturur.
Play: sunucudan istemciye veri aktarır.
Record: istemciden sunucuya veri aktarır.
Pause: veri aktarımını durdurur.
Teardown:??????
VOiP: ip üzerinden ses aktarımını sağlar. Günümüzde pots sisteminin yerine geçer.
H.323’ün yapısıVoip ile haberleşme gerçekleşir. Günümüzde voip port sistemi yerine geçen bir yapıdır.
SIP( Oturum ilklendirme protokolü) komutlarıİnvite: bir oturum başlatmak için istek yapar.
ACK: invite komutuna cevap olarak kullanılır.
BYE: oturum sonlandırma
OPTIONS: karşı tarafın seçeneklerini listeler.
REGİSTER: verinin aktarılacağı noktalar tanımlanır.
CANCEL: iptal
H.323 VE SIP protokolü arasındaki fark
HTTP
İnternette günümüzde çok kullanılıyor. Bir içeriği sunucudan istemciye gönderir. Temelde yapı budur. Veri aktaran diğer protokollerden farkı vardır. İlla dosya olmasına gerek yoktur. http çok büyük dosya aktarımı sağlayacaktır. Dosya olmak zorunda değil bu yüzden hiper metin olarak tanımlıyoruz.
Mime yapısına benzer bir yapı tanımlanmıştır.
3 tane sürümü vardır:
1.0: Kalıcı bağlantıları desteklemez. Quik benzeri bir yapıdır.
1.1: Kalıcı bağlantıları destekmiş ama yaygın olarak kullanılmaz. Bunun sebebi çok aktarım yapması belli bir süre sonra kesirmesi
0.9: Eski yapısı
Her bir nesne için ayrı bir port tanımlar. Her resim ve nesne tek tek gelcektir. Bu istenen bir durum değildir.
http nin komut yapısı:
KOMUT PARAMETRESİ http sürümü
Hemen bunu altında bir cevap başlığı mime yapısı
http nin cevap yapısı:
http/1.1 XXX açıklamalar
3 haneli bir cevap kodu
Bunun altında bir mesaj yapısı oluşur.
KOMUT
Get: Bir web sayfası okumak için ister.
Head: Get komutu gibi ancak head başlığı döndürür. İçeriği döndürmez.
Put: Bir web sayfasını saklamak için gönderir. Upload komutu gibi aktif olarak kullanılmaz.
Post: İsimlendirilmiş bir kaynağa ekleme yapar.
Delete: Web sayfasını siler.
Trace: Gelen isteği geri cevapla komutur.
Connect: Gelecekte kullanılmak için ayrılmıştır.
Option: Çeşitli parametreleri sorgulamak için kullanılır.
CEVAP
X X X
1.hane: Verdiğimiz komutun türünü belirtir ilk hanesi
2. ve 3. Hane: o türle ile alt durumlar hakkında bilgi verir.
Türleri:
5 tane durumlar tanımlıyor.
1XX: Gelen cevap bilgi mesajıdır
2XX: Verilen komutun başarı ile olduğu belirtir.
200: OK demek
204: No Connect mesajı verir.
3XX: Yeniden yönlendirme için kullanılır. Bunun adresi değişti diye bilgilendirme gibi
301: Kalıcı olarak taşındı.
302: Bulunduğu adresi şu gibi
4XX: İstemci hatası belirten durumdur.
404: Bulunamadı mesajı
408: İstek zaman aşımına uğradı.
403: izinsiz
5XX: Sunucu hatalarından kaynaklanan hataları ifade eder.
503 Servis şuanda karşılanamıyor.
MESAJ BAŞLIKLARI
User-agent: İstek yapılırken gönderilir. Kullandığınız web tarayıcı bilgilerini gönderir.
Accept: İstemci tarafından gönderilir.
Accept-charset: Karakter kümeleri
Accept-Encoding: kabul edilen veri kodlaması
Host: Hangi bilgisayardan istek yapılıyorsa o sunucu bilgi gönderir.
Authorizotion: Karşı tarafa kimlik tanımlayacak standartları tanımlayacak
Cookie:
Date:
Upgrade: http sürümü değiştiğinde karşı tarafa bilgi verir.
Server: Sunucu bilgileri bulunur.
Content-encoding: sunucun gönderdiği içeriğin kodlaması
Content language: içerik dili
Content length: içerik uzunluğu
Content- type: İçerik türü
Last modified: İçeriğin en son değiştiği tarihi verir.
Location: Yönlendirilecek adresi belirtir.
Set-cookies: http oturum olarak ifade edilecek. Bir bilgi yığını istemciden sunucuya gönderiyor. İstemci her girdiğinde sunucu tanıyor. Bu sayede oturum oluşturuyor.
HTTP’nin Özellikleri
Kalıcı bağlantı için zaman aşımı sağlanaiblir. Web sitesinin bant genişliği kısıtlanaiblir. Bağlanaiblecek eş zamanlı kullanıcı sayısı kısıtlanabilir. Kalsör adı yazılabilir get veya post ile. Get/klasör adı gibi. Dosya iöeriği kullnanıcıya gönderilir. Yani web sitesinden istek yaparken dosya adı yerine klasör adını yazıyoruz.
Girişi dizini: klasör içerisinde varsayılan içerik bulunamamışsa ve klasöre istek yapılmışsa klasör içeriği listelenir. http://localhost
Varsayılan dip not özelliği: gönderilern her bilgi yığınıa ait tanımlananan html dosyası ekleriz. Her web sayfasında görünmesini isteidğimiz değerlerdir. Örneğin; Web sitesinin adı
Dizin güveniği: klasörlerin yetkileri tanımlanır.
Anonim: adsız erişim. Kullanıcı adı ve şifre girilmeden hangi kullanıcı hesabının yetkisiyle işlem yapılacak?bunu tanımlamak için bir kullanıcı adı oluşturulur. Bu kullanıcının yetkisi var olan klasörlerle kısıtlı tutulur.USS_WIN2003 . bu kullanıcı adı iis kurulurken oluşturulur. Anonim kullanıcların klasörlerde istediği yetki ile çalışması engellenir.
*** kullanıcı adı ve şifre girilerek de hizmete verilebilir ya da belirlediğimiz ip’den veya etki alanından gelen kullanıcıların sistemem bağlanmasını veya bağlanmamasını sağlayabiliriz.
Daniel of service: servisten alı koymak anlamına gelir. Mesele 1000 tane kullanıcıya hizmet veriyorsak 1000 kullanıcının kullanmasını sağlamaya yarar sistemi.
http üst bilgileri:web sitesinden güncellenen içeriğin ne kadar süre ile geçerli oalcağını belirleriz.
Özel http üst bilgisi: var olan http özel üst bilgisi yığınları.(mesela reklam amaçlı olabilir.)
İç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: hangi uzantıya hangi veri yığını göndereceğimizi tanımlarız.
BITS: veri aktarımım biçimi .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.
Hiper metin dinamik olabilir. Bu içeriğin gönderilmesini sağlamak sunucunun bir program çalıştırmasını gerektirir. IIS için kullanılan uygulama arabirimi adı ISAPI’dir.
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.
CGI: Bir dosyanın içeriğini değil, o dosyayı çalıştırıp çıktısını kullanıcıya göndeririz. IIS, CGI kullanır. 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. Programda verilen parametreler bir dosyayla verilir. Yani dosya üzerinden işlem yapılır. Bu söylediğimiz 2 temel fark, WinCGI’nın CGI’dan farkıdır.
CGI ya da ISAPI yaygın olarak kullanılır. Programlama ve uygulama gerçekten zordur. Her bir sayfanın içeriğini oluşturmak için ayrı uygulama yapmak gerekir. İleri düzeyde programlama bilmemiz gerekebilir.
**adres çubuğunda DLL uzantılı bir dosya görürsek bu bir ISAPI uygulamasıdır.
**CGI, uygulama çalıştırır, çıktısı gönderilir. Temel mantık budur.
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. Pearl karakter dizilerinde işlem yapmayı kolaylaştırır. Pearl bir yorumlama dilidir. WWW için CGI için arabirimlik yapar. kullanıcı CGI uzantılı dosyaları istediği zaman ; pearl.exe’ye parametre olarak gönder, komutun çıktısını al, kullanıcıya gönder. Tamamen exe dosyalar yazmadan temel kod yığınlarıyla web sayfaları oluşturulabilir hale gelmiştir.
APACHE
APACHE de bir ISAPI’dir. Konsol tabanlıdır. Unix tabanlıdır. Paylaşılan bir modüldür.
FTP
Ftp komutları 4 karakterden oluşur, karşıdan gelen cevaplar 3 hanelidir.( smtp de olduğu gibi) burada da user ve password vardır. klasörler arası gezinmeyi sağlayacak, dosya indirmeyi, dosya göndermeyi sağlayacak yapılar bulunmaktadır.
ftp protokolünün çalışması birden fazla port üzerinden gerçekleşir. Komutlar için bir port, veri için bir port kullanılır. Iana 21 no’lu portu ftp ye atar. Bu ftp için bir avantajdır. İstemci ve sunucu belli bir port üzerinden iletime geçiyor. Komut verilince ek bir port üzerinden bağlantı açılıyor, aktarım komut portundan değil ek porttan gerçekleştiriliyor.
İletimin nasıl sonlanacağı, veri aktarımının nasıl kesileceği büyük bir problem oluşturabilmektedir. Bu sorunu şu şekilde çözebiliriz; veri aktarımım yaparken eğer komut portu boştaysa veri aktarımını istediğimiz zaman kesebiliriz.
ftp daha çok bir sunucu sistemine dosya göndermek için kullanılır. FTP bize sunucu üzerindeki dosyalarımızı silme, güncelleme ve yeni dosya oluşturma olanağı sunmaktadır.
ftp konsol tabanlıdır, klasörler arası gezinmeyi sağlayan, dosyaların özelliklerini incelemeyi sağlayan komutları vardır. klasörler arası gezinme unix tipidir. Temel başlangıç olan kök klasörü vardır ve unix tipi slashlar kullanılır.
Kullanıcı authentication kullanılır. Yani kullanıcı adı ve şifre vardır. Fakat bu yetki herkesin kullanımına açık yani anonim olan yerlerde sorun oluşturmuştur. Bu sorun şu şekilde çözülmüştür; Bir çok FTP sunucusu, kullanıcı ismi ve parola olmadan erişim için "anonim FTP" (anonymous FTP) desteği verir, bu kullanım için kullanıcı adı olarak anonymous parola olarak ise bir e-mail adresi girilmesi gerekmektedir.
Günümüzde ftp birçok sistemde sunulur. Microsoft Windows ile verir. Unix sistemleri ile de verilir.
Dezavantajı Birden fazla port kullanıldığı için problemlerle karşılaşılır. Bildiğimiz gibi ftp’de tek bir işlev için 2 port kullanılır. Bu yüzden de daha fazla bellek ve zaman kullanımı gerektirir. Dosya aktarımı sağlayan protokoller arasında en çok sistem kaynağını harcayandır dememiz mümkündür.
ftp tanımlanırken asıl amacının dosya indirmekten başka bir klasör yapısı içinde gezinmek olduğu belirtilir.
ftp de oldukça fazla sayıda komut bulunmaktadır. Yukarıda da söylediğimiz gibi genel olarak unix komutları kullanılır. ftp’de kullanıcı adı ve şifre girilir. Dosya istemeden önce port bağlantısı gerçekleştirlir. Daha sonra klasörler arasında cd komutu ile gezdikten sonra dosyayı isteriz. Anlaşılacağı üzere çok komut kullanılmaktadır.
FTP nin yapısı ve tüm özellikleri unix özelliklerine dayalıdır. Filezille basit bir dosya sunucusudur.
Filezillada:
FXF: Bu teknoloji sayesinde sunucular arasında aktarımı otomatik olarak gerçekleştirir.
Hız Limitleri: download upload için hız belirleyebiliriz.
Modz: Veriyi gönderirken sıkıştırma formatı ile karşı tarafa gönderebiliriz. Çıkıştırma modz yi aktifleştirdiğimizde işlem gücü gerekecek. Min. Yada max. Sınırları ile sıkıştırma boyutunu ayarlayabiliriz.
Otomatik Ban: yasaklama belirli bir süre kadar hizmet almasını engelleyebiliriz.
Shared Folder: Bu kullanıcı giriş yaptığında o klasörlerde işlem yapabilir. Yetkilerini tanımlayabiliriz. Okuma, yazma…
Kullanıcı için hız limitleri tanımlayabiliriz.
FTP istemcisi kuruyoruz:
List: Klasör içerini görmüş oluruz.
PASV: Dosya aktarımına geçer.
Retr: Komutu ile dosya indiriyoruz.
STOR: komutu ile karşı tarafa dosya gönderiyoruz.
Dns Yapılandırması
Rol ekle kaldıra tıklanır.
Sunucu rolü seçilir: DNS sunucusu seçilir ve ileriye tıklanır.
Yapılandırmanın özetini verir. İleri tıklayarak yapılandırma başlatılır.
Yapılandırma sihirbazı başlatıldı.
Yapılandırma sihirbazı karşımıza gelir. İleri.
Yapılandırma eylemi:
İleri doğru arama bölgesi oluştur: Yerel DNS sorgularını yapar kendinde olmayan DNS sorguları için ileri DNS sunucularından sorgulama yapar yani ileri sunuculara yönlendirir.
İleri ve geri doğru arama bölgesi oluştur: Büyük ağlar için hem geri arama (DNS sorgulama) hem de ileriye dönük sorgulamalar yapabilir.
Yalnızca kök ipuçlarını yapılandır: Sadece kök ipuçlarını yapılandırır. Buna ek olarak diğer ileri ve geri arama bölgelerini de destekler.
İleri doğru arama bölgesi oluştur seçilir. Ve ileri tıkanır.
Birincil sunucu yapılandırması:
Eğer tek bir DNS sunucumuz var ise birincil sunucu da sunucumuzun kendisidir. Eğer birden fazla DNS sunucumuz var ise bunların hangisinin birincil sunucu hangisinin yedek olacağına karar veriyoruz.
Bizim sunucumuz tek olduğu için her iki işlemi de yapacak birinci seçeneği seçiyoruz. Ve ileri.
Bölge adı girilir:
Dinamik güncelleştirmelere izin verme seçilir. Eğer DNS sunucumuzun belirli aralıklarla başka DNS sunucularından güncelleşmesini istiyorsak güncelleştirmeleri açabiliriz.
Bu sunucuda olmayan sorguların hangi sunucuya iletileceği seçilir. İleri.
Sunucu yapılandırması tamamlanıyor.
Sunucumuza bir DNS görevi yükledik artık sunucumuzu DNS sunucusu olarak kullanabiliriz.
Gördüğünüz gibi DNS görevi sunucu rollerine eklendi. Yönete tıklıyoruz.
ve sırasıyla kanarya.net adında bir sunucu senaryosu oluşturuyoruz.
Kanarya.net in altında bir fb isimli ana makina ve ip: 10.0.0.6yine kanarya.net altında saracoglu adında bir makina daha ip:10.0.0.7
bir cname oluşturuyoruz www sorgularını fb makinasına bağlıyoruz.
bir bağımlı bölge oluşturuyoruz. lacivert adında .
ve lacivert adındaki bölgenin içinde bir ana makina oluşturuyoruz. ip: 10.0.0.10