
Sunucunuzda hangi servisler internete açık? Bu soruya "web ve SSH" diye cevap veriyorsanız, muhtemelen eksik biliyorsunuz.
Kurulan her yazılım kendi portlarını açar ve bunların çoğu dışarıya açık kalmamalıdır. Bu yazı, VDS sunucu saldırı yüzeyinizi denetlemeyi anlatıyor.
Neden Önemli?
Her açık port, bir giriş denemesi noktasıdır. İnternete açık her sunucu sürekli taranır ve açık portlar otomatik olarak tespit edilir.
Riskli senaryolar:
| Açıkta kalan servis | Risk |
|---|---|
| Veritabanı portu | Doğrudan veri erişimi denemesi |
| Önbellek servisi | Genellikle kimlik doğrulama yok |
| Yönetim paneli | Kaba kuvvet hedefi |
| Geliştirme sunucusu | Hata ayıklama bilgisi ifşası |
| İzleme arayüzü | Sistem bilgisi sızıntısı |
| Kuyruk yönetim arayüzü | İş verilerine erişim |
İkinci satır özellikle tehlikelidir: önbellek servisleri varsayılan olarak kimlik doğrulama beklemez. Dışarıya açık bir önbellek servisi, kimlik doğrulaması olmadan tüm verinize erişim demektir — ve bu servisler otomatik taramalarla düzenli olarak bulunup istismar edilir.
Dördüncü satır da yaygın bir kazadır: geliştirme sırasında başlatılan bir test sunucusu kapatılmayı unutulur ve ayrıntılı hata çıktılarıyla birlikte açık kalır.
İki Yönlü Denetim
Doğru bir denetim iki taraftan yapılmalıdır:
İçeriden: Ne Dinliyor?
Sunucu üzerinde hangi süreçlerin hangi portları dinlediğini listeleyin. Bu liste size şunu gösterir:
- Hangi servisler çalışıyor
- Hangi portlarda dinliyorlar
- Hangi arayüze bağlılar — yalnızca yerel mi, tüm arayüzler mi?
Üçüncü madde en kritik bilgidir: bir servis yalnızca yerel arayüze bağlıysa, güvenlik duvarı olmasa bile dışarıdan erişilemez.
Dışarıdan: Ne Erişilebilir?
İçeriden gördüğünüz liste, gerçekte dışarıdan neye erişilebildiğini söylemez. Güvenlik duvarı bazılarını engelliyor olabilir.
Bu yüzden dışarıdan bir tarama yapın — başka bir sunucudan veya bir çevrimiçi araçla. Gerçek saldırı yüzeyiniz, dışarıdan görünenlerdir.
İki listenin karşılaştırılması, güvenlik duvarınızın gerçekten çalışıp çalışmadığını da doğrular.
Temel İlkeler
- Varsayılan reddet. Güvenlik duvarı her şeyi kapatsın, yalnızca gerekenler açılsın.
- Yerel servisleri yerel arayüze bağlayın. Veritabanı, önbellek ve kuyruk servisleri dışarıya hiç açılmamalı.
- Yönetim arayüzlerini kısıtlayın. IP kısıtı veya VPN arkasında.
- Kullanılmayan servisleri kaldırın. Kapatmak yetmez; kurulu olmayan bir servis hiç risk üretmez.
- Her açık port için gerekçe olsun. Neden açık olduğunu açıklayamıyorsanız kapatın.
İkinci madde çift koruma sağlar: hem güvenlik duvarı engeller hem de servis zaten dışarıyı dinlemez. Güvenlik duvarı kuralı yanlışlıkla silinse bile servis erişilebilir olmaz.
Beşinci madde bir denetim disiplinidir ve en pratik olanıdır: liste çıkarın, her satır için "bu neden açık?" sorusunu sorun.
IPv6 Unutulan Taraf
Güvenlik duvarı kurallarınız yalnızca IPv4 için tanımlanmış olabilir. Sunucunuzun IPv6 adresi varsa ve o taraf açıksa:
- Kurallarınız uygulanmaz. IPv6 trafiği ayrı bir kural setinden geçer.
- Portlar açık kalır. IPv4'te kapattığınız servis IPv6 üzerinden erişilebilir olabilir.
- Fark edilmez. Çoğu tarama aracı varsayılan olarak IPv4 test eder.
Bu, denetimlerde en sık kaçırılan boşluktur. Güvenlik duvarı kurallarınızın her iki protokol için de tanımlı olduğundan emin olun ve taramalarınızı IPv6 üzerinden de yapın.
Değişimi İzlemek
Bir kerelik denetim yeterli değildir. Açık portlar zamanla değişir:
- Yeni bir yazılım kurulur ve kendi portunu açar
- Bir güncelleme varsayılan ayarları değiştirir
- Geliştirme amaçlı bir servis başlatılır ve unutulur
- Güvenlik duvarı kuralı yeniden başlatmada kaybolur
Bu yüzden port denetimini düzenli hâle getirin:
- Beklenen port listesini belgeleyin. Referans listeniz olsun.
- Periyodik tarama kurun. Otomatik ve düzenli.
- Farkı bildirin. Yeni bir port açıldıysa uyarı gelsin.
- Her yazılım kurulumundan sonra kontrol edin.
Üçüncü madde en değerli otomasyondur: beklenmedik bir portun açılması, hem bir yapılandırma hatasının hem de bir ele geçirmenin işareti olabilir.
Yönetim Arayüzleri
Veritabanı yönetim panelleri, izleme arayüzleri ve kontrol panelleri özel dikkat gerektirir. Bunlar güçlü araçlardır ve açıkta kalmamalıdır.
Korunma seçenekleri, güçlüden zayıfa:
- VPN arkasında tutmak. En güvenli seçenek.
- SSH tüneli üzerinden erişmek. Port dışarıya hiç açılmaz.
- IP kısıtı uygulamak. Sabit IP'niz varsa pratik.
- Ek parola koruması eklemek. Uygulamanın kendi girişinden önce.
İkinci seçenek pratik ve maliyetsizdir: yönetim arayüzü yalnızca yerel arayüzü dinler, siz SSH tüneliyle bağlanırsınız. Dışarıdan bakan biri o servisin varlığını bile göremez.
Denetim Kontrol Listesi
- Dinleyen portları listeleyin ve her biri için gerekçe yazın
- Yalnızca yerel olması gerekenleri tespit edin
- Dışarıdan tarama yapın ve iki listeyi karşılaştırın
- IPv6 üzerinden de tarayın
- Güvenlik duvarı kurallarının kalıcı olduğunu doğrulayın
- Kullanılmayan servisleri kaldırın
- Yönetim arayüzlerini kısıtlayın
- Sonucu belgeleyin ve periyodik kontrol kurun
Beşinci madde sıkça atlanır: güvenlik duvarı kuralları kalıcılaştırılmamışsa, bir sonraki yeniden başlatmada tüm portlar açık hâle gelir ve bunu kimse fark etmez.
Bu denetim, yeni kurulan bir VDS sunucu için ilk gün yapılması gereken işlerdendir — ve sonrasında düzenli olarak tekrarlanmalıdır.
Sonuç
Saldırı yüzeyiniz, açık portlarınızdır ve bu liste zamanla sessizce büyür. Denetimi iki yönlü yapın: içeriden ne dinlediğini, dışarıdan neye erişilebildiğini görün — gerçek saldırı yüzeyiniz dışarıdan görünenlerdir. En etkili tek önlem, veritabanı ve önbellek gibi servisleri yalnızca yerel arayüze bağlamaktır; böylece güvenlik duvarı kuralı silinse bile erişilebilir olmazlar. Ve en sık kaçırılan boşluğu unutmayın: IPv6 tarafındaki kurallarınız eksik olabilir ve çoğu tarama aracı varsayılan olarak orayı kontrol etmez.
Sıkça Sorulan Sorular (SSS)
Açık portlarımı nasıl denetlerim?
İki taraftan: sunucu üzerinde dinleyen portları ve bağlı oldukları arayüzleri listeleyin, ardından dışarıdan bir tarama yapın. İki listeyi karşılaştırmak hem gerçek saldırı yüzeyinizi gösterir hem de güvenlik duvarınızın çalıştığını doğrular.
Veritabanı portu dışarıya açık olmalı mı?
Neredeyse hiçbir durumda. Uygulamanız aynı sunucudaysa veritabanı yalnızca yerel arayüzü dinlemelidir. Uzak erişim gerekiyorsa SSH tüneli veya VPN kullanın; portu doğrudan internete açmayın.
IPv6 neden ayrı kontrol edilmeli?
IPv6 trafiği ayrı bir kural setinden geçer. Yalnızca IPv4 için tanımlanmış güvenlik duvarı kuralları IPv6 tarafında uygulanmaz ve orada kapattığınızı sandığınız portlar açık kalabilir. Çoğu tarama aracı da varsayılan olarak yalnızca IPv4 test eder.
Yönetim panellerini nasıl korumalıyım?
En temiz yöntem, panelin yalnızca yerel arayüzü dinlemesi ve size SSH tüneliyle bağlanmanızdır — dışarıdan bakan biri o servisin varlığını bile göremez. Alternatif olarak VPN arkasına alın veya IP kısıtı uygulayın.