Giriş
Modern teknoloji dünyasında, ağ kurmanın nasıl çalıştığına dair derinlemesine bilgi sahibi olmak bir gereklilik haline geldi. Sunucu yönetimiyle ilgileniyorsanız, bunun nasıl çalıştığının kesinlikle farkında olmanız gerekir. Hizmetinizin iç işleyişi hakkında ayrıntılı bilgiye sahip olmak, hizmetlerinizi düzene sokmanıza yardımcı olacaktır. En iyi çözümleri uygulamanıza ve bağlantılarınızın sorunsuz bir şekilde çalışmasını sağlamanıza yardımcı olacaktır.
Bu kılavuzun amacı, sizi ağ dünyasında yolunuzu bulmanız için gereken temel bilgilerle donatmaktır. Bu, en yaygın kullanılan terminolojinin yanı sıra ağ oluşturmada kullanılan temel kavramları da içerir. Çeşitli bileşenleri hakkında bilgi sahibi olmak, sorunları mümkün olan en kısa sürede önlemenize ve tanımlamanıza yardımcı olacaktır. Bu sayede, sorunlarla hızlı bir şekilde başa çıkabilir ve minimum kesinti süresi sağlayabilirsiniz.
İster şu anda bir sunucu yönetiyor olun ister gelecekte yönetecek olun, bu kılavuzu yol gösterici bir ilke olarak kullanın. Sunucunuzun işlevlerine dalmadan önce bileşenleri ve özellikleri öğrenin. Burada ağ kurma ve sunucu yönetiminin tüm detaylarını bulacaksınız. Hadi başlayalım!
En Yaygın Ağ Terimleri
Katmanlara ve bileşenlere dalmadan önce, bu ortamda kullanacağınız dili çözmeniz gerekir. Bu listede tanıdık gelecek birçok terim var. Bunlar günlük hayatta her birimiz tarafından kullanılıyor ancak çoğumuz aslında ne anlama geldiklerini bilmiyoruz. Sunucular ve ağ bağlamında bu temel terimleri anlamanıza yardımcı olacağız. Bu, süreçlerinizin çoğunun takip edilmesini ve anlaşılmasını kolaylaştıracaktır. Kılavuz boyunca ilerledikçe bu terimleri kullanmaya ve daha detaylı açıklamaya devam edeceğiz.
- Bağlantı
Bir ağ, çeşitli bağlantılarla birbirine bağlanan bileşenler ağıdır. Peki ağ kurma bağlamında bu ne anlama geliyor?
Ağ oluşturmada bir bağlantı, ağ üzerinden iletilen veri veya bilgileri oluşturur. Ağdaki iki nokta arasında veri aktarmadan önce aslında bir bağlantı kurmanız gerekir. Ortamın protokolü bu bağlantıyı nasıl kuracağınızı belirler. Veri aktarımını tamamladığınızda bağlantıyı kapatabilirsiniz.
- Paket
Bir ağın temel birimlerine hoş geldiniz: paketler. Verilerinizin somut bir malzeme olduğunu hayal edin; başka bir yere güvenli bir şekilde gönderebilmek için onu çeşitli paketler halinde düzenlemeniz gerekirdi. Benzer şekilde, dijital bir ağda bile verilerinizin aktarımdan önce paketlere konulması gerekir. Bu, ağ içindeki iletişimi kolaylaştırmak için verilerinizi ayrı parçalara böler.
Bir veri paketi genellikle iki ana bölümden oluşur. Üstbilgi (header) bölümü ve ana bölüm vardır. Üstbilgi bölümü, paketin ana gövdesinden önce gelir. Paket ve özellikleri hakkında bilgiler içerir. Örneğin, paketin kaynağını, hedefini, sahip olduğu zaman damgalarını, ağ atlamalarını (hops) ve diğer bazı özellikleri içerebilir.
Paketin ana kısmı, beklendiği gibi, gerçek verileri oluşturur. Gövde veya yük (payload) olarak da adlandırılan bu kısım, ağdaki başka bir noktaya aktarmak istediğiniz bilgidir.
- Arayüz
Bir arayüz düşündüğünüzde, aklınıza kontrol paneline benzer bir şey gelir. İşlemlerin geri kalanını kontrol etmek için etkileşime girebileceğiniz platformdur. Böyle bir ortamda arayüzünüz sanal veya fiziksel olabilir. Sanal veya dijital bir arayüze bir yazılım aracılığıyla erişilir. Fiziksel bir arayüz, fiziksel bir cihaz veya bir donanımla ilişkilendirilecektir. Kendisiyle ilişkili özel arayüzü kullanarak ağınızı değiştirebilir, düzenleyebilir ve kontrol edebilirsiniz.
- LAN
Çoğumuz muhtemelen LAN ve WAN terimlerini duymuşuzdur. terimi oldukça sık kullanılır. Ancak LAN'ın Yerel Alan Ağı (Local Area Network) anlamına geldiğini biliyor muydunuz? Nasıl çalıştığını adından da anlayabilirsiniz. Bir Yerel Alan Ağı, verilerinizi yalnızca yerel çevreyle sınırlandırır. Bu, LAN'ınızdaki verilere internetin geri kalanından erişilemeyeceği anlamına gelir. Ev veya ofis ağınız gibi belirlediğiniz sınırlar içinde kalır.
- WAN
Diğer taraftan WAN, Geniş Alan Ağı (Wide Area Network) anlamına gelir. Muhtemelen tahmin edebileceğiniz gibi, bu ağ daha geniş bir alanı kapsar. Bu ağlar genellikle büyüktür, büyük mesafeleri kapsar ve genellikle tüm interneti ifade eder. Dolayısıyla, arayüzünüz WAN'a bağlıysa, interneti kullanarak ona erişebilirsiniz.
- Protokol
Protokolü, kural kitabının kullanım kılavuzu gibi düşünebilirsiniz. Belirli bir ağdaki tüm bileşenlerin uyması gereken tüm kuralları ve standartları tanımlar. Sistemin kendi içinde iletişim kurmak için kullandığı dili içerir. Ağ oluşturmada kullanılan UDP, IP ve HTTP gibi many farklı protokol türü vardır. Bazıları düşük seviyeliyken diğerleri uygulama katmanlarıdır. Bu kılavuzun ilerleyen bölümlerinde ağ protokolleri dünyasını ayrıntılı olarak inceleyeceğiz.
- Port
Bir makinedeki port bir adrestir. Bu port genellikle yazılımın bir parçasına bağlıdır. Bir portun amacı, sunucunuz ile birden fazla uygulama türü arasında iletişim kurulmasını sağlamaktır.
- Güvenlik Duvarı
Daha önce bir bilgisayar kullandıysanız, büyük olasılıkla bir güvenlik duvarı hakkında bir şeyler duymuş veya bununla ilgili bir açılır pencere görmüşsünüzdür. Güvenlik duvarı, sisteminize güvenlik sağlayan bir programdır. Bunu, sisteminize giren ve çıkan trafiği sınırlayarak ve izleyerek yapar. Sunucular için güvenlik duvarlarından bahsettiğimizde, sunucunuza hangi trafiğin girip çıkabileceğine karar veren bir programdır. Bunu yapmak için belirli kuralları yapılandırmanıza olanak tanır. Bu kuralları kullanarak, hangi portun sunucunuzdan trafik gönderip alabileceğini belirleyebilirsiniz. Ayrıca, sunucunuzla arasındaki iletişimi önlemek için belirli portları engelleyebilirsiniz.
Güvenlik duvarlarını yapılandırmaya ve kullanmaya başlamak için eğitimlerimize göz atabilirsiniz:
- UFW'nin Temelleri: Temel Güvenlik Duvarı Komutlarını Öğrenmek
- CentOS 7 üzerinde FirewallD ile Güvenlik Duvarı Kurulumu
- Iptables Güvenlik Duvarı Kurallarını Listeleme ve Silme
- NAT
NAT, Ağ Adresi Çevirisi (Network Address Translation) anlamına gelir. NAT'ı, belirli IP adreslerinden gelen istekleri ilgili sunuculara yönlendirmek için kullanıldıkları fiziksel LAN'larda bulabilirsiniz. LAN'daki arka uç sunucularını takip eder ve doğru yönlendirmeyi gerçekleştirmek için gelen istekleri çevirir.
- VPN
VPN, Sanal Özel Ağ (Virtual Private Network) anlamına gelir. VPN, güvenlik ve gizlilik için kullanabileceğiniz dijital bir araçtır. IP adresinizi maskeler ve veri paketlerinizi bilgisayar korsanlarından ve meraklı gözlerden korur. Bu sayede, ayrı LAN'ları ve uzak sistemleri internet üzerinden güvenli bir şekilde birbirine bağlayabilirsiniz.
Eğitimlerimizle VPN bağlantıları kurmaya başlayın:
- Nasıl Yapılır Kılavuzu: VPN Ağını CloudSigma Altyapısına Bağlama
- OpenVPN Access Server ile Docker altında kendi VPN sunucunuzu çalıştırın
- Ubuntu 18.04 üzerinde OpenVPN Kurulumu
Bunlar, ağ oluşturma dünyasında en temel ve en yaygın kullanılan terimlerden bazılarıydı. Elbette bu listedeki her şeyi kapsayamıyoruz. Ancak ağ katmanlarını ve protokollerini derinlemesine inceledikçe öğrenmeye devam edeceksiniz. Bu terimleri, ağ sistemleri hakkındaki sonraki bilgilerinizi üzerine inşa edeceğiniz bir temel olarak kullanın.
Çeşitli Ağ Katmanları
Artık bazı terimlerin ne anlama geldiğini bildiğimize göre, bir ağın organizasyonuna geçebiliriz. Belirli bir ağdaki bağlantılar yatay bir hiyerarşi olarak görülebilir. Her katman, kullanıcı ve uygulama için iletişimi kolaylaştırmak amacıyla ham verileri soyutlayan teknoloji ve protokollerden oluşur. Amaç, farklı trafik türlerini işlemek üzere yeni protokoller geliştirmek için ihtiyaç duyduğunuz zamanı ve çabayı azaltmaktır.
Aşağıda göreceğiniz gibi, ağ oluşturmada katmanlar söz konusu olduğunda farklı modeller vardır. Ancak model ne olursa olsun, veri yolu aynıdır. Veri, makinenizden gönderdiğinizde yolun en üstünden başlar. Çeşitli katmanlardan geçer. Yolun sonunda başka bir makineye aktarılır. Diğer makinede tüm katmanlar boyunca yukarı doğru ilerler. Her katman, sıradaki bir sonraki katmanın veriyi işlemesine yardımcı olmak için kendisinden önceki katmandan aldığı veriyi sarmalar.
Burada, ağ katmanları için iki tür modeli ele alacağız: OSI modeli ve TCP/IP modeli:

OSI Modeli ve TCP/IP Modeli
OSI Modeli
OSI modeli, Open Systems Interconnect (Açık Sistemler Bağlantısı) anlamına gelir. Bu modeli oluşturan yedi farklı katman vardır:
- Uygulama
Bu, kullanıcının veya kendinizin en çok etkileşime gireceği en dış katmandır. Uygulama katmanı aracılığıyla hem izleme hem de yapılandırma yapabilirsiniz. Size ağ iletişimi, kaynak kullanılabilirliği ve veri senkronizasyonu hakkında bilgi verecektir.
- Sunum
Bu katman; kaynak eşleme, veri çevirisi ve bağlam oluşturma dahil olmak üzere birden fazla işle ilgilenir. Sunum katmanı, alt seviyelerden gelen verileri alır ve uygulama katmanının anlayabileceği bir forma dönüştürür.
- Oturum
Oturum katmanı, ağdaki bağlantıdan sorumludur. Bu katmanı yeni bağlantılar oluşturmak, ihtiyacınız olmayanları sonlandırmak veya sadece mevcut bağlantıları sürdürmek için kullanabilirsiniz.
- Taşıma
Taşıma katmanının görevi, kendisinden sonraki katmanlara güvenilir bağlantılar sağlamaktır. Aldığı ve gönderdiği verilerin bütünlüğünü doğrulayarak bağlantının güvenilirliğini sağlar. Bu, sonraki katmanlara gönderdiği verilerin herhangi bir kayıp veya hasar olmadan tek parça halinde ulaşıp ulaşmadığını kontrol edebileceği anlamına gelir. Aktarımın ortasında bazı verilerin düşmesi durumunda, bu katman verileri yeniden gönderme yeteneğine sahiptir.
- Ağ
Ağ katmanı, verilere yönlendirme sağlamak için çalışır. Ağı oluşturan çeşitli düğümler arasında iletişim kurar ve bilgisayarların adreslerini kullanarak verilere nereye gideceklerini söyler. Sadece bununla kalmaz, ağ katmanı düğümler arasında kolay aktarım için verileri daha küçük mesajlara böler. Mesajlar hedefe ulaştığında derlenir ve doğru bir şekilde birleştirilir.
- Veri Bağlantısı
Veri bağlantısı katmanı, ağdaki düğümler arasında kalıcı ve güvenilir bir bağlantı sürdürmekten sorumludur. Cihazlar arasındaki bağlantıları kurmak ve korumak için fiziksel bağlantılarla çalışır.
- Fiziksel
Son olarak, fiziksel katman, aralarında bağlantıların bulunduğu fiziksel, somut cihazlarla çalışır. Bu katman, donanımın yanı sıra kullandığı yazılımı da içerir.
TCP/IP Modeli
İkinci model TCP/IP modelidir. IP veya İnternet Protokolü paketi olarak da bilinen bu model, oldukça popüler bir ağ modelidir. Bunun nedeni, nispeten daha soyut ve esnek bir katmanlama modeli olmasıdır. Akışkanlığı, uygulanmasını kolaylaştırır.
OSI modelinin yedi katmanının aksine sadece dört katmanı vardır. Aşağıda göreceğiniz gibi, bu katmanların birçoğu OSI katmanlama yönteminde görülen bazı katmanlara benzer.
- Uygulama
Burada, uygulama katmanının görevi veri oluşturmak ve bunu aktarmaktır. Bireysel uygulamalar uzak sunucularda bulunur. Uygulamaların her biri kullanıcı için yerel olarak çalışıyor gibi görünür. Uygulama katmanı kullanıcı verilerini oluşturur ve ardından bunları çeşitli uygulamalar arasında iletir.
- Taşıma
Taşıma katmanı, sistem içindeki iletişime aracılık etmeye hizmet eder. Portların önem kazandığı yer yine burasıdır. Taşıma katmanı, ağdaki farklı hizmetler arasında güvenilir olmayan ve güvenilir bağlantılar kurmak için portları kullanır. Kurduğunuz bağlantının türü, kullandığınız protokolün türüne bağlıdır.
- İnternet
IP modelinin OSI katmanlama modelinden ayrıldığı nokta burasıdır. Bu yöntemdeki internet katmanı, düğümler arasındaki veri iletiminden sorumludur. Bağlantının kendisiyle ilgilenmez. Bunun yerine, verileri aktarmak için yalnızca bağlantı uç noktaları hakkındaki bilgileri kullanır. Kaynağı ve hedefi IP adresleri aracılığıyla tanımlar.
- Bağlantı
Son olarak, bağlantı katmanı uzak sistemlere kimliklerini veren katmandır. Yerel ağın ve onu oluşturan düğümlerin adreslenebilirliğini sağlar. Bu da daha sonra internet katmanının veri iletmesini mümkün kılar.
Ağ Arayüzleri
Terminolojiyi ve ağ katmanlarının temellerini öğrendikten sonra arayüzlere geçebilirsiniz. Hepimizin bildiği gibi, arayüzler temel olarak iletişim noktalarıdır. Çoğu sunucuda her Ethernet veya kablosuz internet kartı için bir arayüz bulunur. Arayüzü tercihlerinize ve gereksinimlerinize göre yapılandırabilirsiniz. Ağınızdaki her arayüzün karşılık gelen bir ağ cihazı olacaktır. Bu cihaz sanal veya fiziksel olabilir.
Sunucunun kurduğu sanal ağ arayüzlerinden biri loopback (geri döngü) veya localhost arayüzüdür. Araçlarınızın çoğu buna ‘lo’ arayüzü olarak atıfta bulunacaktır. Bu arayüzün görevi, çeşitli bilgisayarlardaki uygulamaları ve süreçleri birbirine bağlamaktır.
Sisteminizde bulunacak bir diğer arayüz ise internete giden trafiğe hizmet etmek içindir. Bu genellikle yönetici tarafından kurulur. Bir LAN veya özel ağ için de bir arayüze ihtiyacınız olabilir.
Veri İletimi Protokolleri
Ağ iletişimi konusundaki temel eğitiminizi tamamlamak için ihtiyacınız olan son şey protokollerdir. Protokoller, bir sistem içindeki işlemleri tanımlayan ve bir ağın çalışmasını sağlayan unsurlardır. Protokoller üst üste katmanlanır ve veri bunların tümü aracılığıyla iletilir.
Sırada, kullanabileceğiniz veya duyabileceğiniz en yaygın protokollerden bazılarını ele alacağız. Amaç, onları neyin farklı kıldığını ve belirli süreçler için neden önemli olduklarını anlamaktır.
- Ortam Erişim Kontrolü
Başlangıç olarak, bağlantı katmanında çalışan bir iletişim protokolü ile başlayacağız. Ortam erişim kontrolü (media access control) protokolü, bir adres aracılığıyla çeşitli cihazları ayırt etmemize yardımcı olur. Ortam Erişim Kontrolü veya MAC adresi, belirli bir cihazın kimliğini belirtir.
Her cihaz üretilirken kendi MAC adresini alır ve bu adres tamamen benzersizdir. Sonuç olarak ağ, MAC adresini kullanarak internetteki her cihazı ayırt edebilir. Bu, yazılım cihazın adını değiştirse bile ağın donanımı yine de tanımlayacağı anlamına gelir.
- IP
IP protokolü, ağ iletişimindeki en popüler protokollerden biridir. Bunun nedeni, interneti çalıştıran protokollerden biri olmasıdır. Hepimiz dijital cihazlarımızın benzersiz “IP adreslerine” sahip olduğunu biliyoruz. IP/TCP modelindeki internet katmanına ait olan IP protokolünün birkaç farklı uygulaması vardır. En yaygın olarak IPv4 ve IPv6'yı görürüz. İkincisi, IPv4'ün daha gelişmiş bir sürümüdür.
IP protokolünün çalışma şekli, tek bir hedefle bağlantı kurmak için birden fazla yol oluşturmasıdır. Bunun nedeni, trafik ağlar arasında geçiş yaparken güvenilir olmayan bir ağ varsaymasıdır. Protokol, yollar arasında dinamik olarak geçiş yapabilir.
- ICMP
ICMP, internet kontrol mesajı protokolü (internet control message protocol) anlamına gelir. Bu, özellikle ping ve traceroute gibi ağ teşhis araçları için yararlı olan bir protokoldür. ICMP, cihazlar arasında mesajlar göndererek hataları ve kullanılabilirliği belirtebilir. Protokol, ağdaki diğer veri paketleri yollarında bir sorunla karşılaştığında paketleri iletir. ICMP, iletimdeki hatayı tespit eder.
- TCP
TCP, iletim kontrol protokolü (transmission control protocol) anlamına gelir. IP/TCP katmanlama modelinin taşıma katmanına ait olan TCP, veri paketleme ve iletiminde yer alır. İnternetimizi yöneten en kritik protokollerden biridir.
Protokol, veri aktarımıyla ilgilenmeden önce bir bağlantı kurmak zorundadır. Bunu yapmak için TCP, üç yönlü bir el sıkışma kullanır. Burada, iletişim hattındaki iki uç noktanın isteği kabul etmesi ve veri iletimi için güvenilir bir bağlantı sağlaması gerekir.
Ağda çeşitli işlevler gerçekleştirir. İlk olarak, verileri paketler halinde zarflar ve ilgili bağlantılar üzerinden aktarır. İkinci olarak, TCP sistemdeki hataları kontrol eder. Sadece bununla kalmayıp, uygulama katmanı için veri paketlerini birleştirme yeteneğine de sahiptir. Veri hedefe ulaştığında, TCP dört yönlü bir el sıkışma kullanarak bunu yok eder.
- UDP
UDP, kullanıcı veri bloğu protokolü (user datagram protocol) anlamına gelir. Taşıma katmanında da kullanıldığı için birçok kişi bunu genellikle TCP ile birlikte kullanır. Onu TCP'den ayıran şey, güvenilir olmayan bir bağlantı kurmasıdır. Güvenilir olmayan bir veri aktarımı, protokolün verinin bağlantının diğer ucuna güvenli bir şekilde ulaşıp ulaşmadığını doğrulamadığı anlamına gelir.
Yine de birinin neden güvenilir bağlantılar yerine güvenilir olmayan bağlantıları kullanacağını düşünüyor olabilirsiniz. Ancak, UDP'nin sağladığı gibi güvenilir olmayan veri aktarımının birçok yararlı uygulaması vardır. Örneğin, insanlar UDP'yi zamanın çok önemli olduğu uygulamalarda uygularlar. Sistem, verinin alındığına dair onay beklemek yerine, veriyi kendi ucundan gönderir. Bu yüzden oyunlar ve VOIP gibi alanlarda kullanıldığını görürsünüz.
- HTTP
HTTP, hiper metin aktarım protokolü (hypertext transfer protocol) anlamına gelir. Tüm web sitelerinin bu dört harfle başladığı düşünüldüğünde bu protokole aşina olmalısınız. Uygulama katmanında uygulanan HTTP, sisteminizin kullanıcının ne talep ettiğini anlamasına yardımcı olan işlevleri tanımlar.
Örneğin, bazı işlevler arasında GET, POST ve DELETE yer alır. Bunların her biri veriyle farklı şekilde etkileşime girerek adının önerdiği eylemi gerçekleştirir. Bu haliyle HTTP, sisteminizin internetle veya internet üzerindeki iletişimini sağlar.
- FTP
FTP, dosya aktarım protokolü (file transfer protocol) anlamına gelir. Yine uygulama katmanında uygulanan bu protokol, ana bilgisayarlar arasında dosya aktarımından sorumludur. Ancak bunun güvenli bir protokol olmadığını unutmamak önemlidir. Bu yüzden çoğunlukla halka açık ortamlarda kullanılır.
- DNS
DNS, alan adı sistemi (domain name system) anlamına gelir. İnternet kaynaklarınızı kolayca adlandırmanıza olanak tanıyan başka bir uygulama katmanı protokolüdür. İsimler insan dostudur ve alan adını IP adresine bağlar, böylece ona kolaylıkla erişebilirsiniz.
- SSH
SSH, güvenli kabuk (secure shell) anlamına gelen bir uygulama katmanı protokolüdür. Adından da anlaşılacağı gibi, uçtan uca şifrelenmiş bir protokoldür. Uzak sunucuyla olan bağlantıları daha güvenli hale etmek için kullanabilirsiniz. Her yerde bulunan yaygın bir protokoldür, bu nedenle etrafında birçok ek teknoloji oluşturulmuştur.
Ek olarak, SSH protokolünün uygulanmasına ilişkin derinlemesine kılavuzları burada bulabilirsiniz:
- Linux Sunucunuzu SSH Anahtar Tabanlı Kimlik Doğrulaması Kullanacak Şekilde Yapılandırma
- Ubuntu'da Uzak Sunucuya Bağlanmak İçin SSH Nasıl Kullanılır
- Bu Basit Bash Betiğini Kullanarak SSH Anahtarlarını Bulut Sunucularınıza Otomatik Olarak Enjekte Edin
Sonuç
Son olarak, artık ağ oluşturmanın temellerine aşinasınız. Terminolojiyi önceden gözden geçirmek deneyiminizi kolaylaştıracaktır. Ayrıca, sunucunuzun potansiyelini en üst düzeye çıkarma fırsatı da sunacaktır. Bunun nedeni, sistem içinde iletişime izin veren bileşenlerin ve bağlantıların farkında olmanızdır. Kendinizi ağ operasyonları dünyasına taşımak için bu bilgiyi bir temel olarak kullanın.
Keyifli Bilişimler!
Yorumlar
Henüz yorum yapılmamış. İlk siz olun.