Virtueller Rechner

Aus Mikiwiki
Zur Navigation springen Zur Suche springen

Ein virtueller Rechner (auch: Virtueller Host, Virtueller Server; engl. virtual computer, virtual host, virtual server) ist ein System, das sich annähernd wie ein physikalischer Rechner verhält, ohne dass ihm jedoch tatsächlich die zugrundeliegende Hardware ausschliesslich zur Verfügung steht. Virtuelle Rechner lassen sich in zwei Gruppen einteilen.


Siehe auch: Virtuelle Maschine, Virtueller Server

Virtueller Rechner auf Grundlage eines Betriebssystems

Ein Gastgeber-Betriebssystem (engl. host) beherbergt mehrere Gast-Betriebssystem-Umgebungen (engl. guest), die gegeneinander abgeschottet sind und nur über das Gastgeber-Betriebssystem auf die Hardware zugreifen dürfen.

Virtualisierung auf Grundlage des Betriebssystems gibt es auf unterschiedlichen Ebenen.

  • Erweiterte chroot-Umgebung des Gastgeber-Systems. Direkter Zugriff auf die System-Hardware ist nicht möglich. Beispiele: BSD Jails, Linux-Vserver
  • Gast-Systeme benutzen dasselbe Betriebssystem wie der Gastgeber und greifen über Treiber des Gastgeber-Systems auf die Hardware zu. Beispiel: Virtuozzo
  • Die Gast-Systeme sind vollständige Betriebssysteme mit eigenem (oder gemeinsamem, aber geschütztem) Kernel, eigenen Treibern und eigener Konfiguration. Beispiele: UML, Xen

Virtueller Rechner auf Grundlage einer Emulation oder Virtualisierung

Das Gastgeber-System emuliert alle Systemaufrufe auf Hardware-Ebene oder emuliert eine vollständige Hardwarearchitektur (einschliesslich Prozessor, Speicherzugriffen usw.). Ein klassischer Emulator ist aus Gastgebersicht meist ein ganz normales Programm; so ist es etwa möglich, auf PCs Software für Palm Handhelds zu testen, alte C64-Software zu benutzen, oder ein vollständiges x86-Microsoft Windows-System auf einem Powerpc-Apple- oder HP-Unix-Rechner laufen zu lassen.

Sollen "nur" andere Betriebssysteme (die grundsätzlich für dieselbe Hardwarearchitektur geeignet sind) oder Instanzen auf einer physischen Maschine zum Laufen gebracht werden, bietet sich im Gegensatz zur Emulation die Virtualisierung an. Beispiele: Virtualpc, Vmware

Die Grenzen zwischen Virtualisierung und Emulation sind fliessend, zumal zur Zeit auch Mainstream-Prozessoren um Virtualisierunghilfen ergänzt werden (z. B. Intel VT und AMD-V) oder verschiedene Lösungen Programmcode des Gastsystems vor der Ausführung (teilweise) in für das Gast-System geeigneten Code umformen.

Hosting

Zur Auswahl unter den Angeboten für virtuelle Rechner lohnt es sich, diese miteinander zu vergleichen... Die folgende Liste diente meinen ganz privaten Zwecken. Meine Wahl unter den aufgeführten Anbietern in der Schweiz fiel damals übrigens auf Nine - eine Entscheidung, die ich zu keinem Zeitpunkt bereut habe.

Anbieter Hostorama Nine Genotec Hostpoint Softronics Silverbox Swissquake Xiror
Stand 11.05.2007 16.06.2007 16.06.2007 16.06.2007 16.06.2007 16.06.2007 28.07.2007 16.06.2007
Angebot vServer VServer VDS(Pro) SH Professional Virtual Server VPS.Expert VServer Basic vServer Bronze
Angebot 168.00 Fr. 300.-- Fr. 238.80 Fr. 298.80 Fr. 300.-- Fr. 238.80 Fr. 228.-- 168.-- Fr.
Speicherplatz 14 GB 5 GB 5 GB 20 GB 10 GB 5 GB 10 GB 1.5 GB
RAM (garantiert) 128 MB 256 MB 256 MB 128 MB
Kontrollpanel Virtuozzo --- Virtuozzo Plesk Webmin
Betriebssystem SUSE Linux 9.3 Ubuntu 7.04 Feisty Fawn usw. SUSE Linux 10.1
Ubuntu 6.10 Edgy Eft usw.
Red Hat Linux Debian usw. SUSE Linux 10.0
SSH-Zugang Root Root Root Root Root Root Root Root
PHP 4.3.10 5.2.1 5.1.2 4.4.0
Datenverkehr 250 GB 50 GB 200 GB unlimitiert 250 MB 100 GB 250 GB 25 GB
Datenstatistik Ja Ja Ja
IP-Adressen 1 1 1 1 1 1 1 1
Domain inkl. Ja
Subdomains 10 --- 10

Zur Absicherung eines virtuellen Rechners können folgenden Punkte ratsam sein:

  • Kernel mit grsecurity patchen
  • SSH absichern durch Key-Authentifizierung
  • SSH root-Login deaktivieren
  • Nur ssh2 erlauben
  • Fail2ban installieren, alternativ SSH durch Portknocker schützen
  • Apache in chroot stecken
  • php suhosin patch installieren
  • mod_evasive installieren
  • mod_security installieren
  • php disable_functions anpassen
  • Mysql nur lokale Verbindungen zulassen
  • logcheck-Skript installieren
  • Logs auf zweiten Server auslagern
  • Regelmässige Datensicherung
  • Nur Dienste laufen lassen, die wirklich benötigt werden
  • iptables entsprechend konfigurieren

Weblinks

Vorlage:dewi