Bilgisayarlarla kıyısından köşesinden azıcık ilgileniyorsanız 'port' terimini illaki duymuş olmalısınız. Peki, bağlantı noktası olarak da bilinen portun önemi ve işlevi nedir? Bu yazımızda merak edenleriniz için portun ne olduğunu sizlere olabildiğince basit bir şekilde açıklamaya çalıştık. İyi okumalar!
Port nedir?
Port; ağ bağlantılarının başladığı ve bittiği, belirli bir işlemi veya bir ağ hizmeti türünü tanımlayan, bağlantı noktası olarak da adlandırabileceğimiz mantıksal sanal bir noktadır. Portlar yazılım tabanlıdır ve bir bilgisayarın işletim sistemi tarafından yönetilir. Her bir port belirli bir işlem veya hizmetle ilişkilendirilir. Portlar, bilgisayarların farklı işlemler arasında kolayca ayrım yapmasına olanak tanır: mesela, aynı internet bağlantısı üzerinden bir bilgisayara ulaşan iki e-posta, portlar sayesinde web sayfalarından farklı bir bağlantı noktasına gider.
Her bir aktarım protokolü ve adres kombinasyonu için, port numarası ya da bağlantı noktası numarası olarak bilinen 16 bitlik işaretsiz bir sayı ile bir bağlantı noktası tanımlanır. İletim Denetimi Protokolü (TCP) ve Kullanıcı Veri Birimi Protokolü'dür (UDP), port numaralarını kullanan en yaygın aktarım protokolleridir.
Port numarası nedir?
Bağlantı noktası numarası, 0 ile 65535 arasında değişen 16 bitlik işaretsiz bir tamsayıdır. Port numarası 0, TCP için ayrılmıştır ve kullanılamaz; UDP için ise kaynak portu isteğe bağlıdır ve sıfır değeri, port olmadığı anlamına gelir.
Portlar, her bir port başına bir numara atanacak şekilde standartlaştırılmıştır. Çoğu portun kendisine ait belirli özel bir protokolü vardır. Mesela bütün Hiper Metin Transfer Protokolü (HTTP)’ne ait mesajlar 80 numaralı porta gider. IP adresleri mesajların belirlenen cihazlara gidip gelmesini sağlarken, port numaraları bu cihazlar içindeki belirli hizmetlerin veya uygulamaların hedef olarak belirlenmesine izin verir.
Bazı port numaraları
Port numaralarının ve kendilerine atanan protokollerin tam listesini Internet Assigned Numbers Authority (IANA) tutar. Hepsi ortak kullanıma açık olmasa da 65.535 olası port numarası mevcut. İlişkili ağ protokolleriyle birlikte en sık kullanılan portlardan bazıları ise şu şekildedir:
-
Port 20 ve 21:
Dosya aktarım protokolü, yani FTP. FTP, bir istemci ve bir sunucu arasında dosya aktarımı içindir. Port 20 veri aktarımı için kullanılırken, port 21 komuta kontrolü için kullanılır.
-
Port 22:
Güvenli Kabuk ya da kısaca SSH. Güvenli ağ bağlantıları oluşturan birçok tünel protokolünden biridir.
-
Port 25:
Basit Posta Aktarım Protokolü ya da SMTP. SMTP, e-posta için kullanılır.
-
Port 53:
Alan adı sistemi, DNS. DNS, modern İnternet için oldukça önemli bir süreçtir; insan tarafından okunabilen alan adlarını makine tarafından okunabilen IP adresleriyle eşleştirerek, kullanıcıların uzun bir IP adresi listesini ezberlemeden web sitelerini ve uygulamaları yüklemelerini sağlar.
-
Port 80:
Hiper Metin Transfer Protokolü ya da HTTP. HTTP, World Wide Web'i (WWW) mümkün kılan protokoldür.
-
Port 123:
Ağ Zaman Protokolü, NTP. NTP, bilgisayar saatlerinin birbirleriyle senkronize olmasına izin verir ve bu şifreleme için gerekli bir işlemdir.
-
Port 179:
Sınır Geçit Protokolü, BGP. BGP, Otonom sistemler de denen, İnternet'i oluşturan büyük ağlar arasında verimli yollar oluşturmak için gereklidir. Otonom sistemler, kontrol ettikleri IP adreslerini yayınlamak için BGP'yi kullanır.
-
Port 443:
Güvenli HTTP yani HTTPS. HTTPS, HTTP'nin güvenli ve şifreli sürümüdür. Tüm HTTPS web trafiği 443 numaralı bağlantı noktasına gider. HTTPS üzerinden, DNS gibi şifreleme için HTTPS kullanan ağ hizmetleri de bu porta bağlanır.
-
Port 500:
Güvenli IPsec bağlantıları kurma sürecinin bir parçası olan İnternet Güvenlik İlişkisi ve Anahtar Yönetim Protokolü, ISAKMP.
-
Port 3389:
Uzak Masaüstü Protokolü, kısaca RDP. RDP, kullanıcıların masaüstü bilgisayarlarına başka bir cihazdan uzaktan bağlanmalarını sağlar.
Portlar nasıl internet bağlantılarını daha verimli kılar?
Aynı ağ bağlantısı üzerinden bir bilgisayardan bir başka bilgisayara devasa boyutlarda farklı türde veri akışı olur. İşte bu noktada, portların yardımıyla bilgisayar gelen bu verilerle ne yapacağını anlar.
Varsayalım ki Engin, Dosya Aktarım Protokolü'nü (FTP) kullanarak Hazal’a bir MP3 ses kaydı gönderiyor. Hazal'ın bilgisayarı MP3 dosyası verilerini Hazal'ın e-posta uygulamasına iletseydi, e-posta uygulaması bu verileri nasıl yorumlayacağını bilemezdi; ancak Engin'in dosya aktarımı FTP için belirlenmiş bağlantı noktasını (bağlantı noktası 21) kullandığından, Hazal’ın bilgisayarı dosyayı başarıyla alır ve saklar. Ayrıca bu esnada Hazal’ın bilgisayarı eş zamanlı olarak port 80’i kullanarak HTTP web sayfalarını da yükleyebilir; hem web sayfası dosyaları hem de MP3 ses dosyası aynı WiFi bağlantısı üzerinden Hazal'ın bilgisayarına ulaşıyor olsa bile.
Portlar, ağ katmanının bir parçası mıdır?
OSI modeli, internet'in nasıl çalıştığının kavramsal bir modelidir. Farklı internet servislerini ve işlemlerini yedi katmana böler. Bu katmanlar aşağıdaki gibidir:
-
Uygulama katmanı: Uygulamaların ağ hizmetlerine eriştiği insan-bilgisayar iletişim katmanıdır.
-
Sunum katmanı: Verilerin kullanılabilir bir biçimde olmasını sağlar ve veri şifrelemenin gerçekleştiği yerdir.
-
Oturum katmanı: Bağlantıları korur; portları ve oturumları kontrol etmekten sorumludur.
-
Taşıma katmanı: TCP ve UDPdahil olmak üzere iletim protokollerini kullanarak verileri iletir.
-
Ağ katmanı: Verinin hangi fiziksel yola gideceğine karar verir.
-
Veri bağlantı katmanı: Verinin ağdaki biçimini tanımlar.
-
Fiziksel katman: Ham bit akışını fiziksel ortam üzerinden iletir.
Portlar, 4. katman olan Taşıma katmanına ait bir konsepttir. Bir gönderinin hangi noktaya gideceğini sadece TCP ve UDP gibi bir taşıma protokolü gösterebilir. TCP ve UDP başlıklarında port numaralarını gösteren bir bölüm bulunur. Ağ katmanı protokolleri - örneğin, İnternet Protokolü (IP) - belirli bir ağ bağlantısında hangi portun kullanımda olduğundan habersizdir. Standart bir IP başlığında, veri paketinin hangi porta gitmesi gerektiğini gösteren bir kısım yoktur. IP başlıkları, o IP adresindeki port numarasını değil, yalnızca hedef IP adresini belirtir.
Genellikle, ağ katmanı protokolleri hemen hemen her zaman bir taşıma katmanı protokolü ile birlikte kullanıldığından, ağ katmanındaki portun belirtilmemesinin ağ oluşturma süreçleri üzerinde hiçbir etkisi yoktur. Gel gelelim ki bu, İnternet Kontrol İleti Protokolü (ICMP) paketlerini kullanarak IP adreslerine "ping atan" yazılım olan test yazılımının işlevselliğini etkiler. ICMP, ağa bağlı cihazlara ping atabilen bir ağ katmanı protokolüdür; ancak belirli portlara ping yapma yeteneği olmadan, ağ yöneticileri bu cihazlardaki belirli hizmetleri test edemez.
Bazı ping yazılımları -örneğin My Traceroute- UDP paketleri gönderme seçeneği sunar. UDP, herhangi bir port belirtemeyen ICMP'nin aksine belirli bir port belirtebilen bir taşıma katmanı protokolüdür. ICMP paketlerine bir UDP başlığı ekleyerek, ağ yöneticileri ağa bağlı bir cihazdaki belirli portları test edebilir.
Güvenlik duvarları neden bazı portları engeller?
Güvenlik duvarı, bir dizi güvenlik kuralına dayalı olarak ağ trafiğini engelleyen veya izin veren bir güvenlik sistemine verilen isimdir. Güvenlik duvarları genellikle güvenilir bir ağ ile güvenilmeyen bir ağ arasında bulunur ki bu güvenilmeyen ağ genellikle İnternet'tir. Mesela, ofis ağları, ağlarını çevrimiçi tehditlerden korumak için genellikle bir güvenlik duvarı kullanır.
Bazı saldırganlar, portların "açık" bırakıldığını, yani trafik alabileceklerini umarak rastgele portlara kötü amaçlı ileti göndermeye çalışır; tıpkı bir araba hırsızının sokakta yürürken park halindeki araçların kapılarından birinin açılmasını umarak açmayı denemesi gibi. Bu nedenle güvenlik duvarları, mevcut portların çoğuna yönlendirilen ağ trafiğini engelleyecek şekilde yapılandırılmalıdır. Mevcut bağlantı noktalarının büyük çoğunluğunun trafik alması için meşru bir neden yoktur.
Sağlam yapılandırılmış güvenlik duvarları, ortak kullanımda olduğu bilinen önceden belirlenmiş birkaç port dışında varsayılan tüm bağlantı noktalarına giden trafiği engeller. Örneğin, kurumsal bir güvenlik duvarı yalnızca 25 (e-posta), 80 (web trafiği), 443 (web trafiği) ve diğer birkaç portu açık bırakarak dahili çalışanların bu temel hizmetleri kullanmasına izin verip geriye kalan 65.000’i aşkın portu ise engelleyebilir.
Daha spesifik bir örnek vermek gerekirse, saldırganlar bazen 3389 numaralı porta saldırı trafiği göndererek RDP protokolündeki güvenlik açıklarından faydalanmaya çalışır. Bu gibi durumlarda bir güvelik duvarı saldırıları durdurmak için varsayılan olarak 3389 numaralı portu engelleyebilir. Bu port yalnızca uzak masaüstü bağlantıları için kullanıldığından, çalışanların uzaktan çalışması gerekmediği sürece böyle bir kuralın günlük iş operasyonları üzerinde pek bir etkisi yoktur.