Linux-VServer

Linux-VServer
Utvecklare Herbert Pötzl (Community Project)
Stabil frisättning
2.6.22.19-vs2.2.0.7 / 14 mars 2008 ; för 14 år sedan ( 2008-03-14 )
Förhandsgranska release
4.9.159-vs2.3.9.8 / 5 oktober 2019 ; för 3 år sedan ( 2019-10-05 )
Förvar
Operativ system Linux
Plattform x86 , SPARC/64 , PA-RISC , S390/x , MIPS/64 , ARM , PowerPC/64 , Itanium
Typ Virtualisering på OS-nivå
Licens GNU GPL v.2
Hemsida linux-vserver .org

Linux-VServer är en virtuell privat serverimplementering som skapades genom att lägga till virtualiseringsfunktioner på operativsystemnivå till Linux-kärnan . Den är utvecklad och distribuerad som programvara med öppen källkod .

Detaljer

Projektet startades av Jacques Gélinas. Det underhålls nu av Herbert Pötzl. Det är inte relaterat till Linux Virtual Server -projektet, som implementerar nätverksbelastningsbalansering .

Linux-VServer är en fängelsemekanism genom att den kan användas för att på ett säkert sätt partitionera resurser på ett datorsystem (såsom filsystemet, CPU -tid, nätverksadresser och minne) på ett sådant sätt att processer inte kan montera en denial-of-service attackera allt utanför deras partition.

Varje partition kallas en säkerhetskontext , och det virtualiserade systemet inom den är den virtuella privata servern . Ett chroot -liknande verktyg för att gå ner i säkerhetssammanhang tillhandahålls. Att starta upp en virtuell privat server är då helt enkelt en fråga om att kickstarta init i ett nytt säkerhetssammanhang; på samma sätt innebär att stänga av det helt enkelt att döda alla processer med det säkerhetssammanhanget. Kontexterna i sig är robusta nog att starta många Linux-distributioner omodifierade, inklusive Debian och Fedora .

Virtuella privata servrar används ofta i webbhotell , där de är användbara för att separera kundkonton, slå samman resurser och för att förhindra eventuella säkerhetsintrång. För att spara utrymme på sådana installationer kan varje virtuell servers filsystem skapas som ett träd av kopiera-på-skriv- hårda länkar till ett "mall"-filsystem. Den hårda länken är markerad med ett speciellt filsystemattribut och när den ändras, ersätts den säkert och transparent med en riktig kopia av filen.

Linux-VServer tillhandahåller två grenar, stabil (2.2.x) och devel (2.3.x) för 2.6-seriens kärnor och en enda stabil gren för 2.4-serien. En separat stabil gren som integrerar grsecurity patch-set är också tillgänglig.

Fördelar

  • Virtuella servrar delar samma systemanropsgränssnitt och har inga emuleringskostnader .
  • Virtuella servrar behöver inte backas upp av ogenomskinliga diskavbildningar , men kan dela ett gemensamt filsystem och gemensamma uppsättningar filer (genom kopiera-på-skriv-hårda länkar). Detta gör det enklare att säkerhetskopiera ett system och att samla diskutrymme mellan virtuella servrar.
  • Processer inom den virtuella servern körs som vanliga processer på värdsystemet. Detta är något mer minneseffektivt och I/O-effektivt än emulering av hela systemet, även om minnesballonger och moderna virtuella datorer gör det möjligt att returnera oanvänt minne och dela diskcache med värden och andra virtuella servrar.
  • Processer inom den virtuella servern köas på samma schemaläggare som på värden, vilket gör att gästens processer kan köras samtidigt på SMP- system. Detta är inte trivialt att implementera med emulering av hela systemet.
  • Nätverk är baserat på isolering snarare än virtualisering, så det finns inga extra kostnader för paket.
  • Mindre plan för säkerhetsbuggar. Endast en kärna med liten extra kodbas jämfört med 2+ kärnor och stora gränssnitt mellan dem.
  • Rika Linux-schemaläggningsfunktioner som prioriteringar i realtid.

Nackdelar

  • Kräver att värdkärnan korrigeras.
  • Ingen klustrings- eller processmigreringsmöjlighet ingår, så värdkärnan och värddatorn är fortfarande en enda felpunkt för alla virtuella servrar.
  • Nätverk bygger på isolering, inte virtualisering. Detta förhindrar varje virtuell server från att skapa sin egen interna routing eller brandväggskonfiguration.
  • Vissa systemanrop (mest hårdvarurelaterade: t.ex. realtidsklocka ) och delar av filsystemen /proc och /sys lämnas opirtualiserade.
  • Tillåter inte att disk I/O-bandbredd allokeras på en per-virtuell serverbasis.

Se även

externa länkar