HPC Güvenliği: Cluster Altyapısını Koruma Rehberi
HPC cluster güvenliği: ağ segmentasyonu, kimlik doğrulama, şifreleme, denetim kayıtları ve KVKK uyumluluğu.
Yüksek Başarımlı Hesaplama (HPC) cluster’ları, büyük ölçekli simülasyonlar, yapay zeka eğitimi ve bilimsel araştırmalar için kritik altyapılar haline gelmiştir. Bu sistemlerde işlenen verinin hassasiyeti ve hesaplama kapasitesinin büyüklüğü göz önünde bulundurulduğunda, güvenlik yalnızca bir tercih değil zorunluluktur. Bu rehberde HPC ortamlarında güvenliği katmanlı biçimde nasıl sağlayabileceğinizi ele alacağız.
HPC Güvenliğinin Özgün Zorlukları
Geleneksel kurumsal BT güvenliği ile HPC güvenliği arasında temel farklılıklar bulunur. HPC sistemlerinde onlarca, hatta yüzlerce compute node eş zamanlı çalışır; kullanıcılar yüksek bant genişlikli ağlar üzerinden MPI (Message Passing Interface) ile iletişim kurar; depolama katmanları petabayt ölçeğine ulaşabilir. Bu mimari, saldırı yüzeyini de büyütür.
Başlıca riskler şunlardır:
- Yetkisiz job gönderimi ve kaynak hırsızlığı (cryptojacking dahil)
- Araştırma verisinin sızması veya değiştirilmesi
- Kötü niyetli iş yüklerinin diğer kullanıcı iş yüklerini etkilemesi
- Zayıf kimlik doğrulama mekanizmaları nedeniyle dışarıdan erişim
Ağ Segmentasyonu ve Erişim Kontrolü
Yönetim, Hesaplama ve Depolama Ağlarını Ayırın
Bir HPC cluster’ını en az üç ayrı ağ segmentine bölmek, olası bir ihlali izole etmenin en etkili yoludur.
| Ağ Segmenti | Amaç | Erişim |
|---|---|---|
| Yönetim Ağı (IPMI/BMC) | Node başlatma, donanım izleme | Yalnızca sysadmin |
| Hesaplama Ağı (InfiniBand/Ethernet) | MPI trafiği, job iletişimi | Job’lar arası izole |
| Depolama Ağı (Lustre/GPFS) | Paralel dosya sistemi I/O | Job’a özel mount |
| Dış Erişim (Login Node) | Kullanıcı girişi, job gönderimi | İki faktörlü kimlik doğrulama |
Login node’lar doğrudan hesaplama ağına erişememelidir; aralarına bir güvenlik duvarı katmanı yerleştirin. InfiniBand gibi düşük gecikmeli ağlarda şifreleme ek yük oluştursa da kritik veriler için IPsec veya MACsec gibi çözümler değerlendirilmelidir.
Güvenlik Duvarı Kuralları
Login node üzerinde minimum gerekli portları açık tutun:
# Yalnızca SSH ve gerekli servislere izin ver
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -s 10.0.0.0/8 -j ACCEPT # SSH iç ağdan
iptables -A INPUT -p tcp --dport 443 -j ACCEPT # HTTPS (web portal)
iptables -A INPUT -i lo -j ACCEPT # Loopback
# Compute node'lardan login node'a sadece belirli portlar
iptables -A INPUT -s 192.168.10.0/24 -p tcp --dport 6817:6819 -j ACCEPT # Slurm
Kimlik Doğrulama ve Erişim Yönetimi
SSH Sertifika Tabanlı Kimlik Doğrulama
Parola tabanlı SSH girişini tamamen devre dışı bırakın. Bunun yerine SSH sertifikaları veya en azından anahtar çiftleri kullanın:
# /etc/ssh/sshd_config içinde
PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin no
MaxAuthTries 3
LoginGraceTime 30
AllowGroups hpc-users
# SSH sertifika altyapısı için CA anahtarı ile imzalama
ssh-keygen -s /etc/ssh/ca_key -I "kullanici@kurum" \
-n kullanici_adi -V +52w kullanici_id_rsa.pub
İki Faktörlü Kimlik Doğrulama (2FA)
Login node’lara erişimde TOTP (Time-based One-Time Password) zorunlu kılın. Google Authenticator PAM modülü veya kurumsal çözümler (Duo Security, YubiKey) bu amaçla yaygın olarak kullanılır:
# /etc/pam.d/sshd içine ekle
auth required pam_google_authenticator.so nullok
LDAP/Active Directory Entegrasyonu
Kullanıcı hesaplarını merkezi bir dizin servisiyle yönetmek, kullanıcı ayrılmalarında veya rol değişikliklerinde erişimi tek noktadan kapatmanızı sağlar. Sssd + LDAP kombinasyonu büyük ölçekli HPC ortamlarında standart yaklaşımdır.
Depolama ve Veri Şifreleme
Hassas Verilerde Şifreleme
Tüm depolama katmanını şifrelemek HPC performansını ciddi biçimde düşürebilir. Pratik yaklaşım, hassasiyete göre katmanlı şifreleme uygulamaktır:
- Uzun süreli arşiv verileri: Dosya sistemi seviyesinde şifreleme (dm-crypt/LUKS)
- Kişisel araştırma dizinleri: eCryptfs veya fscrypt ile kullanıcı düzeyinde şifreleme
- Ağ üzerinden veri transferi: SFTP veya SCP; düz FTP kesinlikle kullanmayın
- Job çıktıları: Hassas sonuçlar için uygulama seviyesinde şifreleme
Veri Sınıflandırması
Tüm veriler aynı koruma düzeyine ihtiyaç duymaz. KVKK kapsamındaki kişisel veriler, ticari sırlar ve kamuya açık araştırma verileri farklı depolama politikaları gerektir. Veri sınıflandırma matrisi oluşturmak, kaynakları doğru yere yönlendirmenizi kolaylaştırır.
İş Yükü İzolasyonu ve Job Güvenliği
Container Tabanlı İzolasyon
Singularity (Apptainer) veya Podman, HPC ortamlarında job izolasyonu için yaygın tercihlerdir. Docker, root yetkisi gerektirdiğinden çok kullanıcılı HPC ortamlarına uygun değildir.
# Singularity ile izole job çalıştırma
singularity exec \
--no-home \
--containall \
--bind /scratch/kullanici:/data \
image.sif python3 simulation.py
# Slurm ile container entegrasyonu
#SBATCH --container-image=/shared/images/pytorch.sif
Slurm Güvenlik Yapılandırması
İş zamanlayıcısı (Slurm, PBS, LSF) doğru yapılandırılmadığında saldırganlar diğer kullanıcıların kaynaklarına erişebilir. Temel önlemler:
PrologFlags=Containile job sonrası proses temizliğiAccountingStorageEnforce=limitsile kaynak limitlerinin katı uygulanması- Slurm daemons’larının ayrı servis hesaplarıyla çalıştırılması
UsePAM=yesile PAM entegrasyonu
Denetim Kayıtları ve İzleme
Kapsamlı Log Toplama
Güvenlik olaylarını tespit edebilmek için merkezi log yönetimi şarttır. ELK Stack (Elasticsearch, Logstash, Kibana) veya Graylog gibi çözümler tercih edilebilir.
İzlenmesi gereken kritik olaylar:
- Başarısız SSH girişimleri
- Kök yetkisi kullanımı (sudo)
- Job gönderim ve iptal olayları
- Dosya sistemi erişimi (özellikle hassas dizinler)
- Ağ bağlantıları (login node dışı trafiği)
# auditd ile kritik dizin izleme
auditctl -w /home -p rwxa -k home_access
auditctl -w /etc/passwd -p wa -k passwd_changes
auditctl -w /var/spool/slurm -p rwxa -k slurm_spool
Anormallik Tespiti
Bir kullanıcının gece yarısı aniden 500 core talep etmesi veya login node’dan çok sayıda harici bağlantı başlatması anormal davranıştır. Prometheus + Grafana ile iş yükü metrikleri izlenebilir; alarm eşikleri tanımlanabilir.
KVKK Uyumluluğu ve Kurumsal Gereksinimler
Kişisel Verilerin Korunması Kanunu (KVKK), araştırma verisi içinde kişisel veri barındıran kurumlar için HPC güvenliğini yasal bir zorunluluk haline getirmiştir. KVKK bağlamında HPC güvenliğinde dikkat edilmesi gereken başlıca maddeler şunlardır:
Madde 12 – Veri Güvenliği Tedbirleri
- Kişisel veriye yetkisiz erişimi önleyen teknik tedbirler
- Veri ihlali durumunda 72 saat içinde KVKK Kurulu’na bildirim
- Erişim loglarının belirli bir süre saklanması (en az 2 yıl önerilir)
Veri İşleme Envanteri HPC cluster’ında hangi iş yüklerinin kişisel veri işlediğini belgelemek, veri sorumluluğu açısından zorunludur. Her proje için veri akış diyagramı hazırlanması iyi uygulamalar arasında yer alır.
Yama Yönetimi ve Güvenlik Açığı Taraması
HPC ortamlarında işletim sistemi yamaları hassas bir denge gerektirir: aniden yeniden başlatılan bir compute node aktif job’ları bozabilir. Önerilen yaklaşım:
- Kritik güvenlik yamaları için rolling update stratejisi
- Yeni node imajlarını düzenli aralıklarla tarayarak production’a alma
- Lustre, MPI kütüphaneleri ve iş zamanlayıcısı güncellemelerini koordineli planlama
- Güvenlik açığı taraması için OpenSCAP veya Wazuh kullanımı
Sonuç: Katmanlı Güvenlik Yaklaşımı
HPC güvenliği tek bir önlemle sağlanamaz. Ağ segmentasyonundan kimlik doğrulamaya, şifrelemeden denetim kayıtlarına kadar her katman birbirini tamamlar. Güvenlik politikalarının teknik önlemlerle desteklenmesi, kullanıcıların eğitilmesi ve periyodik güvenlik denetimlerinin yapılması sürdürülebilir bir güvenlik duruşu için gereklidir.
Mevasis olarak HPC cluster güvenliği konusunda size destek olmaktan memnuniyet duyarız. İletişim için formu doldurun.