Aufbau einer Virtualisierten Serverinfrastruktur in einem Rechenzentrum
In dieser Tutorial-Serie werde ich die Planung und Umsetzung einer umfassenden Serverinfrastruktur auf einem gemieteten Root-Server in einem Rechenzentrum beschreiben. Diese Infrastruktur wird vollständig virtualisiert und beherbergt mehrere wichtige Anwendungen und Dienste. Wir werden die folgenden Technologien und Anwendungen integrieren: Proxmox, OPNsense, Omada, Bitwarden, TrueNAS SCALE, Rocket.Chat, Nginx, NetBox, KNX Virtualisierung und WireGuard. Außerdem werde ich erläutern, wie Bitwarden und Rocket.Chat über einen Reverse Proxy und die feste öffentliche IP-Adresse öffentlich zugänglich gemacht werden. Für die Zertifizierunge des https nutzen wir Zertifikate von Let’s encrypt. Der Einsatz von Shinobi für Videoüberwachung wird in diesem Szenario jedoch nicht empfohlen. In weiteren Tutorials werde ich die Möglichkeit zur Hochverfügbarkeit (high availability) kurz HA aufgezeigt. Dadurch hättet ihr unter anderem auch die Möglichkeit die beiden Scenario, lokale Server und Server im RZ zu kombinieren und die Standorte zu diversifizieren.
Voraussetzungen für einen Root Server
- Gemieteter Server Root oder V. Alternativ ein gemietetes Rack mit eigener Hardware.
- Öffenliche IP (meistens können weitere Adressen dazugebucht werden)
- Eigene Domain (Eigene registriert Domain oder mit einem DynDNS Service zum Beispiel mit IPV64.net)
Struktureller Aufbau

Vorteile der Variante mit dem Rechenzentrum
Die Wahl eines gemieteten Root-Servers in einem Rechenzentrum bietet zahlreiche Vorteile im Vergleich zu einer Serverinfrastruktur im Heimnetzwerk:
- Stromversorgung und Ausfallsicherheit: Rechenzentren verfügen über redundante Stromversorgungssysteme und Notstromaggregate, die eine kontinuierliche Verfügbarkeit sicherstellen. Das bedeutet, dass eure Server auch bei Stromausfällen weiterhin betrieben werden können.
- Hohe Verfügbarkeit und Zuverlässigkeit: Die Infrastruktur in einem Rechenzentrum ist so konzipiert, dass sie maximale Betriebszeit bietet. Dies wird durch redundante Netzwerkverbindungen, unterbrechungsfreie Stromversorgungen (USVs) und fortlaufende Überwachung gewährleistet.
- Schnelle und stabile Internetverbindung: Rechenzentren bieten sehr schnelle und stabile Internetverbindungen mit hohen Bandbreiten, was besonders wichtig ist, wenn auf eure Dienste aus dem Internet zugegriffen wird.
- Physische Sicherheit: Rechenzentren verfügen über umfassende physische Sicherheitsmaßnahmen wie Zugangskontrollen, Videoüberwachung und Wachdienste, um eure Hardware vor unbefugtem Zugriff zu schützen.
- Skalierbarkeit: Mit einem gemieteten Root-Server im Rechenzentrum könnt ihr eure Infrastruktur problemlos skalieren. Bei steigenden Anforderungen könnt ihr einfach zusätzliche Ressourcen oder weitere Server hinzufügen, ohne physische Hardware kaufen und installieren zu müssen.
- Kostenersparnis: Obwohl die monatlichen Kosten für das Mieten eines Servers im Rechenzentrum höher sein können als der Betrieb eines Heimservers, entfallen die Kosten für Strom, Klimatisierung und Wartung, die bei einem Heimserver anfallen würden. Ja, Festplatten und Netzteile geben auch mal den Geist auf.
Die Wahl des Richtigen Server Standortes
Lese hierzu bitte den Beitrag Wie sicher ist dein Serverstandort? – Warum der Standort über deine Datensouveränität entscheidet.
Auswahl der Hardware
Bevor wir in die Software- und Konfigurationsdetails eintauchen, ist die Auswahl des richtigen gemieteten Servers entscheidend für den reibungslosen Betrieb eurer virtualisierten Infrastruktur. Hier sind einige Überlegungen, die ihr bei der Auswahl eures Servers anstellen solltet:
- Leistungsstarke Server-Hardware: Wählt einen Root-Server mit ausreichenden CPU-Kernen und RAM. Ein Intel Xeon oder AMD Ryzen-Prozessor mit mindestens 8 Kernen und 32 GB RAM ist für unseren Anwendungsfall geeignet.
- Speicher: SSDs oder NVMe-Laufwerke für schnelle I/O-Operationen und Datenspeicherung. RAID-Konfigurationen (z.B. RAID 1 oder RAID 10) für Datensicherheit und -redundanz. Die Größe hängt ganz von den Nutzeranforderungen ab. Hier verwenden wir einen 512GB SSD Speicher.
- Netzwerk: Zuverlässige Netzwerkkarten mit mindestens 1 Gbps, idealerweise 10 Gbps, für schnelle Netzwerkverbindungen.
- Stromversorgung und Ausfallsicherheit: Im Rechenzentrum ist die Stromversorgung durch USV-Systeme und Notstromaggregate gesichert, und es gibt eine redundante Internetanbindung, die eine hohe Ausfallsicherheit gewährleistet.
Schritt-für-Schritt-Anleitung: Serverinfrastruktur einrichten
In den folgenden Punkten findest du eine Übersicht der wichtigsten Schritte. Jeder dieser Punkte wird in einem separaten Beitrag ausführlich behandelt.
1. Virtualisierung mit Proxmox
Proxmox ist eine Open-Source-Virtualisierungsplattform, die KVM und LXC unterstützt. Es ermöglicht die einfache Verwaltung von virtuellen Maschinen und Containern, was ideal für eine Infrastruktur im Rechenzentrum ist.
- Installation: Proxmox auf dem gemieteten Root-Server installieren.
- Netzwerk-Setup: Ein virtuelles Netzwerk einrichten, das alle VMs und Container verbindet.
- ip tables: Einrichten der ip tables zum durchreichen an die Firewall (OPNsense).
2. Netzwerksicherheit und Management mit OPNsense
OPNsense ist eine Open-Source-Firewall und Router-Distribution basierend auf FreeBSD. Es bietet umfangreiche Sicherheits- und Managementfunktionen.
- Installation: OPNsense installieren.
- Firewall und Routing: OPNsense als zentrale Firewall und Router konfigurieren.
- VPN mit WireGuard: Einrichten eines WireGuard VPN-Servers für den sicheren Fernzugriff auf interne Dienste.
3. Netzwerkmanagement mit Omada
Omada ist eine Netzwerklösung von TP-Link für die Verwaltung von Switches, Access Points und Routern.
- Controller: Omada Controller auf einer VM installieren und konfigurieren.
- Netzwerkgeräte: Alle TP-Link Geräte über Omada verwalten.
4. Speicherlösung mit TrueNAS SCALE
TrueNAS SCALE bietet leistungsfähige Speicherlösungen mit ZFS, die für Netzwerkspeicher (NAS) und Datenmanagement genutzt werden können.
- Installation und Setup: TrueNAS SCALE als VM installieren und ein ZFS-Pool einrichten.
- Freigaben: Netzwerkfreigaben (SMB, NFS) für Datenzugriff konfigurieren.
5. Sicherheitslösung mit Bitwarden
Bitwarden ist ein Open-Source-Passwortmanager.
- Installation: Bitwarden als Docker-Container auf Proxmox hosten.
- Zugriff: Bitwarden über einen Nginx-Reverse-Proxy öffentlich zugänglich machen.
6. Teamkommunikation mit Matrixchat
Matrixchat ist eine Open-Source-Teamkommunikationsplattform.
- Installation: Matrixchat als LXC-Container auf Proxmox bereitstellen.
- Zugriff: Matrixchat über einen Nginx-Reverse-Proxy öffentlich zugänglich machen.
7. Web- und Reverse-Proxy mit Nginx
Nginx dient als Reverse Proxy und Webserver.
- Installation: Nginx als CLI oder GUI auf Proxmox installieren.
- Konfiguration: Nginx für den Reverse Proxy einrichten, um Bitwarden und Rocket.Chat öffentlich zugänglich zu machen.
- SSL: SSL-Zertifikate einrichten (z.B. Let’s Encrypt) für sichere Verbindungen.
8. Netzwerkdokumentation mit NetBox
NetBox ist eine Open-Source-Anwendung für Netzwerkinventar- und Datenzentrumsmanagement.
- Installation: NetBox als VM oder Docker-Container auf Proxmox bereitstellen.
- Dokumentation: Netzwerkgeräte, IP-Adressen und physische Standorte dokumentieren.
9. Heimautomation mit KNX Virtualisierung
KNX ist ein Standard für die Heim- und Gebäudeautomation.
- KNX Virtualisierung: Virtuelle KNX-Geräte in einer VM auf Proxmox betreiben.
- Integration: KNX-Systeme mit anderen Heimautomationslösungen integrieren.
10. Zugriff und Management
Ein zentraler Punkt für die sichere Verwaltung und den Zugriff auf die Infrastruktur.
- DynDNS mit ipv64.net: DynDNS-Dienst nutzen, um die IP des gemieteten Servers dynamisch zu aktualisieren.
- VPN-Zugriff: Sicherer Zugriff auf interne Dienste über WireGuard VPN in OPNsense.
- Reverse Proxy: Bitwarden und Rocket.Chat über Nginx und DynDNS-Dienst öffentlich zugänglich machen.
11. Helpdesk und Ticketing mit Zammad
Zammad ist ein Open-Source-Helpdesk- und Ticketing-System, das bei der Verwaltung von Supportanfragen hilft.
- Installation: Zammad als Docker-Container oder VM auf Proxmox bereitstellen.
- Zugriff: Zammad über einen Nginx-Reverse-Proxy öffentlich zugänglich machen.
- Konfiguration: Benutzer, Rollen und Ticketing-Workflows einrichten.
12. Fernwartung mit RustDesk
RustDesk ist eine Open-Source-Fernwartungslösung als Alternative zu TeamViewer.
- Installation Server: RustDesk-Server als Docker-Container oder VM auf Proxmox einrichten.
- Installation Clinet: RustDesk-Client auf Windows.
- Installation Clinet: RustDesk-Client auf Linux.
- Zugriff: Ermöglicht sicheren Remote-Desktop-Zugriff auf interne Systeme.
- Vorteil: Datenschutzfreundlich, da die Infrastruktur selbst gehostet wird.
Warum Videoüberwachung auf einem gemieteten Server nicht sinnvoll ist
Shinobi ist ein Open-Source-Videomanagementsystem für IP-Kameras, das jedoch für den Einsatz auf einem gemieteten Root-Server in einem Rechenzentrum nicht geeignet ist. Hier sind die Gründe:
- Hohe Bandbreitenanforderungen: Der kontinuierliche Videostream von mehreren Kameras kann erheblich Bandbreite beanspruchen. Die meisten Rechenzentren bieten begrenzte oder teure Bandbreitenpakete, was die Kosten in die Höhe treiben kann.
- Latenz und Datenschutz: Das Streaming von Videoüberwachungskameras zu einem externen Server kann Latenzprobleme verursachen und birgt Datenschutzrisiken, da die Daten über das Internet übertragen werden müssen.
- Lokale Netzwerkverbindung: Videoüberwachungssysteme funktionieren am besten in einem lokalen Netzwerk, wo die Kameras und der Server physisch nahe beieinander sind, um eine zuverlässige und schnelle Verbindung zu gewährleisten.
Diese Infrastruktur ermöglicht eine umfassende, flexible und sichere Serverumgebung im Rechenzentrum. Durch die Virtualisierung mit Proxmox und die Integration von Sicherheitslösungen wie OPNsense und WireGuard, sowie die Nutzung von Omada für das Netzwerkmanagement, TrueNAS SCALE für Speicherlösungen und diverse Anwendungen für spezifische Anforderungen, wird eine robuste und skalierbare Serverlösung geschaffen. Die öffentlichen Zugänge zu Bitwarden und Rocket.Chat werden durch Nginx und DynDNS sicher und einfach realisiert.