Buyukweb
VDS Sunucu Kurulumu: Adım Adım Başlangıç Rehberi

VDS Sunucu Kurulumu: Adım Adım Başlangıç Rehberi

VDS sunucunuzu ilk kez kuruyor musunuz? Bu rehberde Linux tabanlı VDS kurulumunun her adımını, ilk güvenlik ayarlarından web sunucu kurulumuna kadar detaylıca anlatıyoruz.

Büyükweb Editör EkibiHosting, Sunucu ve Sistem Yönetimi Editörü9 dakika okuma

VDS Sunucu Kurulumu: Sıfırdan Adım Adım Başlangıç Rehberi (2026)

VDS sunucu siparişiniz onaylandıktan sonra "buradan ne yapacağım?" diye duraksıyorsanız bu rehber tam size göre. Buyukweb müşterilerimizin %30'u VDS'i ilk kez aldıkları için ilk kurulumda destek talebi açıyor; bu yazıda kendi başınıza güvenli bir başlangıç için 12 adımı sıralıyorum. Süreç toplamda 30-45 dakika; sabırla takip edin.

Buyukweb perspektifi: Bu rehber Linux VDS (Ubuntu/Debian/AlmaLinux) için. Windows Server VDS satın aldıysanız RDP üzerinden farklı bir akış izlersiniz; o ayrı bir konu. Linux deneyiminiz çok az ise: ya cPanel/Plesk lisansı ekleyerek panel üzerinden yönetin, ya da daha küçük başlayıp adım adım Linux öğrenin.

Kurulum Öncesi: Hazırlık

Sipariş Sonrası Aldığınız Bilgiler

VDS aktif olduğunda Buyukweb size mail/portal üzerinden şu bilgileri iletir:

Sunucu IP:        XX.XX.XX.XX
SSH Port:         22 (varsayılan)
Root Kullanıcı:   root
Root Şifresi:     (rastgele üretilen güçlü şifre)
İşletim Sistemi:  Ubuntu 22.04 LTS / 24.04 LTS / Debian 12 / AlmaLinux 9 (siparişte seçtiğiniz)

İhtiyacınız Olan Araçlar

  • SSH client:
    • Windows: PowerShell (yerleşik), Windows Terminal, PuTTY, MobaXterm
    • Mac/Linux: Terminal (yerleşik)
  • Metin editör bilgisi: nano (en kolay) veya vim (ileri)
  • 30-45 dakika kesintisiz zaman

Adım 1: İlk SSH Bağlantısı

# Linux/Mac terminal veya Windows PowerShell
ssh root@SUNUCU_IP -p 22

# İlk bağlantıda fingerprint sorulur, "yes" yazın
# Şifre istendiğinde mailden gelen şifreyi yapıştırın

# Bağlandığınızda hostname ve OS gözükür
# root@vds-server:~#

İlk bağlantıdan sonra mutlaka şifreyi değiştirin:

passwd
# Yeni şifre: 16+ karakter, büyük/küçük harf, sayı, sembol
# Yeni şifre (tekrar):

Önemli: Buyukweb'in size verdiği başlangıç şifresi mail üzerinde geçtiği için ileride sızabilir. İlk değiştirme adımı şart.

Adım 2: Sistem Güncellemesi

# Ubuntu/Debian
apt update
apt upgrade -y

# AlmaLinux/Rocky/CentOS
dnf update -y

# Reboot gerekirse (kernel güncellendiyse)
reboot

Reboot 30 saniye sürer; bağlantınız düşer, 60 saniye sonra yeniden ssh ile bağlanın.

Adım 3: Hostname ve Saat Dilimi

# Hostname ayarla
hostnamectl set-hostname myserver

# Saat dilimi (Türkiye)
timedatectl set-timezone Europe/Istanbul

# Doğrulama
hostnamectl
timedatectl

Adım 4: Yeni Kullanıcı Oluşturma

Root hesabıyla günlük çalışmak güvensiz. Yeni sudo kullanıcısı:

# Ubuntu/Debian
adduser deploy
# Şifre belirleyin

usermod -aG sudo deploy

# AlmaLinux/Rocky
useradd -m -s /bin/bash deploy
passwd deploy
usermod -aG wheel deploy

Test edin: yeni terminal'den ssh deploy@SUNUCU_IP ile giriş yapın, sudo apt update ile sudo'yu deneyin.

Adım 5: SSH Anahtar Tabanlı Kimlik Doğrulama

Şifre yerine SSH anahtar (key) kullanmak daha güvenli ve daha pratik.

Lokal Bilgisayarınızda Anahtar Üretme

# Linux/Mac/Windows PowerShell (modern Windows ssh-keygen var)
ssh-keygen -t ed25519 -C "[email protected]"

# Lokasyon: ~/.ssh/id_ed25519 (varsayılan, Enter)
# Passphrase: (opsiyonel ama önerilir; anahtarı şifreyle korur)

Anahtarı Sunucuya Kopyalama

# Tek komutla
ssh-copy-id -p 22 deploy@SUNUCU_IP

# Manuel yöntem
cat ~/.ssh/id_ed25519.pub | ssh deploy@SUNUCU_IP "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Test edin: yeni terminal'den ssh deploy@SUNUCU_IP ile giriş yapın — bu sefer şifre sorulmamalı (passphrase varsa onu sorar).

Adım 6: SSH Sıkılaştırma

Anahtar çalıştığını teyit ettikten sonra şifreli girişi devre dışı bırakın:

# Root olarak (veya sudo)
sudo nano /etc/ssh/sshd_config

# Aşağıdaki satırları bulup değiştirin:
Port 22                       # İsteğe bağlı: 22222 gibi yüksek port
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
ChallengeResponseAuthentication no
UsePAM yes
X11Forwarding no
AllowUsers deploy             # Sadece bu kullanıcıya izin ver

# Kaydet (nano: Ctrl+O, Enter, Ctrl+X)

# SSH config doğrulama (hata varsa restart sırasında bağlantınız düşer)
sudo sshd -t

# SSH servisini yeniden başlat
sudo systemctl restart sshd

# YENİ TERMINAL aç ve test et — eski terminal hâlâ açık kalsın
ssh deploy@SUNUCU_IP

Kritik uyarı: SSH config bozuk ise restart sonrası giriş yapamazsınız. Test bağlantısı yeni terminal'den olsun; eski oturumu kapatmadan test edin. Yanlış config varsa eski oturumdan geri alabilirsiniz.

Adım 7: Güvenlik Duvarı (UFW)

# Ubuntu/Debian
sudo apt install ufw -y

# Default politikalar
sudo ufw default deny incoming
sudo ufw default allow outgoing

# Gerekli portları aç
sudo ufw allow 22/tcp           # SSH (eğer yüksek port seçtiyseniz: 22222/tcp)
sudo ufw allow 80/tcp           # HTTP
sudo ufw allow 443/tcp          # HTTPS

# Firewall'u aktif et
sudo ufw enable

# Durum kontrolü
sudo ufw status verbose

AlmaLinux/Rocky için firewalld:

sudo dnf install firewalld -y
sudo systemctl enable --now firewalld

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

Adım 8: Fail2ban ile Brute Force Koruması

# Ubuntu/Debian
sudo apt install fail2ban -y

# Lokal yapılandırma dosyası (default jail.conf'ı düzenleme)
sudo nano /etc/fail2ban/jail.local

Aşağıdaki içeriği yapıştırın:

[DEFAULT]
bantime = 3600
findtime = 600
maxretry = 3
ignoreip = 127.0.0.1/8 ::1

[sshd]
enabled = true
port = 22
logpath = %(sshd_log)s
backend = systemd
sudo systemctl enable --now fail2ban

# Durum kontrol
sudo fail2ban-client status
sudo fail2ban-client status sshd

Adım 9: Web Sunucu Kurulumu (Nginx Tercihi)

Web uygulaması çalıştıracaksanız Nginx önerimiz (Apache'e göre daha hafif, daha hızlı statik dosya sunumu):

# Ubuntu/Debian
sudo apt install nginx -y
sudo systemctl enable --now nginx

# AlmaLinux/Rocky
sudo dnf install nginx -y
sudo systemctl enable --now nginx

Tarayıcıdan http://SUNUCU_IP adresine gidin → Nginx default sayfası gözükmeli.

Nginx Server Block (Virtual Host)

sudo nano /etc/nginx/sites-available/siteniz.com
server {
    listen 80;
    listen [::]:80;
    server_name siteniz.com www.siteniz.com;
    root /var/www/siteniz.com;
    index index.html index.php;

    location / {
        try_files \$uri \$uri/ =404;
    }

    location ~ \.php\$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
    }

    # Statik dosyalar uzun cache
    location ~* \.(css|js|jpg|jpeg|png|webp|woff2)\$ {
        expires 1y;
        add_header Cache-Control "public, immutable";
    }
}
sudo ln -s /etc/nginx/sites-available/siteniz.com /etc/nginx/sites-enabled/
sudo nginx -t          # Config test
sudo systemctl reload nginx

Adım 10: PHP Kurulumu (Modern Versiyon)

# Ubuntu (Ondrej Sury PPA en güncel PHP)
sudo add-apt-repository ppa:ondrej/php -y
sudo apt update

# PHP 8.3 + WordPress için gerekli eklenti'ler
sudo apt install php8.3-fpm php8.3-mysql php8.3-curl php8.3-mbstring php8.3-xml php8.3-zip php8.3-gd php8.3-intl php8.3-bcmath php8.3-imagick redis php8.3-redis -y

# PHP-FPM start
sudo systemctl enable --now php8.3-fpm

# Doğrulama
php -v
php-fpm8.3 -v

Adım 11: Veritabanı (MariaDB veya MySQL)

# MariaDB (önerilir, MySQL ile uyumlu, daha açık geliştirme süreci)
sudo apt install mariadb-server -y

# Güvenlik sıkılaştırma
sudo mysql_secure_installation
# - root şifre belirle
# - anonim kullanıcıları sil → Y
# - uzaktan root login → N (Y olarak yasakla)
# - test database sil → Y
# - privilege table reload → Y

# Veritabanı + kullanıcı oluştur
sudo mysql -u root -p

CREATE DATABASE wordpress_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'GuçlüSifre123!';
GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Adım 12: SSL Sertifikası (Let's Encrypt + certbot)

# Ubuntu/Debian
sudo apt install certbot python3-certbot-nginx -y

# DNS A kaydı önce hazır olmalı: siteniz.com → SUNUCU_IP

certbot --nginx -d siteniz.com -d www.siteniz.com
# E-posta: yenileme uyarıları için
# Terms: A
# Newsletter: N

# Otomatik yenileme
systemctl status certbot.timer

Adım 13 (Opsiyonel): Otomatik Güncelleme

Güvenlik yamalarının otomatik uygulanması:

# Ubuntu/Debian
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure --priority=low unattended-upgrades

# Sadece güvenlik güncellemeleri
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
# Diğer satırları yorum, sadece security açık:
# "${distro_id}:${distro_codename}-security";

# Otomatik reboot (kernel güncellemesi sonrası gece)
# /etc/apt/apt.conf.d/50unattended-upgrades
Unattended-Upgrade::Automatic-Reboot "true";
Unattended-Upgrade::Automatic-Reboot-Time "02:30";

Adım 14: Monitoring + Yedekleme

Temel Monitoring (htop, vnstat)

sudo apt install htop iotop vnstat -y

# CPU/RAM canlı izleme
htop

# Disk I/O
sudo iotop

# Ağ trafik aylık özet
vnstat

Buyukweb VDS Yedekleme

Buyukweb VDS paketlerinde günlük otomatik yedek standart (Veeam altyapısı). Müşteri tarafında ek yedek için:

  • DB dump cron: mysqldump ile günlük DB dump'ı uzak storage'a (Backblaze B2, S3, kendi storage)
  • rsync: Dosya yedekleri farklı sunucuya
  • Borgbackup veya Restic: Şifreli, deduplicated yedek (yazımız: Restic + B2 rehberi)
# Basit DB dump cron örneği
crontab -e

# Her gün 03:00'te DB dump
0 3 * * * mysqldump -u root -pSIFRE wordpress_db | gzip > /backup/wp_\$(date +\%Y\%m\%d).sql.gz

# Eski yedekleri 7 gün sonra sil
0 4 * * * find /backup/ -name "wp_*.sql.gz" -mtime +7 -delete

Sonraki Adımlar

VDS'inizi kurduktan sonra ihtiyaca göre:

  • WordPress kurulumu: /var/www/siteniz.com altına WP indir + DB bağla
  • WooCommerce için optimize: Redis Object Cache, OPcache yapılandırma
  • Docker + container'lar: Docker Engine kurulumu, Docker Compose
  • Kontrol paneli: cPanel/Plesk lisansı veya CyberPanel (ücretsiz) kurulumu
  • Reverse proxy + multiple sites: Nginx server block ile birden fazla domain
  • Monitoring stack: Prometheus + Grafana ile metrikler
  • CI/CD: GitHub Actions / GitLab CI ile otomatik deploy

Sık Sorulan Sorular

VDS'imde root şifresini unuttum, ne yapmalıyım?

Buyukweb destek ekibini arayın (0850 302 60 70). Müşteri panelinden şifre sıfırlama talebi açabiliriz.

SSH portunu değiştirmek gerek mi?

Standart 22 portu yoğun bot taramasına maruz kalır. Yüksek port (22222, 50022 gibi) saldırı sayısını azaltır ama gerçekten güçlü 2FA + key-only auth varsa ek katman değil. fail2ban + key-only auth en kritik.

Hangi Linux dağıtımını seçmeliyim?

Çoğu Buyukweb müşterisi için Ubuntu 22.04/24.04 LTS. Geniş topluluk, bol kaynak, güncel paketler. Kurumsal kararlılık ihtiyacı varsa AlmaLinux 9. Mutlak stabilite için Debian 12.

cPanel/Plesk yüklemeli miyim?

Linux komut satırı bilginiz az ise: evet, panel hayatı kolaylaştırır. Aylık ek lisans ücreti (~₺200-500) var. Geliştirici/teknik kullanıcı için panel gereksiz; SSH yeterli.

1 GB RAM yeterli mi?

WordPress + LEMP stack için yetersiz. Minimum 2 GB öneririz; aktif WooCommerce 4-8 GB. Buyukweb VDS başlangıç paketi 4 GB RAM ile geliyor.

Linux Mint, openSUSE, FreeBSD desteği var mı?

Buyukweb VDS Ubuntu/Debian/AlmaLinux/Rocky/CentOS varsayılan kurulumları sunar. Diğer dağıtımlar manuel ISO ile mümkün ama destek sınırlı.

Snapshot vs yedekleme farkı?

Snapshot anlık disk durumu (hızlı, host seviyesi); yedekleme harici depoya kopya. Snapshot host arızasında kaybolabilir; yedek bağımsız. Her ikisini de kullanın.

KVM vs OpenVZ vs LXC?

Buyukweb VDS KVM tam sanallaştırma kullanır. KVM tam Linux kernel sahipliği verir (Docker, kernel module yükleyebilirsiniz). OpenVZ container; daha kısıtlı. LXC orta yol; tek host kernel paylaşımı.

Docker hemen kurmalı mıyım?

Geliştirici/DevOps iseniz: evet. Klasik LEMP stack tercihiniz ise: gerekmez. Karar projeye göre.

Sunucuya rastgele IP'lerden SSH girişleri görüyorum, normal mi?

Evet, internet sürekli tarama altında. fail2ban + key-only auth aktif olduğu sürece tehlikesiz. /var/log/auth.log veya /var/log/secure log'da çok girdi normal.

Sonuç ve Buyukweb Tavsiyemiz

VDS sunucu kurulumu 30-45 dakikalık sistematik bir süreç. İlk kez yapıyorsanız sabırlı olun, yedeği test edin, dokümantasyonu kaydedin. Buyukweb tarafında VDS sunucu paketleri, E5-V4 VDS, E5-V2 VDS farklı bütçe seviyelerinde ürünler sunar; KVM tam sanallaştırma + NVMe SSD + Türkiye Bursa Tier 3 lokasyon standart.

Kurulum sürecinde takılırsanız 7/24 Türkçe destek ekibimiz yardımcıdır.

Soru ve teknik destek için: 0850 302 60 70.


İlgili Büyükweb Hizmetleri

VDS paketleri ve yönetimli alternatifleri:

Sorularınız için 0850 302 60 70 numaralı destek hattımıza veya iletişim sayfamıza yazabilirsiniz.

VDS & VPS Rehberi İlgili Hizmetlerimiz

Bu yazıda anlatılan teknik konuyu profesyonel altyapıyla deneyimleyin

Etiketler:

#vds kurulum#vds sunucu#linux sunucu#ssh güvenlik#nginx kurulum#vps rehber

Bu yazıyı paylaş