Teknoloji

VPS Güvenlik Sertleştirme Kontrol Listesi: sshd_config, fail2ban ve Root Erişimini Kapatmak

VPS Güvenlik Sertleştirme Neden Bu Kadar Önemli?

Bir VPS satın alıp ilk SSH bağlantısını yaptığınız anda aslında sadece kendi projenize değil, tüm ağa karşı da bir sorumluluk almış oluyorsunuz. Güvenlik tarafında ufak bir ihmal; spam gönderen, DDoS saldırılarına katılan ya da veritabanı sızdıran bir sunucuya dönüşmenize yol açabiliyor. DCHost ekibi olarak yaptığımız güvenlik denetimlerinde, ihlal yaşamış sunucuların çok büyük kısmında aynı temel eksikleri görüyoruz: varsayılan SSH ayarları, kapatılmamış root erişimi, aktif ama yapılandırılmamış fail2ban ve çalışmayan otomatik güvenlik güncellemeleri.

Bu yazıda, pratik bir VPS güvenlik sertleştirme kontrol listesi üzerinden ilerleyeceğiz. Odakta özellikle şu adımlar var: sshd_config sertleştirmesi, root erişimini kapatmak, fail2ban ile brute-force saldırılarını sınırlamak ve otomatik güvenlik güncellemelerini doğru kurmak. Adımların her biri tek başına basit görünebilir; fakat birlikte uygulandığında hem küçük projeler hem de yoğun trafikli uygulamalar için oldukça sağlam bir temel güvenlik katmanı sağlar. Ayrıca, DCHost üzerinde yeni açtığınız ya da mevcutta çalışan VPS/dedicated sunucularınıza bu kontrol listesini nasıl uygulayabileceğinizi de adım adım örneklendireceğiz.

VPS Güvenlik Sertleştirme Kontrol Listesi: Büyük Resim

Detay ayarlara inmeden önce, sağlam bir VPS için olması gereken temel güvenlik adımlarını netleştirelim. Aşağıdaki listeyi, hem yeni bir VPS kurarken hem de mevcut bir sunucuyu denetlerken checklist olarak kullanabilirsiniz:

  • İşletim sistemini ve paketleri güncellemek (özellikle güvenlik güncellemeleri)
  • sshd_config dosyasını sertleştirmek (port, kimlik doğrulama, root erişimi vb.)
  • Doğrudan root girişi yerine yetkili bir kullanıcı + sudo modeli kurmak
  • Parola ile SSH girişini kapatıp sadece SSH anahtarları ile bağlanmak
  • fail2ban veya benzeri bir mekanizma ile brute-force saldırılarını sınırlamak
  • Güvenlik duvarı (ufw, firewalld, iptables/nftables) ile sadece gereken portları açmak
  • Dağıtıma uygun otomatik güvenlik güncellemelerini etkinleştirmek
  • Log döngüsü ve disk takibi ile beklenmedik dolmaları engellemek
  • Düzenli ve test edilmiş yedekleme stratejisi (en az 3-2-1 yaklaşımına yakın bir yapı)

Bu yazıda odak daha çok SSH, root, fail2ban ve güncellemeler üzerinde olacak. Güvenlik duvarı tarafında detay arıyorsanız, DCHost blogda yayınladığımız VPS sunucularda güvenlik duvarı yapılandırma rehberini mutlaka gözden geçirmenizi öneririz.

sshd_config ile SSH Erişimini Sertleştirmek

VPS’inize ilk dokunduğunuz yer neredeyse her zaman SSH olur. Dolayısıyla saldırganların ilk denediği kapı da burasıdır. Varsayılan ayarlarla bırakılan SSH servisi; deneme-yanılma brute-force saldırılarına, kimlik doğrulama hatalarına ve yanlışlıkla açık bırakılmış özelliklere davetiye çıkarır. İyi yapılandırılmış bir sshd_config dosyası ise saldırgan için maliyeti anında yükseltir.

Temel sshd_config Sertleştirme Parametreleri

Önce birkaç temel parametreye bakalım. Çoğu Debian/Ubuntu tabanlı sistemde yapılandırma dosyası /etc/ssh/sshd_config konumundadır (yeni sürümlerde sshd_config.d/ dizini de kullanılabilir).

# Protokol ve temel ayarlar
Protocol 2
Port 22
AddressFamily inet
ListenAddress 0.0.0.0

# Root login ve parola ayarları
PermitRootLogin no
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM yes

# Kimlik doğrulama denemeleri
MaxAuthTries 3
LoginGraceTime 20

# Boştaki bağlantıları düşürme
ClientAliveInterval 300
ClientAliveCountMax 2

Bu iskelet yapılandırma, çoğu küçük ve orta ölçekli projede gayet sağlıklı bir başlangıçtır. Öne çıkan noktalar:

  • Protocol 2: Güncel sistemlerde zaten varsayılan, ama eski alışkanlıklar yüzünden hâlâ belirtilmesinde fayda var.
  • PermitRootLogin no: Root hesabıyla direkt girişleri tamamen kapatır (detayını aşağıda ayrı başlıkta açacağız).
  • PasswordAuthentication no: Parola ile girişleri iptal eder, sadece SSH anahtarıyla bağlantıya izin verir.
  • MaxAuthTries 3: Yanlış parola/anahtar denemesini sınırlayarak brute-force saldırılarında hızla bağlantının kesilmesini sağlar.

SSH Portunu Değiştirmek: Güvenlik mi, Gürültü Azaltma mı?

Güvenlik camiasında sık tartışılan bir başlık: SSH portunu değiştirmek. Gerçekçi olmak gerekirse, sadece portu değiştirmek size tam anlamıyla ek bir güvenlik katmanı kazandırmaz; ama otomatik taramaların ve amatör brute-force denemelerinin önemli bir kısmını elemiş olursunuz. Bu da log gürültüsünü ve fail2ban yükünü azaltır.

Örneğin 22 yerine 2222 gibi bir port kullanmak istiyorsanız:

Port 2222

Portu değiştirmeden önce:

  • Güvenlik duvarınızda yeni portu açın.
  • Eski bağlantıyı kapatmadan yeni bir terminal sekmesinde yeni porttan test edin.
  • Sunucu üzerinde çalışan güvenlik araçlarınızın (örn. fail2ban) konfigürasyonunu yeni porta göre güncelleyin.

AllowUsers / AllowGroups ile Erişimi Daraltmak

SSH’a bağlanabilen kullanıcıları sınırlandırmak, özellikle birden fazla sistem kullanıcısının olduğu VPS’lerde kritik önem taşır. AllowUsers ve AllowGroups direktifleri ile sadece belirli hesapların giriş yapabilmesini sağlayabilirsiniz.

# Sadece belirli kullanıcılar SSH ile giriş yapabilsin
AllowUsers admin deploy

# Ya da bir grup üzerinden sınırlandırma
AllowGroups sshusers

Bu yaklaşım, yanlışlıkla şifre atanmış ancak hiç kullanılmayan sistem hesaplarının dışarıya açık bir saldırı yüzeyine dönüşmesini engeller. Ekipli çalışıyorsanız, DCHost blogda detaylarını anlattığımız SSH anahtar yönetimi ve yetki paylaşımı rehberi ile bu ayarları birleştirmenizi öneririz.

SSH Anahtarı Zorunlu Kılmak

Parola ile SSH erişimi, özellikle sızdırılmış parolalar ve parola tekrar kullanım alışkanlıkları yüzünden bugün pratikte kabul edilmiyor. Yapmanız gereken net adım: PasswordAuthentication no ile parolayı tamamen devre dışı bırakmak ve her kullanıcı için birer SSH anahtarı tanımlamak.

Özet adımlar:

  1. İstemci tarafında ssh-keygen -t ed25519 ile anahtar çifti üretin.
  2. Oluşan ~/.ssh/id_ed25519.pub içeriğini sunucudaki ilgili kullanıcının ~/.ssh/authorized_keys dosyasına ekleyin.
  3. Sunucuda chmod 700 ~/.ssh ve chmod 600 ~/.ssh/authorized_keys izinlerini doğrulayın.
  4. Son olarak PasswordAuthentication no ayarını aktif edip SSH servisini yeniden başlatın.

Bu noktada hem brute-force hem de parola sızıntısı riskini ciddi ölçüde azaltmış olursunuz.

Root Erişimini Kapatmak ve Sağlıklı Yetki Modeli Kurmak

Birçok ihlal incelemesinde gördüğümüz klasik senaryo: root hesabına doğrudan SSH erişimi açık, parola ile giriş aktif ve parola çoğu zaman zayıf veya tekrar kullanılan türden. Bu kombinasyon, saldırgan açısından “en sevilen” hedeftir. Sağlıklı model; doğrudan root yerine, yetkili kullanıcı + sudo kullanmaktır.

Adım 1: Yetkili Bir Admin Kullanıcı Oluşturmak

Önce, root’a eşdeğer yönetim yapabileceğiniz ama doğrudan root olmayan bir kullanıcı açın:

adduser admin
usermod -aG sudo admin   # Debian/Ubuntu
# veya
usermod -aG wheel admin  # RHEL/AlmaLinux/Rocky Linux

Admin kullanıcınıza SSH anahtarını tanımladıktan sonra, root ile açık olan terminali kapatmadan ssh admin@sunucu-ip ile giriş yapmayı mutlaka test edin.

Adım 2: sudo Yetkilerini İnce Ayar Yapmak

Birçok dağıtımda sudoers dosyası zaten makul varsayılanlarla gelir; yine de en azından şu iki noktayı gözden geçirmekte fayda var:

visudo

# Örneğin sadece admin kullanıcısına tam yetki vermek için:
admin ALL=(ALL:ALL) ALL

Güvenlik seviyesi daha yüksek ortamlarda her kullanıcıya tam yetki vermek yerine, belirli komutları NOPASSWD ile, diğerlerini ise parola zorunlu olacak şekilde tanımlamak mümkündür. Örneğin deployment kullanıcısının sadece belirli servisleri yönetebilmesini isteyebilirsiniz.

Adım 3: Root SSH Erişimini Kapatmak

Admin kullanıcınızla SSH erişimi netleştikten sonra, artık en kritik adımı atabilirsiniz. sshd_config içinde:

PermitRootLogin no

satırını aktif edin ve SSH servisini yeniden başlatın:

systemctl restart ssh   # Debian/Ubuntu
systemctl restart sshd  # RHEL/AlmaLinux/Rocky Linux

Bundan sonra root hesabına sadece sudo su - veya sudo -i ile geçebilirsiniz. Böylece:

  • Root parolasının sızması halinde bile doğrudan SSH erişimi mümkün olmaz.
  • Kim hangi komutları hangi kullanıcıyla çalıştırmış, /var/log/auth.log üzerinden çok daha net takip edilir.

Bu adımı, DCHost blogda anlattığımız yeni VPS’te ilk 24 saat rehberi ile birlikte uyguladığınızda, ilk günden itibaren oldukça sağlam bir temel kurmuş olursunuz.

fail2ban ile Brute-Force Saldırılarını Otomatik Bloklamak

SSH ayarlarınızı sertleştirdiniz, parola erişimini kapattınız, root girişini yasakladınız. Yine de internetten sürekli taranan bir IP adresine sahip olduğunuz için loglarınızda hâlâ başarısız giriş denemeleri göreceksiniz. İşte burada devreye fail2ban giriyor.

fail2ban Nasıl Çalışır?

fail2ban, belirli log dosyalarını izleyip şüpheli davranışları (örneğin art arda başarısız SSH giriş denemeleri) tespit ettiğinde, ilgili IP adresini geçici olarak yasaklayan bir servistir. Genellikle şu bileşenlerle birlikte çalışır:

  • İzlenen log dosyası: Örn. /var/log/auth.log veya /var/log/secure
  • Filtre kuralları (filter.d): Log satırlarını Regex ile eşleyen dosyalar
  • Jail tanımları (jail.conf / jail.local): Hangi kuralların hangi servis için, hangi eşiklerde uygulanacağını belirler
  • Güvenlik duvarı entegrasyonu: ufw, iptables veya nftables üzerinden IP bloklama

SSH İçin Basit Bir fail2ban Jail Örneği

Ubuntu/Debian için tipik kurulum:

apt update
apt install fail2ban

Ardından, varsayılan dosyalara dokunmak yerine bir /etc/fail2ban/jail.local oluşturmak iyi pratiktir:

[sshd]
enabled = true
port    = ssh
filter  = sshd
logpath = /var/log/auth.log
maxretry = 5
findtime = 600
bantime  = 3600

Bu yapılandırma ile:

  • 10 dakika içinde 5’ten fazla başarısız giriş denemesi yapan IP,
  • 1 saat boyunca otomatik olarak yasaklanır.

SSH portunuzu değiştirdiyseniz port = 2222 gibi güncellemeyi unutmayın. Ayrıca güvenlik duvarınızı daha detaylı yönetmek istiyorsanız, nftables ile VPS güvenlik duvarı rehberi ile birlikte kullanmak oldukça etkilidir.

Yanlış Pozitifler ve Beyaz Liste Yönetimi

Özellikle küçük ekiplerde, geliştiricilerin yanlış anahtar kullanması veya VPN değişimi nedeniyle kendi IP’lerini engellemesi sık görülen bir durumdur. Bu yüzden ignoreip direktifini kullanarak ofis IP’lerinizi veya VPN ağınızı beyaz listeye almanız mantıklıdır:

[DEFAULT]
ignoreip = 127.0.0.1 10.0.0.0/24 1.2.3.4

Ayrıca, üretim ortamında bantime süresini çok uzun tutmak yerine, ihlal şiddetine göre artırmak daha faydalı olur. Örneğin ilk ihlalde 1 saat, tekrar eden IP’ler için 1 gün gibi artan cezalar tanımlayabilirsiniz.

Otomatik Güvenlik Güncellemeleri: Yamalar Gecikmesin

Bugün birçok ihlal, aslında aylar önce yamalanmış güvenlik açıkları yüzünden yaşanıyor. Yani sorun çoğu zaman “bilinmeyen sıfırıncı gün açıkları” değil, uygulanmamış yamalar. Bu yüzden otomatik güvenlik güncellemeleri kritik bir savunma katmanı.

Ubuntu/Debian: unattended-upgrades ile Güvenlik Güncellemeleri

Debian ve Ubuntu tabanlı sistemlerde unattended-upgrades paketi, özellikle güvenlik güncellemelerini otomatik kurmak için ideal çözümdür.

apt update
apt install unattended-upgrades apt-listchanges

Ardından temel yapılandırma için:

dpkg-reconfigure unattended-upgrades

Bu sihirbaz, güvenlik güncellemelerinin otomatik kurulmasını tek adımda etkinleştirir. Detaylı ayarlar için /etc/apt/apt.conf.d/50unattended-upgrades dosyasını gözden geçirin:

Unattended-Upgrade::Origins-Pattern {
  "origin=Ubuntu,codename=${distro_codename},label=Ubuntu-Security";
};

Unattended-Upgrade::Remove-Unused-Dependencies "true";
Unattended-Upgrade::Automatic-Reboot "true";
Unattended-Upgrade::Automatic-Reboot-Time "03:30";

Burada kritik olan; otomatik reboot gerektiren güncellemelerin hangi saat aralığında uygulanacağına bilinçli karar vermektir. Trafiğinizin düşük olduğu saatleri tercih edin ve öncesinde mutlaka yedekleme stratejinizi netleştirin. Yedek tarafını daha derin ele almak isterseniz, 3-2-1 yedekleme stratejisi rehberimize göz atabilirsiniz.

RHEL/AlmaLinux/Rocky Linux: dnf-automatic ile Güncellemeler

RHEL ailesinde ise dnf-automatic benzer işi görür:

dnf install dnf-automatic

Sonra /etc/dnf/automatic.conf dosyasını düzenleyin:

[commands]
upgrade_type = security
random_sleep = 0

[emitters]
email_from = root@sunucu
email_to = [email protected]

[base]
automatic_install = yes

Ve zamanlayıcıyı etkinleştirin:

systemctl enable --now dnf-automatic.timer

Üretim ortamlarında genellikle sadece güvenlik güncellemelerini otomatikleştirmek, büyük versiyon geçişlerini ise kontrollü bakım pencerelerine bırakmak daha sağlıklı bir stratejidir.

Otomatik Güncelleme Riskleri Nasıl Yönetilir?

“Her şeyi otomatiğe bağlayalım” yaklaşımı kulağa hoş gelse de, özellikle karmaşık stack’lerde beklenmedik uyumsuzluklara yol açabilir. Bu riski azaltmak için:

  • Otomatik güncellemeyi sadece güvenlik yamaları ile sınırlayın.
  • Çekirdek/güvenlik bileşenleri için önce staging veya test VPS’inde deneme yapın.
  • Güncelleme öncesi ve sonrası için basit sağlık kontrolleri (ör. HTTP 200 durumu) tanımlayın.
  • Güncelleme sonrası oluşabilecek performans sorunlarını yakalamak için VPS kaynak kullanımı izleme rehberimizde anlattığımız gibi temel metrikleri takip edin.

Ek Kontroller: Güvenlik Duvarı, Loglar ve Yedekler

sshd_config, root erişimi, fail2ban ve otomatik güncellemeler, VPS güvenliğinin omurgasıdır. Ancak bu omurgayı destekleyecek birkaç önemli katman daha var.

Güvenlik Duvarı ile Saldırı Yüzeyini Küçültmek

Temel prensip: İnternete açık port sayısı ne kadar azsa, saldırı yüzeyiniz de o kadar küçüktür. VPS üzerinde çoğu zaman sadece aşağıdaki portların açık olması yeterlidir:

  • SSH (örn. 22 veya alternatif port)
  • HTTP (80) ve HTTPS (443)
  • Gerçekten ihtiyaç duyulan özel servis portları (ör. 3306 sadece iç ağa açık gibi)

Detaylı örnekler ve ufw/firewalld/iptables karşılaştırması için VPS güvenlik duvarı yapılandırma rehberini kullanabilirsiniz.

Log Yönetimi ve Disk Dolmasını Önlemek

Güvenlik önlemleri arttıkça log hacmi de artar. Bu iyi bir şeydir; ancak yönetilmezse disk dolması gibi kritik sorunlara yol açabilir. Log dosyalarınızın sağlıklı döndürülmesi ve eski logların sıkıştırılarak saklanması için logrotate yapılandırmasının düzgün olduğundan emin olun.

Bu konuda pratik bir yol haritası arıyorsanız, DCHost blogdaki VPS disk kullanımı ve logrotate ayarları rehberi size adım adım yol gösterecektir.

Yedekleme: Güvenlik Açığı Kadar Hata Payınızı da Düşürür

Güvenlik sertleştirme, saldırı ihtimalini azaltır; ancak hiçbir önlem %100 değildir. Yanlış bir komutla sshd_config dosyasını bozmanız veya hatalı bir firewall kuralıyla kendinizi kilitlemeniz de mümkündür. Bu yüzden düzenli VPS snapshotları ve harici depolamaya alınan dosya/veritabanı yedekleri, güvenlik kadar operasyonel hata riskini de minimize eder.

DCHost Üzerinde Bu Kontrol Listesini Nasıl Uygularsınız?

DCHost olarak sunduğumuz VPS ve dedicated sunucu hizmetlerinde, bu yazıda bahsettiğimiz adımların çoğu varsayılan kurulumlarda uygulanmaya hazır halde gelir; ancak her projenin ihtiyacı farklı olduğu için, müşterilerimizin büyük kısmı bu ayarları kendi süreçlerine göre özelleştiriyor.

Genel yaklaşımımız şöyle:

  • Yeni bir VPS açtığınızda, ilk iş olarak işletim sistemini güncellemeniz ve SSH anahtarlarınızı tanımlamanız için dokümantasyon ve rehberler sunuyoruz.
  • İsteyen müşteriler için yönetilen hizmet kapsamında, sshd_config sertleştirme, fail2ban kurulumu ve otomatik güvenlik güncellemelerini standartlaştırılmış profillerle uygulayabiliyoruz.
  • Yüksek erişilebilirlik veya çok sunuculu mimariler kuruyorsanız, VPS üzerinde veritabanı replikasyon rehberimiz gibi yazılarla ağ ve veri katmanında da güvenli ve ölçeklenebilir çözümler planlamanıza yardımcı oluyoruz.

Eğer mevcut DCHost VPS’inizde bu kontrol listesini uygularken takıldığınız bir nokta olursa, destek talebi açarak konfigürasyonunuza özel öneri de isteyebilirsiniz.

Sonuç ve Önerilen Yol Haritası

VPS güvenliği, tek bir “sihirli ayar” ile çözülen bir mesele değil. Ancak bu yazıda ele aldığımız dört temel başlık; sshd_config sertleştirme, root erişimini kapatma, fail2ban ile brute-force koruması ve otomatik güvenlik güncellemeleri, küçük-büyük fark etmeksizin neredeyse her Linux VPS için vazgeçilmez bir çekirdek oluşturuyor.

Pratik bir yol haritası isterseniz:

  1. Önce güncellemeleri yapın ve SSH anahtarlarınızı tanımlayın.
  2. Ardından admin kullanıcınızı oluşturup root girişini kademeli olarak kapatın.
  3. sshd_config ayarlarınızı (port, kimlik doğrulama, AllowUsers) sertleştirin.
  4. fail2ban veya benzeri bir mekanizma ile SSH ve kritik servisleri brute-force saldırılarına karşı koruyun.
  5. Dağıtımınıza uygun otomatik güvenlik güncellemelerini devreye alın, log ve yedek stratejinizi netleştirin.

Bu adımları tamamladığınızda, DCHost üzerinde çalışan VPS veya dedicated sunucunuz; hem dış saldırılara hem de içerden gelebilecek hatalı kullanımlara karşı çok daha dirençli hale gelir. İlerleyen aşamada WAF, CDN, merkezi loglama, gelişmiş izleme gibi katmanlarla güvenlik mimarinizi genişletmek isterseniz, blogumuzdaki VPS sunucu güvenliği ve diğer güvenlik odaklı yazılarımız üzerinden adım adım ilerleyebilirsiniz.

Sıkça Sorulan Sorular

sshd_config dosyasında ilk bakmanız gerekenler, doğrudan saldırı yüzeyini etkileyen ayarlardır. Birincisi, PermitRootLogin değerini mutlaka “no” yaparak root hesabına doğrudan SSH girişini kapatmak gerekir. İkincisi, PasswordAuthentication ayarını “no” yapıp sadece SSH anahtarıyla bağlantıya izin vermek brute-force ve parola sızıntısı riskini ciddi biçimde azaltır. Üçüncüsü, MaxAuthTries ve LoginGraceTime parametreleriyle yanlış deneme sayısını ve oturum açma süresini sınırlamak önemlidir. Son olarak AllowUsers veya AllowGroups ile sadece belirli kullanıcıların SSH’a erişebilmesini sağlayarak gereksiz sistem hesaplarını dışarıya kapatmanız tavsiye edilir.

Firewall, hangi portların hangi IP’lere açık olduğunu belirler; ancak kendi başına davranış temelli bir koruma sunmaz. Yani SSH portunuz açıksa, firewall tek başına art arda gelen binlerce yanlış giriş denemesini engellemez. fail2ban ise log dosyalarını izleyerek şüpheli davranışları (kısa sürede çok sayıda hata gibi) tespit eder ve bu IP’leri firewall üzerinden otomatik olarak yasaklar. Böylece hem brute-force saldırılarının etkisini azaltır, hem de log ve kaynak tüketimi tarafında önemli kazanım sağlar. Özellikle internete açık SSH, FTP, web panel gibi servisleriniz varsa, firewall + fail2ban kombinasyonu pratikte oldukça etkili bir ikili haline gelir.

Otomatik güncellemeler yanlış yapılandırılırsa elbette riskli olabilir; ancak tamamen kapatmak genellikle daha büyük bir risktir. Dengeli yaklaşım, sadece güvenlik güncellemelerini otomatikleştirmek, büyük versiyon geçişlerini ise manuel olarak planlanmış bakım pencerelerinde yapmaktır. Debian/Ubuntu tarafında unattended-upgrades, RHEL tabanlı sistemlerde dnf-automatic ile bu ayrımı yapmak mümkündür. Ek olarak, güncellemelerden önce düzenli yedek almak, mümkünse önce staging VPS’te test etmek ve ardından canlı sisteme geçirmek riski oldukça düşürür. Doğru kurgulandığında otomatik güvenlik güncellemeleri, yamaların aylarca gecikmesini engelleyerek toplam riskinizi ciddi biçimde azaltır.

Root SSH erişimini kapatmak, root yetkilerini tamamen kaybettiğiniz anlamına gelmez; sadece doğrudan giriş yolunu kapatmış olursunuz. Sağlıklı model, yetkili bir admin kullanıcısı ile SSH’a bağlanmak ve gerektiğinde sudo üzerinden root yetkisine geçmektir. Örneğin admin kullanıcısı ile giriş yaptıktan sonra “sudo su -” veya “sudo -i” komutlarıyla root oturumu açabilirsiniz. Böylece hem tam yetkili yönetim imkânınız devam eder, hem de kim hangi komutu ne zaman çalıştırmış, auth logları üzerinden çok daha net izlenebilir. Ayrıca saldırganlar root hesabını hedef alsa bile doğrudan SSH ile bağlanamayacakları için ek bir güvenlik katmanı kazanmış olursunuz.

Yeni bir DCHost VPS kurduğunuzda önce işletim sistemini güncellemeniz ve SSH anahtarlarınızı tanımlamanız en güvenli başlangıç adımıdır. Ardından admin adlı yetkili bir kullanıcı oluşturup, bu kullanıcıyla SSH erişiminizi test edin ve sonrasında root SSH girişini kapatın. Devamında sshd_config içinde parola girişini kapatıp (PasswordAuthentication no), MaxAuthTries gibi temel sertleştirme ayarlarını yapın. Bir sonraki adımda fail2ban kurarak SSH için basit bir jail tanımlayın ve güvenlik duvarınızda sadece gerekli portları açık bırakın. Son olarak, dağıtımınıza uygun otomatik güvenlik güncellemelerini devreye alıp, yedekleme ve log döngüsü ayarlarınızı netleştirmeniz önerilir.