VPS Nedir? Linux VPS Nasıl Çalışır?

VPS (Virtual Private Server), fiziksel bir sunucunun sanallaştırmayla birden fazla izole sunucuya bölünmesiyle oluşturulan sanal sunucudur. Her VPS'in kendi işletim sistemi, IP adresi ve root erişimi olur; kaynaklar ise sağlayıcının politikasına göre bir havuzdan paylaştırılabilir. Paylaşımlı hostingten daha fazla kontrol, dedicated sunucudan daha düşük maliyet sunar.

Bu rehberde VPS'in teknik olarak nasıl çalıştığını, konteyner tabanlı ve tam sanallaştırmalı VPS arasındaki farkı, sunucuya nasıl bağlanılacağını ve paket seçerken nelere bakılması gerektiğini anlatıyoruz. Somut örnekleri Linux VPS paketleri üzerinden veriyoruz.

VPS nedir?

VPS, kendi işletim sistemini çalıştıran ve dışarıdan bakıldığında ayrı bir sunucu gibi davranan sanal makinedir. Aynı fiziksel donanım üzerinde başka VPS'ler de çalışır, ancak her biri diğerlerinden yalıtılmıştır.

Paylaşımlı hostingte çok sayıda site aynı işletim sistemini, aynı web sunucusunu ve aynı PHP kurulumunu kullanır; siz yalnızca size ayrılan klasörü ve kontrol paneli ekranlarını yönetirsiniz. VPS'te ise işletim sistemi size aittir. Hangi web sunucusunun kurulacağına, PHP'nin hangi sürümle çalışacağına, hangi portların açık kalacağına ve güvenlik duvarının nasıl yapılandırılacağına siz karar verirsiniz. Bu özgürlük sorumluluğu da beraberinde getirir: güncellemeler, yedekler ve güvenlik ayarları artık sunucu yöneticisinin işidir.

VPS ne demek?

VPS, İngilizce Virtual Private Server ifadesinin kısaltmasıdır; Türkçede "sanal özel sunucu" ya da kısaca "sanal sunucu" olarak kullanılır. "Sanal" kelimesi sunucunun fiziksel bir makine değil, yazılımla oluşturulmuş bir makine olduğunu anlatır. "Özel" kelimesi ise işletim sisteminin, dosyaların ve yapılandırmanın yalnızca size ait olduğunu belirtir. Özel olması donanımın size ayrıldığı anlamına gelmez; bu ayrım aşağıdaki kaynak paylaşımı bölümünde önem kazanıyor.

VPS nasıl çalışır?

Fiziksel sunucuya kurulan sanallaştırma katmanı; işlemciyi, belleği, diski ve ağı bölerek her VPS'e sanal donanım olarak sunar. Her VPS bu sanal donanımı kendi makinesiymiş gibi kullanır.

Sanallaştırma ve izolasyon

Sanallaştırmanın merkezinde hypervisor bulunur. Hypervisor, fiziksel donanım ile sanal makineler arasında duran ve her sanal makineye işlemci zamanı, bellek ve aygıt erişimi dağıtan yazılımdır. Fiziksel makineye host (ana makine), üzerinde çalışan sanal makinelere guest (misafir) denir. Konteyner tabanlı VPS'lerde ise hypervisor yerine host çekirdeğinin izolasyon özellikleri kullanılır; bu farkı aşağıda ayrıca anlatıyoruz.

İzolasyon, bir VPS'teki süreçlerin diğer VPS'lerin belleğini, dosyalarını veya ağ trafiğini göremeyeceği anlamına gelir. Komşu VPS'lerden birinde yazılım çöktüğünde ya da biri yeniden başlatıldığında sizin sunucunuz çalışmaya devam eder. Her VPS'in ayrı IP adresi, ayrı kullanıcı hesapları ve ayrı root yetkisi vardır. Root, Linux'ta sistemdeki her dosyayı değiştirebilen ve her servisi yönetebilen en yetkili kullanıcıdır.

Kaynak paylaşımı

Bir VPS paketinde yazan "2 çekirdek, 4 GB RAM", sanal makinenin göreceği kaynak miktarıdır. Bu kaynakların fiziksel donanımda size ne kadar kesin olarak ayrıldığı ise sağlayıcının politikasına bağlıdır.

VPS tarafında birçok sağlayıcı overcommit uygular. Overcommit, bir host üzerindeki sanal makinelere toplamda fiziksel kapasiteden fazla işlemci veya bellek tahsis edilmesidir. Mantığı şudur: sanal makinelerin hepsi aynı anda tam yükte çalışmaz, boşta kalan kapasite diğerlerine kullandırılabilir. Bu model maliyeti düşürür; ancak aynı host üzerindeki birkaç VPS aynı anda yoğunlaştığında işlemci bekleme süreleri artabilir. Sektörde buna "gürültülü komşu" (noisy neighbor) etkisi denir.

VDS (Virtual Dedicated Server) ile VPS arasındaki temel fark burada ortaya çıkar. VDS'te pakette yazan çekirdek ve bellek fiziksel kapasiteden size ayrılır, yani kaynak garantilidir; VPS'te ise kaynaklar havuzdan paylaştırılabilir. İki modelin ayrıntılı karşılaştırmasını kaynak garantisi farkı yazımızda bulabilirsiniz.

Tam sanallaştırma ile konteyner tabanlı VPS farkı

VPS'ler iki farklı teknolojiyle oluşturulabilir: tam sanallaştırma ve konteyner tabanlı sanallaştırma. Hangisinin kullanıldığı, sunucuya neler kurabileceğinizi doğrudan belirler.

Tam sanallaştırmada her sanal makine kendi çekirdeğini (kernel) çalıştırır. Bu yaklaşımın en bilinen örneği KVM'dir (Kernel-based Virtual Machine). KVM, Intel VT veya AMD-V sanallaştırma uzantılarına sahip x86 donanımda çalışan, Linux çekirdeğine 2.6.20 sürümünden beri dahil olan açık kaynaklı bir tam sanallaştırma çözümüdür. Sanal makine; ağ kartı, disk ve grafik aygıtı gibi kendi sanal donanımını görür ve üzerine değiştirilmemiş Linux veya Windows kurulabilir.

Konteyner tabanlı sanallaştırmada (OpenVZ, LXC) her makine için ayrı bir çekirdek yoktur. Tüm konteynerler host'un Linux çekirdeğini paylaşır; izolasyon, çekirdeğin ad alanları (namespaces) ve kaynak grupları (cgroups) gibi özellikleriyle sağlanır. OpenVZ kendini, tek bir fiziksel sunucuda çok sayıda güvenli ve izole Linux konteyneri çalıştıran bir teknoloji olarak tanımlar. Bu yapı daha hafiftir, çünkü her makine için ayrı çekirdek ve sanal donanım çalıştırılmaz. Buna karşılık konteynerin çekirdek sürümünü siz seçemezsiniz, çekirdek modülü yükleyemezsiniz ve Windows çalıştıramazsınız.

ÖzellikTam sanallaştırma (ör. KVM)Konteyner tabanlı (OpenVZ, LXC)
ÇekirdekHer VPS'in kendi çekirdeği varHost'un çekirdeği paylaşılır
Kurulabilecek işletim sistemiLinux, Windows ve diğerleriYalnızca Linux
Çekirdek modülü ve çekirdek ayarlarıSerbestSınırlı ya da yok
Docker, WireGuard gibi çekirdek özelliği isteyen yazılımlarNormal bir sunucudaki gibi çalışırHost yapılandırmasına ve sağlayıcının izinlerine bağlı
Sanallaştırma ek yüküBiraz daha fazlaDaha az
İzolasyon seviyesiSanal donanım seviyesindeÇekirdek içinde süreç seviyesinde

Sunucunuzun hangi teknolojiyle çalıştığını öğrenmek için systemd kullanan dağıtımlarda (Ubuntu, Debian, AlmaLinux, Rocky Linux) şu komutu çalıştırabilirsiniz:

systemd-detect-virt

Çıktı kvm ise tam sanallaştırmalı bir sanal makinedesiniz; openvz veya lxc ise konteyner tabanlı bir ortamdasınız. Docker ya da VPN kurmayı planlıyorsanız bu bilgiyi satın almadan önce sağlayıcıya sormak, sonradan uyumsuzlukla uğraşmaktan çok daha kolaydır.

Linux VPS ve Windows VPS

Linux VPS, işletim sistemi olarak Ubuntu, Debian veya AlmaLinux gibi bir Linux dağıtımı çalıştırır; Windows VPS ise Windows Server çalıştırır. Seçimi çoğu zaman sunucuda çalışacak yazılım belirler.

Ubuntu, Debian ve AlmaLinux gibi dağıtımların lisans ücreti yoktur. Grafik arayüz olmadan çalıştıkları için işletim sisteminin kendi bellek ihtiyacı düşüktür ve PHP, WordPress, Laravel, Node.js, Python, MySQL, MariaDB, PostgreSQL ve Redis gibi web yazılımları Linux'ta doğal ortamındadır. Yönetim SSH üzerinden komut satırıyla ya da kurulacak bir kontrol paneliyle yapılır.

Windows VPS; ASP.NET Framework ile yazılmış uygulamalar, IIS'e bağımlı projeler, MSSQL gerektiren yazılımlar veya yalnızca Windows'ta çalışan araçlar için gerekir. Yönetim genellikle Uzak Masaüstü (RDP) ile yapılır ve Windows Server lisansı maliyete yansır. Windows ayrı bir çekirdeğe ihtiyaç duyduğu için Windows VPS yalnızca tam sanallaştırmayla mümkündür.

Bulutzone'un VPS paketleri Linux tabanlıdır. ASP.NET veya .NET Core ile geliştirilmiş siteler için Windows Server 2022 ve Plesk kullanan Windows hosting seçeneği ayrıca bulunuyor.

VPS ne işe yarar? Kullanım alanları

VPS, paylaşımlı hostingin sınırlarına takılan ama fiziksel sunucu gerektirmeyen iş yüklerinin çoğu için uygundur. Yaygın kullanım alanları şunlardır:

  • Web siteleri ve e-ticaret: WordPress, WooCommerce, Laravel veya özel PHP uygulamaları; kendi web sunucusu ve önbellek yapılandırmasıyla.
  • Birden fazla site: Ajansların veya çok markalı işletmelerin sitelerini tek sunucuda, bir kontrol paneliyle yönetmesi.
  • Uygulama ve API sunucusu: Node.js, Python (Django, FastAPI), Go veya .NET ile yazılmış, sürekli çalışan servisler.
  • Veritabanı sunucusu: Web sunucusundan ayrılmış MySQL, MariaDB veya PostgreSQL.
  • Konteyner ortamı: Docker ve Docker Compose ile çok servisli uygulamalar (tam sanallaştırmalı VPS'te).
  • VPN ve uzaktan erişim: WireGuard veya OpenVPN ile ekip için güvenli bağlantı noktası.
  • Test ve hazırlık (staging) ortamı: Güncellemeleri canlı siteyi etkilemeden denemek.
  • Otomasyon: Zamanlanmış görevler, botlar, CI/CD çalıştırıcıları ve yedek betikleri.

Bir örnek üzerinden düşünelim: Beş kurumsal WordPress sitesini ayrı paylaşımlı hosting hesaplarında tutan bir ajans; her hesap için ayrı panel, ayrı yenileme tarihi ve ayrı kaynak limitleriyle uğraşır. Bu siteleri tek bir VPS'te toplamak ortak bir PHP ve önbellek yapılandırması, tek bir yedekleme planı ve siteler arasında esnek kaynak kullanımı sağlar. Karşılığında sunucunun güncel ve güvenli tutulması ajansın işi haline gelir.

VPS, hosting, VDS ve dedicated karşılaştırması

Dört hizmet arasındaki fark, kaynakların ne kadarının size ayrıldığı ve sunucuyu ne ölçüde kontrol ettiğinizle ilgilidir. Aşağıdaki tablo genel eğilimleri gösterir; ayrıntılar sağlayıcıya göre değişir.

ÖzellikPaylaşımlı hostingVPSVDSDedicated sunucu
AltyapıTek sunucuda çok sayıda hesapPaylaşılan host üzerinde sanal makineAyrılmış kaynaklı sanal makineFiziksel sunucunun tamamı
Kaynak garantisiHesap limitleriyle sınırlıSağlayıcı politikasına bağlı, overcommit olabilirPakette yazan kaynak size ayrılırTüm donanım sizin
Root erişimiYokVarVarVar
İşletim sistemi seçimiYokVarVarVar
Sunucu yönetimiSağlayıcıMüşteri (yönetim hizmeti alınabilir)Müşteri (yönetim hizmeti alınabilir)Müşteri (yönetim hizmeti alınabilir)
MaliyetEn düşükDüşük–ortaOrtaEn yüksek
Tipik kullanımKurumsal site, blogBirden çok site, uygulama, test ortamıTutarlı performans isteyen uygulamaSürekli yüksek yük, özel donanım ihtiyacı

Özetle paylaşımlı hosting yönetim yükünü sağlayıcıya bırakır ama esnekliği sınırlar. VPS esneklik verir ve kaynak paylaşımıyla maliyeti düşük tutar. VDS aynı esnekliği garantili kaynakla sunar, dedicated sunucu ise donanımın tamamını verir. VDS kavramını ayrıntılı incelemek isterseniz VDS nedir rehberimize bakabilirsiniz.

Managed ve unmanaged VPS

Unmanaged (yönetilmeyen) VPS'te sağlayıcı sanal makineyi çalışır halde teslim eder; işletim sistemi ve üzerindeki her şey sizin sorumluluğunuzdadır. Managed (yönetilen) VPS'te güncelleme, izleme ve güvenlik gibi işlerin bir kısmını ya da tamamını sağlayıcının ekibi üstlenir.

Unmanaged modelde size kalan işler tipik olarak şunlardır: işletim sistemi ve paket güncellemeleri, güvenlik duvarı ve SSH ayarları, web sunucusu ve veritabanı yapılandırması, yedeklerin doğrulanması, disk ve servis izleme, saldırı belirtilerinin takibi. Linux'ta deneyimli bir ekip için bu olağan bir iş yüküdür. Sunucuyla ayda bir kez ilgilenebilen küçük bir işletme için ise güncellenmeyen bir sunucu ciddi risk demektir.

Bulutzone'da sunucuyla birlikte ücretsiz gelen SLA-1 Başlangıç seviyesi; işletim sistemi kurulumu, yeniden kurulum, yeniden başlatma ve şifre sıfırlama gibi temel işleri kapsar. İşletim sistemi güncellemesi, izleme ve saldırı tespiti ise SLA-2 ve SLA-3 seviyelerinde yer alır; ayrıntılar sunucu yönetimi sayfasında. Hangi modelin size uygun olduğunu değerlendirmek için yönetilen VPS ve yönetilmeyen sunucu farkını anlattığımız yazıya göz atabilirsiniz.

VPS'e nasıl bağlanılır?

Linux VPS'e SSH (Secure Shell) ile bağlanılır. SSH, sunucuya şifreli bir kanal üzerinden komut satırı erişimi sağlayan protokoldür. macOS ve Linux'ta terminalde, güncel Windows 10 ve Windows 11 sürümlerinde ise PowerShell'de SSH istemcisi hazır gelir.

Sağlayıcının ilettiği IP adresi ve root şifresiyle ilk bağlantı şöyle yapılır (örnekteki IP adresini kendi sunucunuzunkiyle değiştirin):

ssh root@203.0.113.10

İlk girişten sonra üç iş önceliklidir: şifre yerine anahtarla giriş, root yerine yetkili bir kullanıcı ve güncel bir sistem.

1. SSH anahtarı oluşturup sunucuya kopyalayın. Bu komutları kendi bilgisayarınızda çalıştırın:

ssh-keygen -t ed25519 -C "is-bilgisayari"
ssh-copy-id root@203.0.113.10

Windows'ta ssh-copy-id bulunmaz; açık anahtar dosyasının (.pub uzantılı) içeriğini sunucudaki ~/.ssh/authorized_keys dosyasına elle eklemeniz gerekir.

2. Sudo yetkili bir kullanıcı oluşturun. Ubuntu ve Debian'da yönetici grubunun adı sudo, AlmaLinux ve Rocky Linux'ta wheel'dir:

# Ubuntu / Debian
adduser deploy
usermod -aG sudo deploy

# AlmaLinux / Rocky Linux
adduser deploy
passwd deploy
usermod -aG wheel deploy

Yeni kullanıcıya da anahtarınızı ekleyin (ssh-copy-id deploy@203.0.113.10). Ardından ayrı bir terminal penceresinde bu kullanıcıyla giriş yapıp sudo -v komutunun çalıştığını doğrulayın.

3. Şifreyle girişi kapatın. /etc/ssh/sshd_config dosyasında şu satırları ayarlayın:

PermitRootLogin prohibit-password
PasswordAuthentication no

Bazı dağıtım imajlarında /etc/ssh/sshd_config.d/ klasöründeki dosyalar bu ayarları geçersiz kılabilir. Etkin değeri sudo sshd -T | grep -i passwordauthentication komutuyla kontrol edin. Sonra servisi yeniden başlatın: Ubuntu ve Debian'da sudo systemctl restart ssh, AlmaLinux ve Rocky Linux'ta sudo systemctl restart sshd.

Uyarı: Anahtarla girişin çalıştığını ayrı bir oturumda doğrulamadan mevcut SSH oturumunuzu kapatmayın. Hatalı bir ayar sunucuya erişiminizi kesebilir; bu durumda sağlayıcının konsol erişimine veya işletim sisteminin yeniden kurulmasına ihtiyaç duyarsınız.

Son olarak sistemi güncelleyin: Ubuntu ve Debian'da sudo apt update && sudo apt upgrade, AlmaLinux ve Rocky Linux'ta sudo dnf upgrade --refresh. Komut satırı yerine arayüz tercih ediyorsanız bir kontrol paneli kurmak da seçenektir; Bulutzone VPS paketlerinde kontrol paneli ücretsiz sunuluyor.

VPS seçerken nelere bakılır?

VPS seçerken yalnızca çekirdek ve RAM sayısına değil, bu kaynakların nasıl sunulduğuna ve sunucuyu kimin yöneteceğine de bakmak gerekir.

  • Sanallaştırma türü: Docker, VPN veya çekirdek ayarı gerekiyorsa tam sanallaştırmalı bir VPS arayın.
  • Kaynak politikası: Kaynakların paylaşımlı mı garantili mi olduğunu sorun. Tutarlı performans kritikse VDS'i değerlendirin.
  • İşlemci: Çekirdek sayısı kadar işlemcinin modeli ve nesli de önemlidir; "2 çekirdek" farklı donanımlarda farklı sonuç verir.
  • Disk türü: NVMe SSD, SATA SSD'ye göre daha düşük gecikme ve daha yüksek eşzamanlı işlem kapasitesi sunar. Farkı en çok veritabanı ağırlıklı işlerde hissedersiniz.
  • RAM: Web sunucusu, PHP süreçleri, veritabanı önbelleği ve işletim sisteminin toplam ihtiyacını hesaplayın. RAM yetmediğinde sunucu diske takas (swap) yapar ve belirgin şekilde yavaşlar.
  • Ağ ve trafik: Port hızı, trafik kotası ve IPv4 adresi sayısı.
  • Yedekleme: Yedeğin pakete dahil olup olmadığı, ne sıklıkla alındığı ve geri dönüşün nasıl yapıldığı.
  • Lokasyon: Ziyaretçileriniz Türkiye'deyse sunucunun da Türkiye'de olması ağ gecikmesini azaltır.
  • Yönetim: Sunucuyu kendiniz mi yöneteceksiniz, yoksa bir yönetim hizmeti mi alacaksınız?

Bulutzone'un Linux VPS paketleri Intel Xeon Platinum 8260 tabanlı host'larda, DDR4 2933 MHz bellek ve Enterprise NVMe SSD ile çalışır; 1 Gbit/sn port, sınırsız trafik ve ücretsiz kontrol paneli içerir. Altı paketin tipik kullanım senaryolarıyla eşleşmesi şöyle özetlenebilir:

PaketÇekirdekRAMNVMe diskTipik senaryo
Essential12 GB20 GBTek küçük site, VPN, test ortamı
Advanced24 GB40 GBBirkaç WordPress sitesi, küçük bir API
Professional26 GB60 GBBelleği yoğun kullanan PHP uygulamaları, önbellekli siteler
Business48 GB80 GBOrta trafikli e-ticaret, çok siteli ajans sunucusu
Corporate410 GB100 GBUygulama ve veritabanını aynı sunucuda tutan projeler
Enterprise416 GB120 GBBüyük veritabanı önbelleği, arama motoru gibi bellek isteyen servisler

Bu eşleşmeler bir başlangıç noktasıdır; kesin ihtiyacı sitenizin trafiği, eklenti sayısı ve veritabanı büyüklüğü belirler. Mevcut hostinginizde kaynak kullanımını birkaç hafta izlemek, doğru paketi seçmenin en güvenilir yoludur.

Sık sorulan sorular

VPS ile hosting arasındaki fark nedir?

Paylaşımlı hostingte işletim sistemi ve sunucu yazılımları sağlayıcıya aittir; siz yalnızca size ayrılan alanı yönetirsiniz. VPS'te kendi işletim sisteminiz ve root erişiminiz olur, istediğiniz yazılımı kurabilirsiniz. Karşılığında sunucunun güncelliği ve güvenliği size geçer.

VPS'e web sitesi kurulur mu?

Evet. Bir web sunucusu (Nginx, Apache veya LiteSpeed), PHP ve bir veritabanı kurarak ya da bir kontrol paneli yükleyerek birden fazla site barındırabilirsiniz. Kontrol paneli kullanmak alan adı ekleme, SSL ve e-posta işlerini arayüzden yapmanızı sağlar.

VPS güvenli mi?

Sanallaştırma katmanı VPS'leri birbirinden yalıtır, ancak sunucunun içindeki güvenlik yöneticinin elindedir. Güncellemeleri düzenli yapmak, SSH girişini anahtarla sınırlamak, güvenlik duvarında yalnızca gereken portları açmak ve yedekleri test etmek temel adımlardır. Ayrıntılar için Linux sunucu güvenliği rehberimize bakabilirsiniz.

VPS'te Docker çalışır mı?

KVM gibi tam sanallaştırmalı bir VPS'te Docker, normal bir Linux sunucusunda olduğu gibi çalışır. Konteyner tabanlı VPS'lerde ise sonuç host çekirdeğine ve sağlayıcının izinlerine bağlıdır. Docker kullanacaksanız sanallaştırma türünü satın almadan önce sorun.

Projenizin ihtiyacını netleştirdiyseniz çekirdek, RAM ve NVMe disk kapasitelerini karşılaştırmak için Linux VPS paketlerini inceleyebilirsiniz.

Kaynaklar

Linux ve VPS konusundaki hizmetlerimiz için Linux VPS paketleri sayfasına göz atabilirsiniz.

İncele

İlgili rehberler