Hosting paneliniz (cPanel, DirectAdmin, Plesk vb.) doğrudan internete açık olduğunda, aslında tüm altyapınızın kalbini herkesin görebileceği bir kapıya dönüştürmüş oluyorsunuz. Güvenlik denetimi yaptığımız pek çok projede, güçlü şifreler, 2FA ve WAF kural setleri kurulmuş olsa bile, panel portlarının herkese açık kaldığını ve botlar tarafından sürekli tarandığını görüyoruz. Özellikle ajanslar, SaaS ekipleri ve çoklu sunucu yöneten DevOps ekipleri için bu durum hem operasyonel hem de hukuki ciddi riskler barındırıyor.
Bu yazıda, panel erişimini tamamen internette görünmez hale getirip, yalnızca yetkili kişilerin, kayıt altına alınmış ve kontrol edilebilir bir kanaldan bağlanabildiği bir mimariyi konuşacağız: VPN + bastion host kombinasyonu. Amacımız, teoride kalan kavramlar yerine, DCHost üzerinde çalışan tipik bir VPS veya dedicated sunucu altyapısında adım adım uygulanabilir bir model kurmak. Eğer Zero Trust, SSH anahtar yönetimi, mTLS gibi kavramlara aşinaysanız burada onları bir üst seviyeye taşıyacağız; değilseniz de sade bir dille güvenlik mimarinizi nasıl olgunlaştırabileceğinizi netleştireceğiz.
İçindekiler
- 1 Neden Hosting Panel Erişimi En Kritik Saldırı Yüzeylerinizden Biri?
- 2 Temel Bileşenler: VPN, Bastion Host ve Yönetim Ağı
- 3 Örnek Mimari: DCHost Üzerindeki cPanel/Plesk Sunucularını Koruma
- 4 Uygulama Adımları: Sıfırdan Güvenli Erişim Kurulumu
- 5 Gelişmiş Güvenlik Katmanları: Zero Trust, mTLS ve Port Açmadan Yönetim
- 6 Operasyonel En İyi Uygulamalar: Loglama, İzleme ve Erişim Denetimleri
- 7 Sonuç: Panel Erişimini İnternetten Çekmek En Kolay Kazanç
Neden Hosting Panel Erişimi En Kritik Saldırı Yüzeylerinizden Biri?
Web siteniz hacklendiğinde genellikle uygulama seviyesindeki açıklar konuşulur: eski bir eklenti, zayıf bir admin parolası veya SQL injection. Ancak tecrübede gördüğümüz şu ki; büyük hasarların önemli kısmı doğrudan hosting paneli veya sunucuya yetkisiz erişimle başlıyor.
Panel erişimi neden bu kadar kritik?
- Tek noktadan tam yetki: cPanel, Plesk veya DirectAdmin kullanıyorsanız; dosyalar, veritabanları, e-posta hesapları, DNS, SSL, FTP hepsi tek arayüzde. Panelin ele geçirilmesi, tüm hesabın veya hatta tüm sunucunun ele geçirilmesi demek.
- Brute-force ve parola tahmin saldırıları: İnternete açık her panel login ekranı, botnet’lerin sürekli taradığı, kullanıcı adı/parola denediği klasik hedeflerdir.
- 0-day ve panel yazılımı açıkları: Panel yazılımlarında zaman zaman kritik güvenlik açıkları çıkıyor. Siz güncelleme yapana kadar, internete açık her paneliniz potansiyel hedef.
- IP paylaşımı ve ajanslar: Ajans veya ekip olarak aynı panel bilgilerini birden fazla kişiyle paylaşıyorsanız, kim, ne zaman, nereden bağlandı sorusunun cevabı bulanıklaşıyor.
Bu yüzden modern güvenlik yaklaşımında ilk yapılacak işlerden biri, yönetim arayüzlerini doğrudan internete açmamak. Zaten Zero Trust yaklaşımını detaylıca anlattığımız Zero Trust ile hosting ve sunucu erişimini güvenceye alma rehberinde de vurguladığımız gibi, “güvenli iç ağ” varsayımını terk edip, her erişimi doğrulamak gerekiyor.
Temel Bileşenler: VPN, Bastion Host ve Yönetim Ağı
VPN ile kapalı bir yönetim ağı kurmak
VPN (Sanal Özel Ağ), istemci cihazınız ile sunucularınız arasında şifreli bir tünel kurar ve sizi sanki aynı yerel ağdaymışsınız gibi davranır. Panel portlarını (2083, 8443, 2222 vb.) herkese açmak yerine, yalnızca bu VPN ağı içinden erişilebilir hale getirerek çok büyük bir saldırı yüzeyini devreden çıkarmış olursunuz.
VPN’in faydalarını kısaca özetleyelim:
- Tüm trafik (panel, SSH, RDP) internet üzerinden şifreli akar.
- Panel portları sadece VPN iç IP’lerinden erişilebilir; dışarıdan bakınca “kapalı” görünür.
- Erişim IP’si kullanıcı cihazına göre değil, VPN sunucusuna göre sabitlenir; firewall yönetimi basitleşir.
- Kullanıcı ayrıntılarını (kim bağlandı, ne zaman bağlandı) VPN seviyesinde loglayabilirsiniz.
VPN kavramına yabancıysanız, temel mantığı ve senaryoları VPN nedir ve neden önemlidir yazımızda daha geniş bir çerçevede anlattık; bu makalede ise odağı tamamen panel erişimine çekiyoruz.
Bastion host (jump server) nedir?
Bastion host, diğer sunuculara erişmek için “atlama taşı” olarak kullandığınız, güvenliği ekstra sıkılaştırılmış özel bir sunucudur. Genellikle şu amaçla kullanılır:
- SSH veya RDP bağlantılarının tek bir noktadan geçmesini sağlamak
- Ekip üyelerinin doğrudan üretim sunucularına değil, önce bastion’a bağlanmasını zorunlu kılmak
- Komut geçmişini, oturumları ve aktiviteleri daha kolay loglayabilmek
VPN ve bastion host’u birlikte düşündüğünüzde tipik akış şöyle olur:
- Kullanıcı şirket bilgisayarından VPN’e bağlanır.
- VPN ağı üzerinden bastion host’a SSH ile bağlanır.
- Bastion host üzerinden hedef panele (örneğin https://panel_ic_ip:2083) veya hedef sunucuya SSH tüneli açar.
Böylece paneliniz ve sunucularınız hiçbir zaman doğrudan internete açılmaz; sadece VPN ve bastion üzerinden erişilebilir.
Hosting panelleri için tipik erişim akışı
Pratikte, DCHost üzerinde bir VPS veya dedicated sunucu kullanıyorsanız şu yapıyı hedefleyebilirsiniz:
- Panel yüklü sunucuların yönetim portları (cPanel, Plesk, phpMyAdmin, SSH) yalnızca VPN ağı veya bastion host IP’si üzerinden erişilebilir.
- SSH bağlantıları doğrudan sunuculara değil, bastion host üzerinden geçer.
- Her ekip üyesi için ayrı SSH anahtarı ve kullanıcı hesabı kullanılır; şifre ile giriş kapalıdır.
- Tüm bu erişimler hem bastion’da hem de panel loglarında tutulur.
SSH anahtarları ve çok kullanıcılı erişim tasarımı konusunda daha önce hazırladığımız SSH anahtar yönetimi ve yetki paylaşımı rehberi bu mimarinin önemli tamamlayıcılarından biridir.
Örnek Mimari: DCHost Üzerindeki cPanel/Plesk Sunucularını Koruma
Şimdi teoriyi somutlaştıralım ve DCHost altyapısında çalışan bir senaryoyu ele alalım. Varsayalım ki:
- 1 adet VPN + bastion host olarak kullanacağınız DCHost VPS’iniz var.
- 2 adet de cPanel veya Plesk kurulu web hosting sunucunuz var.
Hedefimiz şu olsun: Bu iki panel sunucusuna yalnızca VPN’e bağlanmış kullanıcılar ve bastion host üzerinden erişilebilsin; internette rastgele bir IP panel login sayfasını göremesin.
Ağ ve firewall tasarımı
Basitleştirilmiş bir IP planı düşünelim:
- VPN + bastion VPS: 10.0.0.10 (özel VPN iç IP’si)
- Web sunucusu 1 (cPanel): 10.0.1.10
- Web sunucusu 2 (Plesk): 10.0.1.11
Güvenlik kuralları:
- Web sunucularında panel portları (örneğin 2083, 2087, 8443) sadece 10.0.0.0/24 VPN ağına izin verir.
- SSH portu sadece 10.0.0.10 (bastion host) IP’sine izin verir.
- HTTP/HTTPS (80, 443) tüm dünyaya açıktır; çünkü sitelerin ziyaret edilebilir olması gerekir.
Bunu DCHost VPS veya dedicated sunucularınızda iptables, nftables, ufw veya firewalld ile uygulayabilirsiniz. Güvenlik duvarı tarafında daha detaylı bir sertleştirme yapmak isterseniz, VPS güvenlik sertleştirme kontrol listesi yazısındaki adımlar güzel bir başlangıç olur.
Küçük ekipler için tek VPN + bastion host senaryosu
3–5 kişilik bir ekip için mimariyi çok karmaşıklaştırmanıza gerek yok. Şu yapı çoğu zaman yeterli ve sürdürülebilir oluyor:
- Tek bir DCHost VPS üzerine VPN sunucusu (örneğin WireGuard veya OpenVPN) kurulumu
- Aynı VPS’i bastion host olarak konumlandırma (SSH, mosh vb. sadece bu sunucuda açık)
- Her ekip üyesi için ayrı VPN hesabı ve ayrı SSH anahtarı
- Panel sunucularının yönetim portlarını sadece VPN ağına açma
Bu yapıda güvenliğinizin kırılma noktası, VPN sunucunuz ve bastion host’unuz oluyor. Dolayısıyla:
- Bastion’da root ile doğrudan giriş kapalı olmalı.
- Tüm kullanıcılar sudoers üzerinden yetkili olmalı; kimin ne yaptığı loglanmalı.
- Fail2ban gibi araçlarla yanlış parola denemeleri ve brute-force saldırıları engellenmeli.
Ajanslar ve çoklu müşteri panelleri için katmanlı mimari
10’larca müşteri paneli yöneten ajans ve freelancer ekipleri için bir üst seviye mimari gerekiyor. Çünkü hem erişim paylaşımı hem de “kimin neye yetkisi var” sorusu daha karmaşık hale geliyor.
Bu senaryoda önerdiğimiz yaklaşım:
- VPN erişimini şirket içi kimlik yönetimi (örneğin kurumsal e-posta, SSO) ile entegre etmek.
- Belli müşteri grupları için farklı VPN profilleri ve farklı yetki seviyeleri oluşturmak.
- Stajyer, dış ajans, freelance geliştirici gibi dış rolleri sadece bastion üzerinden ve zaman sınırlı yetkilerle içeri almak.
Ajans bakış açısından panel erişim yönetimini daha geniş çerçevede ele aldığımız ajanslar için hosting paneli erişim yönetimi rehberi bu mimariyle oldukça uyumludur. Oradaki kullanıcı/rol tasarımını VPN + bastion host katmanına uyarladığınızda, hem teknik hem operasyonel olarak sürdürülebilir bir yapı elde edersiniz.
Uygulama Adımları: Sıfırdan Güvenli Erişim Kurulumu
Konseptleri konuştuk, şimdi adım adım nasıl uygulanacağına bakalım. Buradaki adımlar, DCHost üzerindeki tipik bir Linux VPS/dedicated senaryosuna göre anlatılıyor; kendi altyapınıza uyarlarken portlar ve IP bloklarını ihtiyaçlarınıza göre değiştirebilirsiniz.
1. Yönetim ağı ve IP planını netleştirin
İlk iş, kağıt üzerinde de olsa küçük bir topoloji çizmek:
- VPN ağı için kullanacağınız özel IP bloğu (örneğin 10.8.0.0/24)
- Bastion host’un hem VPN iç IP’si hem de dış IP’si
- Her panel sunucusunun iç (varsa) ve dış IP’leri
Daha sonra şu kararı verin: Panel erişimi tamamen VPN ağı üzerinden mi olacak, yoksa bastion host üzerinden SSH tüneli de kullanacak mısınız? Küçük ekiplerde doğrudan VPN ağı üzerinden panel açmak pratik olurken, daha regüle sektörlerde bastion üzerinden zorunlu tünel tercih ediliyor.
2. VPN sunucusunu kurun ve istemci profillerini oluşturun
Seçtiğiniz protokole (WireGuard/OpenVPN/IPsec vb.) göre bir VPN sunucusu kurup, her kullanıcı için ayrı bir profil oluşturun. Dikkat etmeniz gerekenler:
- Her kullanıcıya benzersiz sertifika/anahtar; paylaşımlı hesap yok.
- VPN üzerinde split-tunnel mı (sadece belirli ağlara giden trafik) full-tunnel mı (tüm trafik) kullanacağınıza karar verin.
- VPN loglarını saklama süresi, KVKK/GDPR gereklilikleri ile uyumlu olsun.
İleride Zero Trust mimarilerine geçmek isterseniz, VPN’i sadece bir “ilk bariyer” olarak konumlayıp, uygulama katmanında ek doğrulamalar ekleyebilirsiniz.
3. Bastion host’u sertleştirin
Bastion host, tüm SSH bağlantılarınızın geçtiği tek nokta olduğu için ekstra özen ister:
- Şifre ile giriş tamamen kapalı olmalı; sadece SSH anahtarı kabul edilmeli.
- Her kişi için ayrı kullanıcı hesabı ve ayrı SSH anahtarı olmalı.
- sudoers dosyasında kimin hangi komutları çalıştırabileceği net tanımlanmalı.
- Fail2ban veya benzeri araçlarla başarısız giriş denemeleri engellenmeli.
- SSH portu mümkünse varsayılan 22 dışında bir porta taşınmalı (tek başına çözüm değil ama gürültüyü azaltır).
Bu noktada bastion host, sadece içeriye geçiş noktasıdır; üzerinde uygulama veya panel barındırmamak, sadece yönetim için kullanmak iyi bir pratiktir.
4. Panel sunucularında firewall ve servis erişim kuralları
Şimdi işin kritik kısmına geliyoruz: Panel sunucularını internette görünmez hale getirmek.
- cPanel kullanıyorsanız 2083, 2087; Plesk kullanıyorsanız 8443 gibi panel portlarını sadece VPN ağına (örneğin 10.8.0.0/24) ve/veya bastion IP’sine açın.
- SSH erişimini doğrudan dış IP’den kapatıp, sadece bastion iç IP’sinden erişilebilir hale getirin.
- phpMyAdmin, adminer vb. veritabanı arayüzlerini de aynı prensiple sadece VPN üzerinden erişilebilir yapın.
Böylece saldırganlar port taraması yaptığında, yalnızca 80/443 gibi herkese açık olması gereken servisleri görür; panel giriş ekranları ve sunucu yönetim portları tamamen saklanmış olur.
5. Kullanıcı erişim politikaları ve on-boarding / off-boarding
Teknik kurgu kadar önemli bir nokta da insan faktörüdür. Özellikle ajanslar, yazılım ekipleri ve dış kaynaklarla çalışan şirketlerde şu süreçleri oturtmak çok kritik:
- Yeni bir ekip üyesi geldiğinde; VPN hesabı, bastion kullanıcı hesabı ve panel yetkileri tek bir süreçte tanımlanmalı.
- Ekipten ayrılan biri olduğunda; VPN, bastion ve panel erişimleri aynı gün kapatılmalı.
- Geçici yetkiler (örneğin freelancer geliştirici) için bitiş tarihi olan erişimler tanımlanmalı.
Bunları otomasyona bağladığınızda, mimariniz sadece güvenli değil, aynı zamanda yönetilebilir hale gelir.
Gelişmiş Güvenlik Katmanları: Zero Trust, mTLS ve Port Açmadan Yönetim
VPN + bastion host yapısı sizi klasik saldırıların önemli kısmından korur. Ancak regülasyonların sıkı olduğu sektörlerde (finans, sağlık, hukuk vb.) veya çok kritik SaaS altyapılarında, bir adım daha ileri gitmek isteyebilirsiniz.
Zero Trust prensiplerini uygulamak
Zero Trust yaklaşımında temel fikir, hiçbir ağa doğuştan güvenmemektir; VPN ağı da buna dahildir. Yani:
- VPN’e bağlı olmak tek başına yeterli olmaz; panel seviyesinde ek doğrulamalar (2FA, IP kısıtlama, cihaz kontrolü) uygulanır.
- Her istekte kimlik ve bağlam tekrar değerlendirilir.
- Uygulama bazlı erişim verilir (sadece ilgili panele, sadece ilgili siteye vb.).
Bunu adım adım uygulamak için, bahsettiğimiz Zero Trust ile hosting ve sunucu erişimini güvenceye alma yazısındaki prensipleri panel erişimi özelinde yeniden yorumlayabilirsiniz.
mTLS ile yönetim trafiğini karşılıklı kimlik doğrulama ile korumak
Bir üst seviye olarak, bastion host ile panel sunucuları arasındaki trafiği mTLS (karşılıklı TLS) ile koruyabilirsiniz. Bu modelde, sadece sunucu değil, istemci (bastion) de sertifika sunar ve karşılıklı doğrulama yapılır. Böylece:
- Yanlış bir bastion host’tan gelen trafik içeri alınmaz.
- Panel veya yönetim arayüzlerine erişen her bağlantının gerçekten sizin kontrolünüzdeki bir makineden geldiğinden emin olursunuz.
Yönetim panellerini mTLS ile korumanın adımlarını ayrı bir yazıda detaylıca anlattık; yönetim panellerini mTLS ile kale gibi koruma rehberi bu makalede anlattığımız VPN + bastion mimarisinin üzerine kurulabilecek güçlü bir ikinci katmandır.
Port açmadan yönetim: Tünel tabanlı erişim çözümleri
Bazı yapılarda, DCHost üzerindeki VPS veya dedicated sunucularınıza hiçbir yönetim portunun internete açılmaması tercih edilebilir. Bu durumda:
- VPN veya ajan tabanlı tünel çözümleriyle, içeriden dışarıya kurulan bağlantılar üzerinden yönetim erişimi sağlanır.
- Firewall’da inbound port açma ihtiyacı minimuma iner.
Bu yaklaşımı, özellikle “port açmadan yayın” konusunu anlattığımız port açmadan yayın ve Zero Trust tünel mimarisi yazımızla birlikte düşünürseniz, panel erişimini neredeyse tamamen kapalı bir kutuya çevirebilirsiniz.
Operasyonel En İyi Uygulamalar: Loglama, İzleme ve Erişim Denetimleri
Sadece mimariyi kurmak yetmez; bu yapının sürekli doğru ve sağlıklı çalıştığından emin olmanız gerekir. Bunun için pratikte şu başlıklara odaklanmanızı öneririz:
Merkezi loglama ve saklama süreleri
VPN, bastion host ve panel sunucuları üzerindeki erişim loglarını merkezi bir yerde toplamak, olay anında hayat kurtarır:
- VPN bağlantı logları: Kim, ne zaman, hangi IP’den bağlandı?
- Bastion SSH logları: Hangi kullanıcı hangi sunucuya erişti, hangi komutları çalıştırdı?
- Panel erişim logları: Hangi panel hesabı, hangi IP’den, ne zaman giriş yaptı?
Bu loglar için saklama sürelerini belirlerken hem KVKK/GDPR hem de iç denetim ihtiyaçlarınızı dengeleyin. Gerekiyorsa belirli alanları (IP adresi gibi) anonimleştirme yöntemleriyle saklayabilirsiniz.
Düzenli erişim gözden geçirme (access review)
Zamanla VPN profilleri, bastion kullanıcıları ve panel hesapları birikir. Üç ayda bir yapılacak basit bir erişim gözden geçirme bile ciddi riskleri ortadan kaldırır:
- Artık şirkette olmayanlar hâlâ VPN/bastion erişimine sahip mi?
- Geçici olarak açılan erişimler (freelancer, danışman) kapatıldı mı?
- Yetki seviyesi gereksiz yere yüksek olan kullanıcılar var mı?
Bu süreci ticket veya görev yönetim sisteminizle entegre etmek, denetlenebilirlik açısından artı puan kazandırır.
Felaket senaryoları ve acil durum erişim planı
VPN sunucusu veya bastion host’un devre dışı kalması durumunda panele erişememek, acil durumda işleri zorlaştırabilir. Bu yüzden:
- İkincil bir VPN veya bastion host için hazır bir planınız olsun.
- “Break-glass” dediğimiz, sadece acil durumda kullanılan özel bir erişim mekanizmasını tanımlayın; bu hesap normalde kilitli olsun.
- Bu senaryoları yılda en az bir kez tatbikat şeklinde test edin.
Böylece güvenlik uğruna erişilebilirliği tamamen feda etmemiş olursunuz; iki uç arasında dengeli bir mimari kurarsınız.
Sonuç: Panel Erişimini İnternetten Çekmek En Kolay Kazanç
Bugünkü saldırı ortamında, hosting panellerini doğrudan internete açık bırakmak, saldırganlara gereksiz konfor sunmak anlamına geliyor. Şifreleri güçlendirmek, 2FA açmak, WAF kurmak elbette önemli; ancak en büyük kazanımı, panel erişimini saldırganların göremeyeceği bir katmana taşımakla elde ediyorsunuz. VPN + bastion host mimarisi, tam da bu noktada düşük maliyetle yüksek güvenlik sağlayan, pratik ve denenmiş bir çözüm.
DCHost üzerinde kullandığınız VPS, dedicated sunucu veya colocation altyapınızda; panel portlarını yalnızca VPN ağına açarak, SSH erişimini sadece bastion üzerinden vererek ve üzerine Zero Trust ile mTLS gibi ileri seviye katmanlar ekleyerek, hem teknik hem hukuki açıdan içinizin daha rahat olduğu bir ortam kurabilirsiniz. Eğer mimarinizi tasarlarken takıldığınız noktalar olursa, ağ ve güvenlik odaklı diğer rehberlerimize göz atabilir veya DCHost teknik ekibinden yardım isteyebilirsiniz.
Özetle: Panelinizi internete açık bırakmak zorunda değilsiniz. Küçük bir planlama, bir VPS üzerinde kurulacak hafif bir VPN + bastion host ve disiplinli erişim yönetimiyle, bugün en sık istismar edilen saldırı yüzeylerinden birini görünmez hale getirebilirsiniz.
