Mist Network
Kanalı takip et
Destek

VPS Güvenlik Kontrol Listesi: Yeni Sunucuyu Sıkılaştırmak İçin 12 Adım

Yeni bir VPS, internete çıktıktan dakikalar sonra botlar tarafından taranır. Bu 12 adımlık liste ilk saatte neleri kilitlemen ve her ay neleri yapmaya devam etmen gerektiğini anlatıyor.

Güncellendi: 4 dk okuma
VPS güvenlik kontrol listesi — SSH anahtarı, güvenlik duvarı ve güncellemelerle Linux sunucuyu sıkılaştırma

VPS güvenlik kontrol listesi, önemli bir şey koymadan önce her yeni sunucuda uyguladığın adımların listesidir: SSH'i kilitle, güvenlik duvarını aç, sistemi güncel tut, çalışan servisleri sınırla ve geri dönebileceğinden emin ol. Otomatik botlar yeni IP adreslerini dakikalar içinde yoklamaya başlar; bu yüzden ilk saat, sonradan yapılacak her ince ayardan daha önemlidir.

Aşağıdaki adımlar root erişimli Ubuntu veya Debian gibi bir Linux VPS varsayar. Komutlar örnektir; dağıtımına göre uyarla. Adımları sırayla uygula ve giriş ayarlarını değiştirirken ikinci bir SSH oturumunu açık tut; böylece bir hata seni dışarıda bırakamaz.

Yeni bir VPS neden sıkılaştırılmalı?

Sanal sunucu sana tam kontrol verir; bu da tam sorumluluk demektir. Paylaşımlı hostingin aksine paketlerini yamalayan veya girişlerini izleyen kimse yoktur. Gerçek dünyadaki ele geçirmelerin çoğu zekice açıklar değil, basit hatalardır: zayıf SSH şifreleri, güncel olmayan bir web uygulaması, açıkta kalan bir veritabanı portu ya da unutulmuş bir test servisi.

Özet: VPS'e yönelik saldırıların çoğu otomatik ve fırsatçıdır. Kolay kapıları — şifreler, açık portlar, eksik güncellemeler — kapatmak bunların büyük çoğunluğunu durdurur.

İlk saat: 8 temel adım

  1. Her şeyi güncelle — apt update && apt upgrade (veya dağıtımının karşılığını) çalıştır, çekirdek değiştiyse yeniden başlat.
  2. Root olmayan kullanıcı oluştur — sudo yetkili bir kullanıcı ekle ve günlük işler için root yerine onu kullan.
  3. SSH anahtarı kullan — bilgisayarında bir anahtar çifti oluştur ve açık anahtarı ssh-copy-id ile sunucuya kopyala.
  4. Şifre ve root girişini kapat — /etc/ssh/sshd_config içinde PasswordAuthentication no ve PermitRootLogin no ayarla; anahtarla girişi ikinci bir oturumda test ettikten sonra SSH'i yeniden başlat.
  5. Güvenlik duvarını aç — ufw ile yalnızca gerekenlere izin ver; örneğin ufw allow OpenSSH, ufw allow 80,443/tcp, ardından ufw enable.
  6. Otomatik güvenlik güncellemelerini aç — Debian/Ubuntu'da unattended-upgrades paketini kur ve etkinleştir.
  7. fail2ban kur — tekrar tekrar hatalı giriş yapan IP'leri yasaklayarak kaba kuvvet denemelerini yavaşlatır.
  8. Saat dilimini ve hostname'i ayarla — doğru zaman damgaları logları ve sertifikaları güvenilir kılar.
İpucu: SSH ayarlarını düzenlerken mevcut oturumunu açık tut ve yeni girişi ayrı bir pencerede test et. Bir şey ters giderse hâlâ bağlı olan oturumdan düzelt.

Sürekli sıkılaştırma: 4 adım daha

  1. Kullanmadığını kaldır — gereksiz paketleri sil, ihtiyaç duymadığın servisleri durdur. Dinleyen portları ss -tulpn ile kontrol et.
  2. Veritabanlarını özel tut — MySQL, PostgreSQL veya Redis'i 127.0.0.1'e ya da özel ağa bağla, asla herkese açık internete değil.
  3. Sunucu dışına yedek al — yedekleri başka bir konuma kopyala ve geri yüklemeyi test et. Aynı makinedeki snapshot yedek değildir.
  4. Logları ve kaynakları izle — kimlik doğrulama loglarını incele, basit uptime ve disk alanı uyarıları kur, beklenmedik CPU sıçramalarını araştır.

Kontrol listesine genel bakış

AlanYapılacakSıklık
ErişimYalnızca SSH anahtarı, root veya şifreyle giriş yokBir kez, sonra anahtarları üç ayda bir gözden geçir
AğYalnızca gerekli portların açık olduğu güvenlik duvarıHer yeni servis eklediğinde
GüncellemelerOtomatik güvenlik güncellemeleri ve elle yükseltmelerOtomatik günlük; elle aylık
Kaba kuvvetfail2ban veya benzeriBir kez, yasakları ara ara kontrol et
ServislerKullanılmayan yazılımları kaldır, veritabanlarını yerelde tutAylık gözden geçirme
KurtarmaGeri yüklemesi test edilmiş sunucu dışı yedeklerGünlük yedek; üç ayda bir geri yükleme testi
WebHTTPS, güncel CMS ve eklentilerHaftalık

Web katmanını güvenceye almak

VPS bir web sitesi barındırıyorsa en zayıf nokta çoğu zaman uygulamadır. CMS'ini, eklentilerini ve framework'lerini güncel tut, ücretsiz bir sertifikayla HTTPS kullan ve her siteyi kendi sistem kullanıcısıyla çalıştır ki ele geçirilen bir site diğerlerini okuyamasın. Alan adına bir CAA kaydı ekle ki yalnızca seçtiğin sertifika otoritesi sertifika verebilsin; alan adını doğru yönlendirmek için alan adını VPS'e yönlendirme rehberimizi kullan.

API anahtarları ve veritabanı şifreleri gibi gizli bilgileri izinleri kısıtlı ortam dosyalarında sakla; asla herkese açık bir web dizininde ya da Git deposunda tutma.

Dikkat: güvenlik araçları güncellemelerin yerini tutmaz. Eksiksiz yapılandırılmış bir güvenlik duvarı bile saldırganın 443 portundaki güncel olmayan bir web uygulamasına ulaşmasına izin verir. Önce yamala, sonra katman ekle.

Ekipler ve birden fazla yönetici için erişim

Sunucular uzun süre tek kullanıcılı kalmaz. Bir çalışma arkadaşı, serbest çalışan ya da dağıtım aracı erişim istediği anda, kimlik bilgilerini nasıl dağıttığın güvenliğinin parçası olur.

  • Kişi başına bir anahtar — her yöneticinin kendi kullanıcı hesabı ve SSH anahtarı olsun. Root şifresini ya da tek bir anahtarı ekipte asla paylaşma.
  • Otomasyon için ayrı anahtarlar — CI hatları ve yedekleme işleri, yalnızca ihtiyaç duydukları komut veya dizinlerle sınırlı kendi anahtarlarını alsın.
  • Erişimi aynı gün kaldır — biri projeden ayrıldığında kullanıcısını ve anahtarını hemen sil. authorized_keys dosyalarını üç ayda bir gözden geçir.
  • Yetkili işlemleri logla — sudo kimin neyi çalıştırdığını kaydeder; bu da hataların ve olayların izini sürmeyi çok kolaylaştırır.
  • Kontrol panelini de koru — sağlayıcı hesabın sunucuyu yeniden kurabilir ya da silebilir; güçlü ve benzersiz bir şifre ve mümkünse iki adımlı doğrulama kullan.

İhlalden şüphelenirsen ne yapmalı?

  • Kanıtları hemen silme; önce bir snapshot al veya logları kopyala.
  • Sunucuya dokunan tüm şifreleri ve SSH anahtarlarını değiştir.
  • Bilinmeyen kullanıcıları, cron işlerini, SSH anahtarlarını ve süreçleri kontrol et.
  • Emin değilsen temiz bir imajdan yeniden kur ve verileri olaydan önce alınmış bir yedekten geri yükle.

mistREG VPS ile güvenli bir temel

mistREG, Slovenya'da (AB) NVMe SSD ve AMD EPYC donanım üzerinde KVM VPS sunucuları çalıştırır. KVM her sunucuya kendi çekirdeğini verir; böylece istediğin güvenlik duvarını, çekirdek ayarını veya güvenlik aracını kullanabilirsin. Kurulum otomatiktir: ödemeden yaklaşık 60 saniye sonra IP adresi ve root şifresi panelinde görünür, yukarıdaki listeye hazırdır. Ayrıntılar için offshore VPS hosting rehberimize bak.

~60 snçalışan VPS
KVMtam sanallaştırma
NVMeSSD depolama

Hesap oluştur, kripto ya da kartla bakiye yükle ve paketler bölümünden bir sunucu seç. Soruların mı var? Ekibimiz Telegram'da @mistnetwork adresinde.

Sık sorulan sorular

Yeni bir VPS'te ilk yapılması gereken nedir?
Tüm paketleri güncelle, ardından root olmayan bir kullanıcıyla SSH anahtarı girişini kur ve şifreyle ve root ile girişi kapat. Bu adımlar otomatik saldırıların çoğunu durdurur.
Varsayılan SSH portunu değiştirmeli miyim?
Botlardan gelen log gürültüsünü azaltır ama gerçek güvenlik sağlamaz. SSH anahtarları, kapalı şifre girişi ve fail2ban çok daha önemlidir.
ufw güvenlik duvarı olarak yeterli mi?
Çoğu tekil sunucu için evet. ufw, Linux güvenlik duvarının basit bir arayüzüdür; önemli olan yalnızca servislerinin ihtiyaç duyduğu portları açmaktır.
VPS'imi ne sıklıkla güncellemeliyim?
Güvenlik güncellemeleri her gün otomatik kurulmalı. Diğer yükseltmeleri en az ayda bir ve önemli duyurulardan sonra gözden geçirip uygula.
VPS sağlayıcısı sunucumu yedekler mi?
Bunu varsayma. Kendi yedeklerini ayrı bir konumda tut ve geri yüklemeyi düzenli olarak test et.

İlgili yazılar

Mist NetworkMist Network