Açık Portları Kapatma: Sunucu Hardening Rehberi
Açık portları kapatmak için net kontrol adımları: hangi portlar riskli, nasıl taranır, güvenli kapatma ve kalıcı hardening ayarları.
Sunucu güvenliğinde en hızlı kazanım çoğu zaman “karmaşık bir ürün” eklemek değil, gereksiz ağ erişimini kesmektir. Açık portlar; zafiyet taraması, brute-force denemeleri ve servis suistimali için doğrudan hedef alanı oluşturur. Bu rehberde; VDS/VPS/dedicated fark etmeksizin sunucunuzdaki açık portları tespit etmeyi, servisleri doğru kapatmayı ve değişikliklerin kalıcı kalmasını sağlayacak hardening adımlarını net bir sırayla öğreneceksiniz.
Aşağıdaki adımları uygularken amacınız “her şeyi kapatmak” değil; gerçekten ihtiyaç duyulan servisleri bırakmak, diğerlerini kapatmak ve yalnızca belirli kaynaklardan erişime izin vermektir. Son bölümde de günlük/aylık kontrol rutini için net bir aksiyon planı bulacaksınız.
1) Önce envanter çıkarın: Açık portları nasıl görünür hale getireceksiniz?
Hardening’in ilk adımı, sunucuda gerçekten hangi portların dinlediğini (listening) ölçmektir. Bunun için hem yerel (sunucu üzerinde) hem de dışarıdan (internet tarafından) kontrol yapmanız gerekir.
Yerel dinleme kontrolü (LISTEN durumu)
Linux sunucularda en pratik yöntemlerden biri ss komutudur.
- Dinleyen portları listeleme:
ss -lntup- Açıklama:
-ldinliyor-nisim çözümlemesi yok (hızlı)-tTCP-uisterseniz UDP için kullanılır-phangi süreç (process) dinliyor
Bu çıktıdaki örnek satır mantığı şudur: 0.0.0.0:22 ya da 127.0.0.1:5432 gibi. Burada hedefiniz şunları netleştirmek:
- Her açık portun karşılığında beklenen servis var mı?
- Port, gerçekten dışarıya mı açık (0.0.0.0 / ::), yoksa sadece localhost’a mı bağlı (127.0.0.1)?
- Dinleyen süreç adı doğru mu (ör. nginx, sshd, mysql)?
Dış erişim kontrolü (internet tarafından görünürlük)
Sunucunuzun dışarıdan erişilebilir portlarını görmek için servis sağlayıcınızın güvenlik ekleri (ör. güvenlik grubu) ve yerel firewall dışında, internet yönünden de kontrol yapılmalıdır.
- Basit test (dıştan): Bir port tarayıcıyla (ör.
nmap) hedef sunucuyu tarayın. - Kritik nokta: Testi hem TCP hem UDP açısından yapmanız gerekmez, ancak UDP’de servis kullanımı (DNS, bazı oyun uygulamaları) varsa değerlendirilmelidir.
Eğer dış taramada beklenmeyen portlar görünüyorsa sebep genellikle şudur:
- Firewall kuralı eksik
- Güvenlik grubu / bulut katmanı açık kalmış
- Servis yanlış arayüzde dinliyor (ör. 0.0.0.0 yerine 127.0.0.1 olmalı)
Güvenlik için temel kavram: “Dinliyor” ile “Erişilebilir” farklıdır
Sunucuda bir port “listening” durumda olabilir; ancak firewall bunu dışarıdan engelliyorsa dış dünyadan erişilemez. Hardening sürecinde iki hedef vardır: 1) Servisi kapat (uygunsa) 2) Servis çalışsa bile erişimi sınırla (firewall)
2) Port–servis haritası oluşturun: Hangi portlar genelde risklidir?
Her sunucu aynı değildir; ancak standart altyapılarda bazı portlar sıkça yanlış bırakılır. Aşağıdaki tablo “tek başına kapanması şart” listesinden ziyade risk sınıflandırma içindir.
| Port | Yaygın servis | Hardening yaklaşımı |
|---|---|---|
| 22 | SSH | Gerekliyse bırakın; erişimi kısıtlayın (IP whitelist), şifre girişini kapatın |
| 80 | HTTP | Web sunuyorsanız gerekli; otomatik redirect + WAF ile dengeleyin |
| 443 | HTTPS | Web için gerekli; sertifika/uygun TLS ayarlarını kontrol edin |
| 21 | FTP | Çoğu kurulumda gereksiz; pasif/şifreleme sorunları yüzünden kapatma tercih edin |
| 23 | Telnet | Her koşulda kapatma hedefi |
| 25 | SMTP | Sadece gerçek mail gönderimi varsa gerekli; değilse kapatın |
| 53/UDP | DNS | Sadece DNS rolü varsa gerekli; yoksa kapatın |
| 3306/3307 | MySQL | Uygulama dışına açmayın; sadece uygulama sunucusu/localhost üzerinden izin verin |
| 5432 | PostgreSQL | MySQL’e benzer; dışarıdan açmayın |
| 27017 | MongoDB | Varsayılan kurulumlar için sık hedef; dışarıya kapatın |
| 3389 | RDP (Windows) | Gereksizse kapatın; gerekiyorsa VPN veya IP kısıtı |
| 5900 | VNC | Uygulama yoksa kapatın; varsa VPN zorunlu |
| 2049 | NFS | İhtiyaç yoksa kapatın; ihtiyaç varsa sadece özel ağdan erişim |
Net karar kuralı:
- Sunucunuz “web” ise, 80/443 dışındaki geniş kapsamlı dış erişim hedeflemeyin.
- Sunucunuz “veritabanı” ise, DB portlarını tek başına internetten açmayın; sadece uygulama tarafı erişsin.
- SSH erişimi gerekiyorsa bile, dışarıdan tüm dünyaya açık bırakmayın.
3) Servisi kapatın: Kullanılmayan portun en güvenli cevabı “çalışmamasıdır”
Firewall doğru olsa bile, gereksiz servislerin çalışması risk üretir. Hardening’de ilk tercih servis kapatmadır.
Sistemde hangi servis hangi porta bağlı?
Yerel dinleme çıktılarını kullanarak portu dinleyen sürecin paket adını tespit edin. Pratik yaklaşım:
- ss -lntup ile portu bul
- Satırdaki `users:((
Hosting karşılaştırması yapmaya hazır mısın?
100+ firmanın fiyatlarını tek tıkla karşılaştır, en uygun paketi bul.
Hosting Karşılaştır →İlgili Yazılar
E-ticaret hosting özellikleri: Ne aramalı? Net kontrol listesi
E-ticaret için hosting seçerken bakılacak performans, güvenlik, yedekleme, ölçeklenebilirlik ve uyumluluk maddelerini net şekilde listeliyoruz.
VPS nedir, ne zaman tercih edilmeli? Net seçim rehberi
VPS nedir, VPS mi VDS mi tercih edilir? Kaynak ihtiyacı, kontrol seviyesi ve maliyet açısından net karar kriterleri bu rehberde.
Yurt Dışı Sunucudan Türkiye Trafiği: Optimizasyon Rehberi
Yurt dışı sunucuda Türkiye trafiği için gecikmeyi düşürme, CDN/WAF, DNS, TCP/TLS ve izleme adımlarını net bir kontrol listesiyle öğrenin.
MySQL Master-Slave Replication Kurulumu (2026 Rehberi)
MySQL master-slave replication kurulumu: doğru replika kullanıcıları, konfigürasyon adımları, GTID/binlog, test ve izleme ile kesintisiz geçiş planı.
