Bilcom
Bilcom

Sıfırdan Zirveye Sunucu Kurulum Rehberi: Kendi Sunucunuzu Adım Adım Güvenli, Hızlı ve Performanslı Hale Getirin

Sıfırdan Zirveye Sunucu Kurulum Rehberi: Kendi Sunucunuzu Adım Adım Güvenli, Hızlı ve Performanslı Hale Getirin

Günümüz dijital dünyasında bir web sitesi, uygulama veya özel bir yazılım projesi geliştirmek kadar, onu güvenli ve kesintisiz bir ortamda barındırmak da hayati önem taşıyor. Hazır kontrol panelleri veya paylaşımlı (shared) hosting çözümleri hızlı bir başlangıç sağlasa da, projeniz büyüdükçe kendi sunucunuzun (VPS/VDS) kontrolünü elinize alma ihtiyacı doğar.

Peki, sıfırdan bir sunucu nasıl kurulur, performans ayarları nasıl yapılır ve en önemlisi siber tehditlere karşı nasıl korunur? Bu rehberde, sıfırdan adım adım güvenli, hızlı ve yüksek performanslı bir sunucu ortamı hazırlamanın yollarını inceliyoruz.

1. Sunucu Tipi ve İşletim Sistemi Seçimi

Kuruluma başlamadan önce projenizin ihtiyaçlarına uygun altyapıyı seçmeniz gerekir.

  • Sanal Sunucu (VPS/VDS): Orta ölçekli projeler, web siteleri ve API servisleri için maliyet/performans oranı en yüksek seçenektir.

  • Fiziksel Sunucu (Dedicated): Yüksek trafikli sistemler, büyük veritabanları ve özel donanım gereksinimi duyan projeler için idealdir.

İşletim Sistemi Tercihi: Sunucu dünyasının standart kabul edilen işletim sistemi Linux’tur. Özellikle Ubuntu Server (LTS sürümleri) ve Debian, geniş topluluk desteği ve kararlılıkları sayesinde hem yeni başlayanlar hem de profesyoneller için en iyi tercihtir.

2. İlk Erişim ve Temel Güvenlik Yapılandırması

Sunucunuz kiralandığında size genellikle bir IP adresi ve root şifresi verilir. İlk adım, bu erişimi güvenli hale getirmektir.

SSH İle Bağlantı ve Güncellemeler

Terminal veya PuTTY kullanarak sununuza bağlandıktan sonra yapmanız gereken ilk şey sistem paketlerini güncellemektir:

Bash
 
sudo apt update && sudo apt upgrade -y

Root Kullanıcısını Devre Dışı Bırakma ve Yeni Kullanıcı Oluşturma

Her işlemi root yetkisiyle yapmak güvenlik riski oluşturur. Özel yetkilere sahip yeni bir kullanıcı oluşturun:

Bash
 
adduser yeni_kullanici
usermod -aG sudo yeni_kullanici

SSH Anahtar (SSH Key) İle Giriş

Şifre tabanlı girişler "Brute Force" (kaba kuvvet) saldırılarına açıktır. SSH Key çifti oluşturarak şifreli girişi kapatmak, güvenlik seviyenizi katbekat artırır.

3. Sunucu Duvarı (Firewall) ve Saldırı Koruması

Sunucunuzu dış dünyaya açmadan önce port güvenlik önlemlerini almalısınız.

  1. UFW (Uncomplicated Firewall) Aktifleştirme: Sadece ihtiyacınız olan portları (SSH için 22, Web için 80 ve 443) açık bırakın:

    Bash
     
    sudo ufw allow 22/tcp
    sudo ufw allow 80/tcp
    sudo ufw allow 443/tcp
    sudo ufw enable
    
  2. Fail2ban Kurulumu: Sürekli hatalı şifre deneyen IP adreslerini tespit edip otomatik olarak engelleyen Fail2ban yazılımını kurarak sunucunuzu otomatik kaba kuvvet saldırılarına karşı koruyun.

4. Web Sunucusu ve Yazılım Yığınının (Stack) Kurulumu

Projenizin türüne göre gerekli yazılımları yüklemeniz gerekir. En popüler yapılandırmalardan biri LEMP (Linux, Nginx, MySQL/MariaDB, PHP) veya Node.js/Python ortamlarıdır.

  • Web Sunucusu Seçimi: High-traffic (yüksek trafikli) projelerde düşük kaynak tüketimi ve yüksek eşzamanlı bağlantı başarısı nedeniyle Nginx önerilir.

  • Veritabanı Optimization: MariaDB veya PostgreSQL kurduktan sonra, veritabanı güvenlik sihirbazını (mysql_secure_installation) mutlaka çalıştırın.

5. Performans ve Hız Optimizasyonu

Hızlı yüklenen bir sistem hem kullanıcı deneyimini hem de SEO performansını doğrudan etkiler.

  • Önbellekleme (Caching): Dynamic içerikleri hızlı sunmak için Redis veya Memcached entegrasyonu yapın.

  • HTTP/2 ve HTTP/3 Desteği: Web sunucunuzda HTTP/2 veya HTTP/3 protokollerini aktif ederek dosya transfer hızlarını artırın.

  • Gzip / Brotli Sıkıştırma: Sunucudan istemciye gönderilen CSS, JS ve HTML dosyalarını sıkıştırarak bant genişliğini verimli kullanın.

6. SSL Sertifikası Kurulumu (HTTPS)

Günümüzde şifrelenmemiş (HTTP) bir sunucu kabul edilemez. Let's Encrypt kullanarak ücretsiz ve otomatik yenilenen SSL sertifikanızı dakikalar içinde tanımlayabilirsiniz:

Bash
 
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx

Bu adım sayesinde sunucunuz ve ziyaretçileriniz arasındaki veri trafiği 256-bit şifreleme ile güvence altına alınır.

7. İzleme (Monitoring) ve Otomatik Yedekleme

Sunucuyu kurup bırakmak yeterli değildir. Süreklilik için izleme ve yedekleme şarttır.

  • Yedekleme Stratejisi: Veritabanı ve dosya yedeklerinizi günlük olarak farklı bir uzak sunucuya veya bulut depolama alanına (S3, Google Drive vb.) otomatik aktaran cron job'lar tanımlayın.

  • Sistem İzleme: Sunucunun CPU, RAM ve Disk kullanımını Netdata, Prometheus/Grafana veya basit araçlarla anlık olarak takip edin.

Sonuç

Sıfırdan güvenli ve performanslı bir sunucu kurmak göz korkutucu görünebilir; ancak doğru adımları sırasıyla uyguladığınızda tam kontrolü elinizde tuttuğunuz, hızlı ve sarsılmaz bir altyapıya sahip olursunuz.

Unutmayın, sunucu yönetimi yaşayan bir süreçtir. Sistem güncellemelerini düzenli yapmak ve güvenlik günlüklerini (log) belirli aralıklarla incelemek, sunucunuzun her zaman zirvede kalmasını sağlayacaktır.

Link kopyalandı!