====== Enterprise Backup mit BackupPC ====== ====== Teil 1 – Umfeld und Ablauf ====== ====== Projektorganisation und Aufgabenstellung ====== ===== Personen und Adressen ===== ===== Aufgabestellung ===== ===== Titel der Arbeit ===== Enterprise Backup mit BackupPC ===== Ausgangslage ===== In der Rafisa Informatik GmbH werden zurzeit 86 Lernende der Fachrichtungen Applikationsentwicklung, ICT-Fachmann/Fachfrau, Systemtechnik und Betriebsinformatik sowie Plattformentwicklung zu InformatikerInnen EFZ ausgebildet. Neben dem regulären Ausbildungsbetrieb bietet die Rafisa auch Eignungsabklärungen, Arbeitstrainings, Vorbereitungen für eine Informatik-Ausbildung sowie Bewerbungs- und Job-Coachings an. Die IT-Infrastruktur der Rafisa wird zusammen mit den Lernenden stetig weiterentwickelt und den neuen technologischen und Sicherheits-Anforderungen angepasst. Als Backup-Lösung wurden bisher Windows-Server-Backup und verschiedene bash-basierte Skripts eingesetzt. Mit wachsender Heterogenität der IT-Infrastruktur entsteht in der Rafisa der Bedarf nach einer komplexeren Backup-Lösung. In der vorliegenden IPA sollen die Grundlagen für die Einführung der Open Source Backup-Lösung BackupPC erarbeitet werden. Detaillierte Aufgabenstellung ===== 1. Ziel des zu realisierenden Systems ===== Das Ziel des Projektes besteht im Aufbau eines Backup-Systems in einer virtuellen Testumgebung auf der Basis der Backup-Suite "BackupPC". BackupPC stellt Backuparten über die Protokolle rsync, rsyncd, smb, ftp, tar und archive zur Verfügung. Zudem lassen sich vor und nach den Backups Pre- und Post-Backupscripts ausführen. Das System soll folgende Backup-Anforderungen abdecken: * Backup der Active Directory auf einem Domain Controller * Backup des Home-Verzeichnisses auf einem Windows-Fileserver * Backup eines Linux-Datenbankservers mit MariaDB (MySQL) * Backup des Konfigurations-Verzeichnisses des Datenbank-Servers (/etc) * Backup eines Proxmox-VM-Images * Backup der Switch-Konfiguration * Backup der Firewall-Konfiguration Vom Einrichten des Backup-Jobs bis zum Ende der 10 tägigen IPA gelten eine RPO sowie eine RTO von 24 Stunden. Zudem ist ein Script zu erstellen, das den Admin des Systems nach dem Push-Prinzip über die Resultate der Backup-Versuche informiert. ===== 2. Anforderungen ===== ==== 2.1. Anforderungen an die Testumgebung ==== === Netzwerk === In einer zur Verfügung gestellten GNS3-Umgebung soll ein Test-Netzwerk eingerichtet werden. Das Netzwerkdesign soll sich bezüglich Adressierung, zu realisierende VLAN und Zugriffsberechtigungen sowie Namenskonzept an den Firmenstandards orientieren, muss aber für die Testumgebung entsprechend angepasst werden. Es sind nur die für die Zielerreichung notwendigen VLAN einzurichten, die Systeme sind den korrekten VLAN zuzuordnen. Das Testnetzwerk ist in einem Netzwerkdiagramm zu dokumentieren: * VLAN und Subnetz-Adressierung sind gemäss Firmenstandards eingerichtet * Alle benötigten Network-Services sind gemäss eigener Planung eingerichtet * Das Testnetzwerk ist in einem Netzwerkdiagramm dokumentiert * Die Schnittstellen der GNS3-Umgebung zur Systemumgebung sind bekannt und dokumentiert * Der Zugriff auf die GNS3-Umgebung ist möglichst effizient organisiert (Copy-Paste zwischen den Systemen möglich, optimaler Einsatz der virtuellen Konsolen) === Hosts === Für alle einzurichtenden Hosts gelten folgende Anforderungen * Die eingesetzten virtuellen Ressourcen (HD, CPU, RAM) sind als Gegenstand der Planung zu begründen * Die IP-Adressierung der Systeme erfolgt gemäss Firmenstandards * Die Hostnames aller Systeme sind gemäss Firmenstandard vergeben und können korrekt aufgelöst werden * Die administrativen Zugänge zu den Servern und den Netzwerkgeräten sind abgesichert == Windows Domain Controller == Es ist eine Basisinstallation des Windows 2019 Servers durchzuführen. Auf dem Server ist ein Active-Directory-Service einzurichten und der Server zum Domain Controller hochzustufen. Die AD-Struktur soll sich an den Firmenstandards orientieren. Es ist ein Testuser anzulegen, das Heimverzeichnis ist gemäss Firmenstandards einzurichten, freizugeben und mit Testdaten zu versehen. == Proxmox VE-Plattform == Es soll die aktuelle stabile Proxmox-VE Plattform eingerichtet werden. Als VM für das Testing des Image-Backups ist ein Linux zu installieren. Die Auswahl der Distribution ist als Gegenstand der Planung zu begründen. == Linux Datenbankserver == Als Datenbankserver soll ein Debian Linux in der Version 11 mit der aktuellen Version von MariaDB installiert werden. Es sind mehrere Testdatenbanken anzulegen. == Cisco Switch == Für den Cisco Switch ist das bestehende Cisco-Switch-Template zu verwenden. Alle geplanten VLAN sind eingerichtet. Der Switch verfügt über einen administrativen Zugang im entsprechenden VLAN == pfSense Firewall == Für die pfSense Firewall ist das bestehende pfSense-Template zu verwenden. Alle geplanten VLAN sind eingerichtet. Die FW verfügt über einen administrativen Zugang im entsprechenden VLAN. Alle FW-Rules sind gemäss Firmenstandard eingerichtet. ==== 2.2. Anforderungen an das Backup-System ==== Für das Backup-System soll BackupPC in der aktuell für Debian 11 paketierten Version installiert werden. Das Backup-System soll folgenden Anforderungen genügen: * Verwendete virtuelle Ressourcen (HD, CPU, RAM) sind als Gegenstand der Planung zu begründen * Alle administrativen Zugänge zum Server sind bestmöglich gesichert * Die benötigten Zugänge zu den Client-Systemen und -Daten sind bestmöglich gesichert * Die Backupdaten sind bestmöglich gesichert * Für jedes zu sichernde System ist in der Planung eine Strategie festzulegen, die von der Wiederherstellung einzelner Dateien bis zum Bare-Metal Restore reicht * Bei den Backups ist sicherzustellen, dass die Integrität der Backup-Daten gewährleistet ist (Backup von Live-Systemen!) * Installationen und Einrichtungen auf den Clientsystemen sind minimal zu halten und zu begründen * Der Backup-Admin soll über den Verlauf jedes Backups informiert werden ===== 3. Verlangte Dokumentationen ===== * Inventar der unter Mittel und Methoden aufgeführten Hardware * Kurzbeschreibungen der unter Mittel und Methoden aufgeführten Software und Services * Beschreibung der Backup-Suite BackupPC mit ihren Hauptfeatures * Layer3-Diagramm der Einbettung der Testumgebung in das Netzwerk der Rafisa * Netzwerkdiagramm der Testumgebung ===== 4. Testing ====== Die gesamte Lösung ist auf Basis eines Testkonzeptes zu testen und die Testresultate sind zu dokumentieren. ===== Mittel und Methoden ===== ==== Hardware ==== * Dedizierter HP ProLiant Server * Windows 10 Arbeitsplatzrechner für das Testing ==== Software und Services ==== * Proxmox VE-Plattform * GNS3-VM * GNS3-Templates: Windows 2019 Server, Linux Debian 11, Cisco Switch, pfSense-Firewall * Backup-Lösung BackupPC * Labor-Netzwerk: VLAN56_LAB06, Gateway: 172.16.56.1/24, DHCP aktiviert * Firmenstandards: Dokument “Firmenstandards für das Netzwerk der Rafisa Informatik GmbH” Version 1.2 ===== Vorkenntnisse ===== * Network-Services: Switches, Firewalls, VLAN, VPN * Linux Debian/Ubuntu * Windows Server 2019 * BackupPC * GNS3 ===== Vorarbeiten ===== Installation GNS3 Web-Launcher ===== Neue Lerninhalte ===== * Backupscripts erstellen * Sichern von administrativen Zugängen (SSH, HTTPS) ===== Arbeiten in den letzten 6 Monaten ===== * Verantwortlicher Network-Services (Firewall, Switches, VLAN, VPN) * Einarbeitung Backup-Systeme und BackupPC * Netzwerksimulationen mit GNS3 ===== Durchführungsblock ===== ====== Projektaufbauorganisation ====== ===== Personen ===== ===== Rollen ===== ===== Aufgaben ===== ===== Verantwortung ===== ===== Projektorganigramm ===== ====== Vorgehen ====== ===== Projektmethode IPERKA ===== ===== Organisation der Arbeitsergebnisse ====== ===== Firmenstandards für das Netzwerk der Rafisa Informatik GmbH ===== Zusammenfassung und Verweisen auf Anhang -> Standards in den Anhang ====== Zeitplan ====== ====== Arbeitsprotokoll ====== ====== Teil 2 – Projekt ====== ====== Kurzfassung IPA-Bericht ====== ====== Informieren ======= ===== Erfassen der zur Verfügung gestellten Hardware ===== Proxmox HW in Tabelle erfassen Windows 10 PC in Tabelle erfassen ===== Beschreibung der einzusetzenden Software und Services ===== ==== Proxmox VE ===== ==== GNS3-VM ==== * Beschreibung GNS3-VM * Virtuelle Ressourceh: CPU, RAM, Plattenplatz ==== Einzusetzende Templates ==== Kurzbeschreibung von Windows 2019 Server-Template, Linux Debian 11, Cisco Switch, pfSense-Firewall ==== Beschreibung BackupPC ==== * Allgemeine Beschreibung der Software * Beschreibung, wie man einen Backupjob einrichtet (Hosts, Pre- und After-Backup Skripts, Passwordless-Login, Backup-User auf Systemen) * Beschreibung des Schedulers * Beschreibung der Backuparten (bzw. Protokolle) ===== L3-Plan IST-Zustand des Projektumfelds ===== ====== Planen ======= ===== Planen Netzwerk ===== s. IPA Timafei ==== Planen der VLAN ==== ==== Planen der Netzwerkdienste ==== ==== Planen der VMs ===== GNS3 Ressourcen planen für VMs * Windows DC + Fileserver * Debian 11 Datenbankserver * Proxmox VE + Linux (Ressourcen Proxmox, Distribution Linux -> Grösse HD * pfSense (Anzahl Ports) * Switch (Anzahl Ports) ===== Planen der Backup-Jobs ===== ==== Einrichten Logins für alle Systeme === * Backup-User -> Prinzip der minimalen Rechte * User + PW auf Backuppc hinterlegt vs Passwordless login via RSA-Keys ==== Planen des Backup-Jobs für den Windows DC ==== * VZdump mit Prebackup-Script * Windows-Backup + Rsync ==== Planen des Backup-Jobs für den Fileserver ==== * VZdump mit Prebackup-Script * SMB-Backup des Shares ==== Planen des Backup-Jobs für den Datenbank-Server ==== * rsync des /etc-Verzeichnisses * vzdump des ganzen Servers * mysqldump + rsync -> alle Datenbanken * mysqldump + rsync -> einzelne Datenbanken ==== Planen des Backup-Jobs für die Proxmox-VM ==== * vzdump der VM ==== Planen des Backup-Jobs für den Cisco-Switch ==== * SNMP vs scp * Script von Saba ==== Planen des pfSense-Backup-Jobs ==== * Prebackup-Script vs. rsync * Script von Saba ===== Planen BackupPC-VM ===== * Security: HTTPS für Zugang, verschlüsselte Platte und /var/lib/backuppc, SSH nur mit Key * Virtuelle Ressourcen: CPUs, RAM, Festplatten * Planen Benachrichtigung ====== Entscheiden ======= ===== Netzwerk-Konzept ===== s. IPA Timafei ==== VLAN ==== ==== Netzwerk-Dienste ==== ==== IP-Zuteilung und Hostnames ==== ==== Zugriffsmatrix ==== ==== Port-Konfiguration von Switch und Firewall ==== ===== Konzept VMs ===== ==== DC und Fileserver ==== Virtuelle Ressourcen: CPU, RAM, Platten, minimal, DC und Fileserver zusammenlegen, 2 Laufwerke, Platz für Backup auf zweitem Laufwerk ==== Debian 11 Datenbankserver ==== Virtuelle Ressourcen, CPU, RAM, Platten, MariaDB in welcher Version? ==== Proxmox VE ==== Virtuelle Ressourcen, VM -> Ressourcen, Distribution ==== pfSense ==== Anzahl Ports, Portzuteilung ==== Switch ==== Anzahl Ports, Portzuteilung ===== Backup und Restore Konzept ===== ==== Backup und Restore DC + Fileserver ==== ==== Backup Debian 11 Datenbankserver ==== ==== Backup Proxmox VM ==== ==== Backup Firewall ==== ==== Backup Switch ==== ==== Rahmenbedingungen ==== ===== BackupPC ===== Virtzuelle Resoourcen -> abh. auch von Rahmenbedingungen Implementierte Sicherheitsfeatures: Verschlüsselte Platte, HTTPS ===== Testkonzept ====== s. Timafei ===== Arbeitspakete und Meilensteine ===== ====== Realisieren ======= ===== Aufsetzen der benötigten VMs ===== ===== Konfiguration des Testnetzwerkes (VLAN, Netzwerkdienste) ===== ===== Aufsetzen BackupPC ===== ===== Aufsetzen der Backup-Jobs ===== === Backup-Job für DC + Fileserver === === Backup-Job für Datenbankserver === === Backup-Job für Proxmox-Server === === Backup-Job für Switch === === Backup-Job für Firewall === === Einrichten Benachrichtigung-Admin === ====== Kontrollieren ======= ====== Auswerten ======