X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe)
X
X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe)
X
🔥 Türkiye Lokasyon VDS & VPS sunucularında %20 indirim! Kupon Kodu: Türkiye'de %20 İndirim! Kod: DATA20
Şirketimizdeki KALİTEYİ Yakından Tanıyın!

Yeni VDS'te Yapılması Gereken İlk 10 Güvenlik Adımı

Yeni VDS'te Yapılması Gereken İlk 10 Güvenlik Adımı

VDS güvenliği, sunucunuz teslim edildiği anda başlayan bir süreçtir. Yeni bir sanal sunucu internete açıldığı andan itibaren otomatik tarayıcıların hedefi olur; SSH portuna yönelik parola deneme saldırıları çoğu zaman ilk saatlerde başlar. İyi haber şu ki saldırıların büyük kısmı birkaç temel önlemle etkisiz hâle getirilebilir. Bu yazıda Ubuntu 22.04/24.04 ve AlmaLinux 9 üzerinde, yeni bir VDS'te ilk iş olarak yapmanız gereken 10 güvenlik adımını komutlarıyla birlikte sırasıyla anlatıyoruz.

Önemli: SSH ve güvenlik duvarı ayarlarını değiştirirken mevcut oturumunuzu kapatmayın. Her değişiklikten sonra yeni bir terminalde bağlanabildiğinizi doğruladıktan sonra eski oturumu kapatın. Böylece hatalı bir ayarda sunucuya erişiminizi kaybetmezsiniz.

1. Sistemi Güncelleyin

Kurulum kalıbı hazırlandıktan sonra yayımlanmış güvenlik yamaları olabilir. İlk iş tüm paketleri güncelleyin:

# Ubuntu
sudo apt update && sudo apt upgrade -y

# AlmaLinux 9
sudo dnf upgrade -y

Çekirdek güncellemesi geldiyse sunucuyu yeniden başlatın. Ubuntu'da /var/run/reboot-required dosyasının varlığı yeniden başlatma gerektiğini gösterir; AlmaLinux'ta dnf needs-restarting -r komutu aynı bilgiyi verir.

2. Root Yerine Yetkili Bir Kullanıcı Oluşturun

Günlük işleri root hesabıyla yapmak, her hatanın ve her ele geçirilmenin en yüksek yetkiyle gerçekleşmesi demektir. Kendinize sudo yetkili bir kullanıcı açın:

# Ubuntu
sudo adduser yonetici
sudo usermod -aG sudo yonetici

# AlmaLinux 9
sudo useradd -m yonetici
sudo passwd yonetici
sudo usermod -aG wheel yonetici

Ubuntu'da sudo, AlmaLinux'ta wheel grubu yönetici yetkisi verir. Yeni kullanıcıyla bağlanıp sudo whoami komutunun root döndürdüğünü doğrulayın.

3. SSH Anahtarıyla Giriş Yapın

Parola tabanlı giriş, kaba kuvvet saldırılarına açıktır. SSH anahtarı ise tahmin edilemez ve sunucuya hiç iletilmeyen bir özel anahtara dayanır. Kendi bilgisayarınızda bir anahtar çifti oluşturup açık anahtarı sunucuya kopyalayın:

# Kendi bilgisayarınızda
ssh-keygen -t ed25519
ssh-copy-id yonetici@SUNUCU_IP

Ardından ssh yonetici@SUNUCU_IP ile parola sorulmadan bağlanabildiğinizi test edin. Windows'tan anahtar oluşturma ve kopyalama dahil tüm ayrıntılar için SSH anahtarı ile şifresiz ve güvenli giriş rehberimize bakabilirsiniz.

4. Root Girişini ve Parola ile Girişi Kapatın

Anahtarla girişin çalıştığından emin olduktan sonra SSH sunucusunu sıkılaştırın. Ana yapılandırma dosyasını düzenlemek yerine ayrı bir dosya oluşturmak, paket güncellemelerinde ayarlarınızın korunmasını sağlar:

sudo nano /etc/ssh/sshd_config.d/00-guvenlik.conf
PermitRootLogin no
PasswordAuthentication no
KbdInteractiveAuthentication no
PubkeyAuthentication yes

Dosya adının 00 ile başlaması önemlidir. OpenSSH bir ayar için ilk okuduğu değeri kullanır; bazı bulut kalıplarında 50-cloud-init.conf gibi dosyalar parolalı girişi açık bırakabilir ve sizin dosyanız ondan önce okunmalıdır. Yapılandırmayı test edip uygulayın:

sudo sshd -t
sudo sshd -T | grep -Ei 'permitrootlogin|passwordauthentication'

# Ubuntu
sudo systemctl restart ssh
# AlmaLinux 9
sudo systemctl restart sshd

sshd -t hata vermemeli, sshd -T çıktısında her iki ayar da no görünmelidir. Şimdi yeni bir terminalde bağlantıyı tekrar test edin.

5. Güvenlik Duvarını Etkinleştirin

Varsayılan yaklaşım şu olmalı: her şeyi kapat, yalnızca ihtiyaç duyduğunu aç.

Ubuntu: UFW

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH
# Web sunucusu çalıştıracaksanız
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
sudo ufw status verbose

AlmaLinux 9: firewalld

sudo systemctl enable --now firewalld
sudo firewall-cmd --list-all
# Kullanmıyorsanız varsayılan açık gelen cockpit servisini kapatın
sudo firewall-cmd --permanent --remove-service=cockpit
# Web sunucusu çalıştıracaksanız
sudo firewall-cmd --permanent --add-service=http --add-service=https
sudo firewall-cmd --reload

SSH portunu değiştirdiyseniz güvenlik duvarında yeni portu açmadan SSH servisini yeniden başlatmayın.

6. Fail2ban ile Kaba Kuvvet Denemelerini Engelleyin

Fail2ban, günlük kayıtlarını izleyerek art arda başarısız giriş yapan IP adreslerini belirli bir süre engeller. Parola ile girişi kapatmış olsanız bile günlükleri temiz tutar ve diğer servislerinizi korumak için genişletilebilir.

# Ubuntu
sudo apt install fail2ban

# AlmaLinux 9
sudo dnf install epel-release
sudo dnf install fail2ban
sudo systemctl enable --now fail2ban

Varsayılan dosyaları değiştirmek yerine /etc/fail2ban/jail.local dosyasını oluşturun:

[DEFAULT]
bantime = 1h
findtime = 10m
maxretry = 5

[sshd]
enabled = true
sudo systemctl restart fail2ban
sudo fail2ban-client status sshd

Kendi IP adresinizi yanlışlıkla engellememek için ignoreip ayarı ve diğer servisler için jail tanımları dahil ayrıntıları Fail2ban ile brute force saldırılarını engelleme yazımızda bulabilirsiniz.

7. Otomatik Güvenlik Güncellemelerini Açın

Kritik bir açık yayımlandığında sunucunuza elle bağlanmanızı beklemek yerine güvenlik yamalarının otomatik yüklenmesini sağlayın.

Ubuntu: unattended-upgrades

sudo apt install unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades

Açılan ekranda otomatik güncellemeleri onaylayın. Varsayılan yapılandırma yalnızca güvenlik deposundaki güncellemeleri yükler.

AlmaLinux 9: dnf-automatic

sudo dnf install dnf-automatic
sudo nano /etc/dnf/automatic.conf
#   upgrade_type = security
#   apply_updates = yes
sudo systemctl enable --now dnf-automatic.timer

Otomatik güncellemeler çekirdek yamalarından sonra sunucuyu kendiliğinden yeniden başlatmaz; bu nedenle bakım aralıklarında yeniden başlatma gerekip gerekmediğini kontrol etmeyi alışkanlık hâline getirin.

8. Açık Portları ve Gereksiz Servisleri Denetleyin

Sunucunuzda hangi servislerin hangi adreslerde dinlediğini görün:

sudo ss -tulpn

Çıktıda 0.0.0.0 veya [::] adresinde dinleyen her servis dış dünyaya açıktır (güvenlik duvarı izin veriyorsa). MySQL, MariaDB, Redis ve benzeri servisler yalnızca uygulamanın kendisi tarafından kullanılıyorsa 127.0.0.1 adresine bağlanmalıdır. Kullanmadığınız servisleri tamamen kapatın:

sudo systemctl disable --now servis_adi

Dışarıdan bakıldığında hangi portların açık göründüğünü port kontrol aracımızla test edebilirsiniz. İçeriden gördüğünüz liste ile dışarıdan görünen liste arasındaki fark, güvenlik duvarınızın gerçekten çalışıp çalışmadığını gösterir.

9. Uygulama ve Panel Katmanını Koruyun

Sunucu sağlam olsa bile saldırganlar çoğu zaman uygulama katmanından girer: güncellenmemiş bir CMS eklentisi, varsayılan parolasıyla bırakılmış bir yönetim paneli ya da herkese açık bir phpMyAdmin sayfası.

  • Kontrol panelleri ve veritabanı yönetim araçlarını mümkünse yalnızca kendi IP adresinize veya VPN ağınıza açın.
  • Yönetim panellerinde iki faktörlü kimlik doğrulamayı etkinleştirin.
  • WordPress ve benzeri sistemlerde çekirdeği, temaları ve eklentileri güncel tutun; kullanılmayan eklentileri silin.
  • Web uygulamaları her kullanıcıya ayrı sistem kullanıcısıyla, minimum yetkiyle çalışsın.
  • Halka açık web projeleri için uygulama katmanı saldırılarına karşı Layer 7 WAF koruması ekleyin.

10. Yedekleme ve İzlemeyi Kurun

Hiçbir güvenlik önlemi yüzde yüz koruma sağlamaz. Bir şeyler ters gittiğinde sizi kurtaracak olan, düzenli ve sunucudan bağımsız tutulan yedeklerdir. Yedeklemeyi sunucuya ilk veriyi koymadan önce planlayın; 3-2-1 kuralı ve restic ile şifreli yedek için VDS yedekleme stratejileri yazımızı inceleyin.

İzleme tarafında ise şu kontroller iyi bir başlangıçtır:

# Son başarılı girişler
last -n 20
# Başarısız giriş denemeleri
sudo lastb -n 20
# SSH servis günlükleri (Ubuntu: ssh, AlmaLinux: sshd)
sudo journalctl -u ssh --since today

Tanımadığınız bir IP adresinden başarılı giriş görürseniz bunu ciddi bir olay olarak ele alın. Ayrıca sunucunuzu dışarıdan izleyen basit bir erişilebilirlik kontrolü kurmak, sorunları müşterilerinizden önce fark etmenizi sağlar.

Saat senkronizasyonunu kontrol edin

Günlük kayıtlarındaki zaman damgaları, bir olay sonrası neyin ne zaman olduğunu anlamanın tek yoludur; Fail2ban gibi araçlar ve TLS sertifika doğrulaması da doğru saate ihtiyaç duyar. timedatectl komutunun çıktısında System clock synchronized: yes satırını görmelisiniz. Saat dilimini sudo timedatectl set-timezone Europe/Istanbul ile ayarlayabilirsiniz. AlmaLinux'ta senkronizasyon chrony ile, Ubuntu'da varsayılan olarak systemd-timesyncd ile sağlanır.

Özet: İlk 10 Adım Kontrol Listesi

AdımUbuntuAlmaLinux 9
1. Güncellemeapt upgradednf upgrade
2. Yetkili kullanıcıadduser + sudo grubuuseradd + wheel grubu
3. SSH anahtarıssh-copy-idssh-copy-id
4. SSH sıkılaştırmasshd_config.d, restart sshsshd_config.d, restart sshd
5. Güvenlik duvarıUFWfirewalld
6. Kaba kuvvet korumasıfail2banfail2ban (EPEL)
7. Otomatik yamalarunattended-upgradesdnf-automatic
8. Port denetimiss -tulpnss -tulpn
9. Uygulama katmanıIP kısıtlama, 2FA, WAFIP kısıtlama, 2FA, WAF
10. Yedek ve izlemerestic, last, journalctlrestic, last, journalctl

Sık Sorulan Sorular

SSH portunu değiştirmek güvenliği artırır mı?

Port değiştirmek otomatik taramalardan gelen gürültüyü azaltır ve günlükleri temiz tutar; ancak tek başına bir güvenlik önlemi değildir. Asıl korumayı anahtarla giriş, kapatılmış parola girişi ve Fail2ban sağlar.

Sunucuya erişimim kesilirse ne yapmalıyım?

Hatalı bir güvenlik duvarı veya SSH ayarı yüzünden bağlanamıyorsanız sağlayıcınızın sunduğu konsol erişimiyle sunucuya bağlanıp ayarı geri alabilirsiniz. Bu nedenle değişiklik yaparken mevcut oturumu açık tutmak en iyi sigortadır.

Windows VDS için de benzer adımlar geçerli mi?

Mantık aynıdır: güncelleme, güçlü kimlik doğrulama, uzak masaüstü erişiminin kısıtlanması, güvenlik duvarı, hesap kilitleme ilkesi ve yedekleme. Uygulama adımları Windows Server araçlarıyla yapılır.

Bu adımlar DDoS saldırılarına karşı korur mu?

Hayır. Bu adımlar yetkisiz erişime karşı korur. DDoS saldırıları ağ seviyesinde karşılanır; DataHost VDS paketlerinde DDoS koruması standart olarak sunulur.

Bu işlemleri ne sıklıkla tekrarlamalıyım?

İlk kurulum bir kez yapılır; ancak açık portların, kullanıcı hesaplarının, güncellemelerin ve yedeklerin düzenli aralıklarla gözden geçirilmesi gerekir. Ayda bir yapılan kısa bir kontrol, sorunların büyümeden fark edilmesini sağlar.

Bu 10 adımı tamamladığınızda VDS güvenliği açısından otomatik saldırıların büyük kısmına karşı sağlam bir temel atmış olursunuz. Güvenlik tek seferlik bir iş değil, sürekli bir alışkanlıktır. NVMe SSD, DDoS koruması ve 7/24 destekle sunulan VDS kiralama seçeneklerimizle yeni sunucunuzu dakikalar içinde teslim alıp bu adımlarla güvenle kullanmaya başlayabilirsiniz.

VDS Sanal Sunucu
TÜRKİYE / ANKARA
₺139 /ay'dan başlayan
Paketleri İncele
  •  NVMe SSD Disk
  •  DDoS Koruması Dahil
  •  Limitsiz Trafik
  •  0–15 Dakikada Kurulum
  •  Windows - Linux
  •  7/24 Destek
Top
Destek Hattı0850 840 90 28

DNS Adresleri

ns1.datahost.net.tr
ns2.datahost.net.tr
DataHost Destek Çevrimiçi

Satış öncesi tüm sorularınız için WhatsApp hattımıza yazın; size hızlıca yardımcı olalım.

WhatsApp'tan Yaz