Nächste Seite: Anwendung der Virtualisierung
Aufwärts: Virtuelle Maschinen
Vorherige Seite: Virtuelle Maschinen
Inhalt
Plattform Virtualisierung wird erzeugt indem auf einem Host System eine
Steuer-Software gestartet wird, die ein Rechnersystem simuliert
(=Virtual Machine) auf der eine Guest Software abläuft. Die
Guest Software ist meistens ein Betriebssystem.
Es gibt eine Reihe verschiedener Techniken zur Realisierung virtueller
Maschinen:
- Emulation oder Simulation
- Die Virtuelle Maschine simuliert die Hardware
damit ein unmodifizierter Guest (für eine möglicherweise andere CPU)
darauf ablaufen kann. Diese Technik wurde oft verwendet um die Software
Erstellung zu ermöglichen bevor die Prozessoren verfügbar waren. Wichtige
Vertreter solcher Programme sind Bochs oder QEMU.
- Native Virtualisierung und volle Virtualisierung
- Die Virtuelle Maschine
simuliert genug Hardware um einen unmodifizierten Guest ablaufen zu
lassen. Die simulierte CPU stimmt mit der Host-CPU überein. Die Simulation
befasst sich vor allem mit der Emulation der Ring 0 Instruktionen. Wichtige
Vertreter dieser Software sind: VirtualBox, Virtual PC, VMware Workstation,
VMware Server, Win4Lin.
- Hardware unterstützte Virtualisierung
- Die einzelne Virtuelle Maschine
hat die eigene Hardware und läuft in völliger Isolation. Die Anzahl
virtueller Maschinen ist nur von der Hardware des Host Systems
begrenzt. Seit 2006 haben gewisse Intel Prozessoren die VT und
AMD Prozessoren die Pacifica Erweiterung damit ist die Hardware
Virtualisierung möglich. Wichtige Vertreter dieser Software sind: XEN, KVM,
VMWARE Fusion, Parallels Workstation.
- Paravirtualisierung
- Hier wird keine Hardware simuliert. Das Host
Betriebssystem stellt ein spezielles Betriebssystem-API zur Verfügung. Die
Betriebssysteme müssen auf dieses API angepasst werden. Wichtige Vertreter
dieser Software sind: XEN, z/VM.
- Virtualisierung auf Betriebssystem Ebene
- Dabei sind mehrere virtuelle
Server unter dem gleichen Betriebssystem möglich. Die einzelnen virtuellen
Server laufen in einer isolierten Umgebung. Wichtige Vertreter dieser
Software sind: OpenVZ, Virtuozzo, Linux-Vserver, FreeBSD Jails.
- Anwendungs Virtualisierung
- Anwendungsprogramme die in einer eigenen
Umgebung ablaufen (mit eigenen Betriebsmitteln). Ein Beispiel dafür ist die
JVM.
- Kapselung von Anwendungen
- Wenn es nur darum geht bestimmte Anwendungen
gegen unerwünschtes Verhalten abzusichern so kann anstatt einer
Virtualisierungs-Software auch zum Beispiel AppArmor verwendet
werden. AppArmor ist in SUSE Linux enthalten und ist ein
Sicherheitswerkzeug, entwickelt um Sie mit einem einfach zu benutzenden,
starken Sicherheitsrahmenwerk für ihre Anwendungen zu versorgen. AppArmor
schützt das System und die Anwendungen aktiv vor externen und internen
Bedrohungen, sogar vor Zero-Day-Attacken, indem es ein gutartiges
Programmverhalten erzwingt und die Ausnutzung unbekannter
Programmschlupflöcher verhindert. AppArmor Sicherheitsrichtlinien, auch
Profile genannt, definieren komplett, auf welche Systemmittel eine
Anwendung zugreifen darf und welche Rechte sie dabei besitzt. Einige
Standardprofile sind schon in AppArmor enthalten und benutzen eine
Kombination aus fortgeschrittenen statischen Analysen und lernbasierten
Werkzeugen. AppArmor-Profile können gerade für sehr komplexe Anwendungen
innerhalb weniger Stunden erfolgreich erstellt werden.
Nächste Seite: Anwendung der Virtualisierung
Aufwärts: Virtuelle Maschinen
Vorherige Seite: Virtuelle Maschinen
Inhalt
Hans-Peter Oser
2007-10-30