Komutları üretim sunucusunda çalıştırmadan önce yedek alın ve mümkünse bir test ortamında deneyin. Yönetim erişiminizi (SSH, panel) kaybetmemek için ayar değişikliklerinde açık bir ikinci oturum bulundurun.
Bu rehberde ne yapacağız?
Bu rehberde kurulu bir Proxmox VE sunucusunda güvenlik sertleştirme adımlarını uygulayacaksınız: güncellemeler, root yerine kişisel yönetici hesabı, iki aşamalı doğrulama, Proxmox güvenlik duvarı, SSH kısıtları ve yönetim arayüzü için Fail2ban. Hosting altyapısında hipervizör ele geçirilirse tüm müşteri makineleri risk altına girdiği için bu adımlar önceliklidir.
Tahmini süre: 45-60 dakika. Erişim kısıtlarında kendinizi dışarıda bırakmamak için işlem boyunca ikinci bir oturumu açık tutun.
Gereksinimler
- Çalışan bir Proxmox VE sunucusu ve root erişimi (komutlar root kabuğunda çalıştırılır; Proxmox’ta sudo varsayılan olarak kurulu değildir)
- Yönetim için kullanacağınız ağın veya VPN çıkış IP adresinin bilgisi
- Sunucuya konsoldan (IPMI/iDRAC veya fiziksel) erişim imkanı; güvenlik duvarı hatasında kurtarma yolunuz olur
- Önce yedek: /etc/pve dizinini ve kritik sanal makinelerin yedeklerini alın
Adım adım Proxmox VE güvenlik sertleştirme
1. Sistemi güncel tutun
Güvenlik yamaları için paket deposu ayarlarının doğru olduğundan emin olup güncellemeleri uygulayın.
apt update
apt full-upgrade
pveversion2. Kişisel yönetici hesabı oluşturun
Günlük işlerde root yerine ayrı bir kullanıcı kullanın. Proxmox VE kendi kullanıcı alanında (pve realm) hesap oluşturulabilir. Aşağıdaki komutlar bir kullanıcı ekler, parolasını belirler ve Administrator rolünü verir. Kullanıcı adını kendinize göre değiştirin; root hesabını silmeyin, yalnızca kullanımını azaltın.
pveum user add yonetici@pve --comment 'Ana yonetici'
pveum passwd yonetici@pve
pveum acl modify / --users yonetici@pve --roles Administrator3. İki aşamalı doğrulamayı açın
Web arayüzünde Datacenter > Permissions > Two Factor bölümünden hesaplarınıza TOTP (doğrulayıcı uygulama) ya da WebAuthn anahtarı ekleyin. Yedek kurtarma kodlarını güvenli bir yerde saklayın. Önce yeni hesapla başka bir tarayıcıda giriş yapabildiğinizi doğrulayın, sonra root için de etkinleştirin.
4. Proxmox güvenlik duvarını yapılandırın
Datacenter > Firewall bölümünden güvenlik duvarını etkinleştirmeden önce yönetim erişimine izin veren kuralları ekleyin. Aksi halde arayüze ve SSH erişiminiz kesilebilir. Kurallar komut satırından /etc/pve/firewall/cluster.fw dosyasında da tanımlanır. Aşağıdaki örnek yalnızca yönetim ağından 8006 ve 22 portlarına izin verir; ağ bloğunu kendinize göre değiştirin.
[OPTIONS]
enable: 1
[RULES]
IN ACCEPT -source 192.168.1.0/24 -p tcp -dport 8006
IN ACCEPT -source 192.168.1.0/24 -p tcp -dport 22Varsayılan davranış ve ek kurallar (ICMP, küme trafiği, sanal makine kuralları) sürümünüze göre değişebilir; resmi belgeyi okuyun. Sonrasında durumu kontrol edin.
pve-firewall status
pve-firewall compile | head -n 405. SSH erişimini sertleştirin
Anahtar girişi kurduktan sonra parola ile girişi kapatın ve root girişini kısıtlayın. Proxmox kümelerinde düğümler arası işlemler root SSH anahtarlarına dayanabilir; bu nedenle tek düğümde PermitRootLogin için prohibit-password değerini, parola girişini kapatarak kullanmak daha uyumlu bir başlangıçtır. PasswordAuthentication no satırını, root için anahtarla girişi yeni bir oturumda doğruladıktan sonra uygulayın; aksi halde yalnızca konsoldan girebilirsiniz. Ayarı ayrı bir dosyaya yazıp denetleyin. Mevcut oturumu kapatmadan yeni bir oturumla test edin.
tee /etc/ssh/sshd_config.d/01-guvenlik.conf > /dev/null <<'EOF'
PermitRootLogin prohibit-password
PasswordAuthentication no
MaxAuthTries 3
EOF
sshd -t && systemctl reload ssh6. Arayüz girişlerini Fail2ban ile koruyun
Fail2ban kurulu değilse apt install fail2ban ile kurun (systemd arka ucu için python3-systemd paketinin de kurulu olduğunu kontrol edin). Önce Proxmox arayüz giriş hatalarını yakalayan süzgeci tanımlayın.
tee /etc/fail2ban/filter.d/proxmox.conf > /dev/null <<'EOF'
[Definition]
failregex = pvedaemon\[.*authentication failure; rhost=<HOST> user=.* msg=.*
ignoreregex =
EOFArdından jail dosyasına bu süzgeci bağlayın. Günlük kaynağı sürüme göre değişir; journalctl -u pvedaemon ile hata satırlarını görebiliyorsanız systemd arka ucu doğru çalışır.
[proxmox]
enabled = true
port = https,http,8006
filter = proxmox
backend = systemd
journalmatch = _SYSTEMD_UNIT=pvedaemon.service
maxretry = 3
findtime = 1h
bantime = 1hBu bloğu /etc/fail2ban/jail.local dosyasına ekleyin ve servisi yeniden başlatın.
systemctl restart fail2ban
fail2ban-client status proxmox7. Gereksiz servisleri ve açık portları gözden geçirin
Hangi servisin hangi portu dinlediğini listeleyin. Kullanmadığınız servisleri (örneğin posta alma servisi gerekmiyorsa) kapatın. Küme kullanmıyorsanız küme portlarının dışarıya kapalı olduğundan emin olun.
ss -tulpnDoğrulama
pve-firewall status
sshd -T | grep -Ei 'permitrootlogin|passwordauthentication'
fail2ban-client status proxmox- Güvenlik duvarı durumu enabled/running görünmeli
- sshd ayarlarında passwordauthentication no yazmalı
- Yönetim ağı dışındaki bir adresten 8006 portuna bağlantı engellenmeli
- Yanlış parola denemeleri sonrası Fail2ban jail içinde banlanan IP sayısı artmalı
Sık karşılaşılan sorunlar
- Güvenlik duvarını açtıktan sonra arayüze girilemiyor: Konsoldan pve-firewall stop çalıştırıp kuralları düzeltin; izin kurallarının kaynak ağını kontrol edin.
- Küme düğümleri birbirini göremiyor: Küme trafiği için düğümler arası portlara izin verilmemiştir; resmi güvenlik duvarı belgesine bakıp kural ekleyin.
- Fail2ban jail başlamıyor: fail2ban-client -t ile yapılandırmayı, journalctl -u fail2ban ile hata satırını kontrol edin; journalmatch değerini sürümünüze göre uyarlayın.
- SSH ayar değişikliğinden sonra giriş yapılamıyor: Açık oturumu kapatmadıysanız dosyayı düzeltip sshd -t ile denetleyin; kapattıysanız konsol erişimi kullanın.
- İki aşamalı doğrulama kodu reddediliyor: Sunucu ve telefon saatleri uyumsuzdur; NTP eşitlemesini kontrol edin.
Güvenlik ve bakım notları
- Yönetim arayüzünü doğrudan internete açmayın; VPN veya IP kısıtı kullanın
- Güvenilir sertifika için arayüzde ACME (Let's Encrypt) desteğini kullanabilir veya kendi sertifikanızı yükleyebilirsiniz
- Rolleri en az yetki ilkesine göre verin; denetçi ve operatör hesaplarını yönetici yapmayın
- Düzenli güncelleme, yedekleme ve geri yükleme testi yapın
- Kullanılmayan kullanıcıları ve API anahtarlarını Datacenter > Permissions altından temizleyin
- Günlükleri merkezi bir günlük sunucusuna göndermeyi değerlendirin
Sık sorulan sorular
Proxmox VE güvenlik duvarı ile sunucu iptables kurallarını birlikte kullanabilir miyim?
Proxmox güvenlik duvarı kendi kural zincirlerini yönettiği için ikisini karıştırmak karışıklığa yol açar. Tek bir yönetim yöntemi seçin ve kuralları o araçta toplayın.
Fail2ban kurmak yeterli koruma sağlar mı?
Hayır, yalnızca kaba kuvvet denemelerini yavaşlatır. Yönetim ağı kısıtı, iki aşamalı doğrulama ve güncel yamalarla birlikte katmanlı savunmanın bir parçası olarak düşünülmelidir.
Root hesabını tamamen kapatmalı mıyım?
Proxmox’un bazı iç işlemleri root hesabına dayanır, bu nedenle silmek veya kilitlemek önerilmez. Bunun yerine güçlü parola, iki aşamalı doğrulama ve sınırlı erişim ile kullanımını azaltın.
İlgili sözlük terimleri
Bu kategorideki diğer rehberler
- Docker Compose ile uygulamayı güvenli yayınlama (ağlar, gizli bilgiler, kaynak limitleri)Docker Compose ile uygulamayı güvenli yayınlayın: iç ağlar, secrets ile gizli bilgi yönetimi, bellek ve CPU limitleri, salt okunur dosya sistemi ve sağlık kontrolü.
- Proxmox VE’de LXC konteyner oluşturma ve yönetme (pct)Proxmox VE’de LXC konteyneri pct komutuyla oluşturun, başlatın ve yönetin: şablon indirme, kaynak ayarı, anlık görüntü, yedek ve ayrıcalıksız konteyner güvenliği.
- Proxmox VE’de cloud-init ile sanal makine şablonlarıProxmox VE’de bir cloud-init sanal makine şablonu hazırlayın; qm ile şablondan klonlayıp kullanıcı, SSH anahtarı ve IP ayarlarını saniyeler içinde tanımlayın.
- Proxmox VE küme (cluster) kurulumu: gereksinimler, pvecm, quorum ve dikkat edileceklerProxmox VE küme (cluster) kurulumunu pvecm ile adım adım yapın: ağ ve gereksinimler, düğüm ekleme, quorum mantığı, QDevice ve kümeye girerken dikkat edilecekler.