Rechnernetze Praktikum Versuch 2: MySQL und VPN Ziel Absicherung einer MySQL Verbindung mittels VPN Vorbereitung Warum muss eine MySQL Verbindung gesichert werden? Was versteht man unter MySQL Injektion? Wie funktioniert VPN? Kann ein VPN parallel zu einem bestehenden Netzwerk existieren? Aufgabenstellung 1. Installieren und konfigurieren Sie einen MySQL Server. 2. Konfigurieren Sie den Switch, damit die Pakete mitgelesen werden können. 3. Erfassen Sie mithilfe von Wireshark ein paar kritische MySQL Pakete. 4. Konfigurieren Sie den VPN Server und stellen Sie eine Verbindung her. 5. Versuchen Sie erneut MySQL Pakete zu erfassen. Versuchsaufbau 1
Durchführung Als erstes müssen Sie den MySQL Server installieren, den Installer finden Sie auf dem Desktop von vpc09. Sie sollten bei der Installation nur die wichtigsten Funktionen installieren. Markieren Sie Custom und wählen Sie danach den MySQL Server und die MySQL Workbench aus. 2
Nachdem die Installation abgeschlossen ist, können Sie den Server konfigurieren. Die meisten Einstellungen werden dabei nicht verändert. Jedoch ist es wichtig, ein weiteres Konto zu erstellen. Der Benutzer root kann nicht von außerhalb auf den Server zugreifen, dies könnten Sie allerdings in der MYSQL Workbench ändern. Wählen Sie bei dem zweiten Account als Rolle DB Admin und als Host any host aus. Nachdem Sie die Konfiguration abgeschlossen haben, werden alle Dienste gestartet und Sie können auf den MySQL Server zugreifen. Nutzen Sie dafür das Programm HeidiSQL, welches sich auf dem Desktop des Clients befindet. Wählen Sie die passende Verbindung aus, und geben Sie den gewählten Username und das dazugehörige Passwort ein. 3
Für weitere Tests ist es notwendig, eine Tabelle zu der bereits existierenden Datenbank Test hinzuzufügen. Füllen Sie die gerade erstellte Tabelle mit einigen Daten. Das Format der Daten hängt von den Feldern und den dazugehörigen Datentypen der Tabelle ab. 4
Fragen Sie die Tabelle mit dem MySQL Befehl Select ab. Als nächstes untersuchen Sie den Datenverkehr, welcher zwischen Server und Client fliest. Dafür benötigen Sie einen dritten Computer, in dem Fall PC16. Der rechte Monitor ist an diesen PC angeschlossen. Wechseln Sie den Eingang des Monitors, indem Sie den zweiten Knopf von unten drücken. Die Eingänge werden in folgender Reihenfolge durchgeschaltet. HDMI Analog DVI HDMI. Da sich zwischen Server und Client kein Hub befindet, bekommt PC16 keine Pakete gesendet, die nicht an ihn adressiert, oder vom Typ Broadcast sind. Der Switch Cisco Catalyst welcher sich zwischen Client und PC16 befindet, besitzt die Möglichkeit den Datenverkehr einer Schnittstelle an eine zweite weiterzuleiten. Diese Funktion muss jedoch erst konfiguriert werden. 5
Minimieren Sie dafür den Remotedesktop auf dem Client und öffnen Sie auf dem Desktop das Programm Putty. Füllen Sie die Felder für Serial Line und Speed aus und drücken Sie auf open. Sie melden sich mit dem Befehl enable an. Die folgenden Befehle konfigurieren den Switch für den Versuch. Konfigurationsmodus Cisco# config terminal Vorhanden SPAN-Session löschen Cisco (config)# no monitor session all Legt den Source Porte der Session 1 fest. Cisco (config)# monitor session 1 source interface fastethernet 0/1 Legt den Destination Port der Session 1 fest. Cisco (config)# monitor session 1 destination interface fastethernet 0/2 Konfigurationsmodus verlassen Cisco (config)# exit Zeigt die erzeugt SPAN-Session an Cisco# show monitor session 1 6
Wenn Sie nun auf PC16 Wireshark starten, können Sie alle Pakete erfassen, welche über Port 1 des Cisco Catalyst übertragen werden. Es sollte Ihnen jetzt möglich sein, MySQL Pakete zu erfassen. Wählen Sie dabei einen Filter um nur die wichtigsten Pakete erfassen. Tragen Sie folgendes in die TextBox des Filters bei Wireshark ein. TCP.Port == [MySQL_Port] Den Port haben Sie während der Installation gewählt. 7
Im nächsten Schritt konfigurieren Sie einen VPN Server unter Windows. Dafür erstellen Sie zunächst einen weiteren Benutzer auf dem Server. Öffnen Sie dafür die Computerverwaltung auf dem Desktop. Unter Lokale Benutzer und Gruppen finden Sie Benutzer und Gruppen. Erstellen Sie zuerst einen neuen Benutzer. 8
Im Anschluss muss noch eine Gruppe erstellt werden, in welcher der neue Benutzer Mitglied ist. Öffnen Sie nun Routing und RAS auf dem Desktop. Als erstes muss Routing und RAS aktiviert werden, dass erreichen Sie, indem Sie auf VPC08 (lokal) rechts klicken und dann Routing und RAS konfigurieren und aktivieren auswählen. 9
Im nächsten Fenster müssen Sie bei VPN-Zugriff einen Harken setzten. Der RAS Server wird im Anschluss gestartet, dass kann einen Moment dauern. Als nächstes müssen Sie den IP Bereich des VPN Subnetzes festlegen, dafür müssen Sie wieder auf VPC08 (lokal) rechtklicken und danach Eigenschaften auswählen. Wenn Sie einen anderen IP-Bereich wählen, ist die voreingestellt MySQL Verbindung des Clients nicht richtig und muss angepasst werden. 10
Im letzten Schritt werden die Berechtigungen zum Einwählen konfiguriert, öffnen Sie dafür den Netzwerkrichtlinienserver. Sie müssen dafür zunächst auf RAS-Protokollierung und -Richtlinien linksklicken! Erst danach taucht bei einem Rechtsklick der Punkt NPS starten auf. Der NPS Server ist ein sehr komplexes Werkzeug, Sie konfigurieren in unserem Fall eine möglichst einfache Richtlinie. 11
Erstellen Sie zunächst eine neue Richtlinie, fügen Sie bei Bedingungen die Windows-Gruppe ein, die Sie erstellt haben. Damit hat auch der erstellte User das Recht sich per VPN zu verbinden. Allen anderen Usern, auch dem Administrator, ist es nicht möglich sich per VPN zu verbinden. Wählen Sie diese Authentifizierungsmethoden, damit ist es für den Client leichter sich zu verbinden. 12
Nachdem Sie die Richtlinie erstellt haben, kann sich der Client per VPN Verbinden. Auf dem Desktop des Client befindet sich eine Verknüpfung, welche die VPN Verbindungen anzeigt. Die Verbindung mit dem Namen VPN-Verbindung ist bereits auf den Server konfiguriert. Wenn Sie dort verbinden auswählen und die Zugangsdaten des erstellten Benutzers eintragen, sollte eine VPN Verbindung hergestellt werden. Sie können dies mittels ipconfig überprüfen. Wenn der Client eine Adresse in dem von Ihnen gewählten Subnetz besitzt, war die Konfiguration erfolgreich. 13
Wenn Sie nun HeidiSQL beenden und neu starten, können Sie sich nun mit der Verbindung MySQL Server VPN verbinden und wieder ein paar Abfragen ausführen. Es sollte Ihnen jetzt nicht mehr möglich sein, Informationen über die Daten bzw. die Datenbank aus den mitgeschnittenen Paketen zu erhalten. Protokoll Erwartet wird die Abgabe eines Protokolls über die durchgeführten Konfigurationen sowie deren Ergebnisse und Auswirkungen. Empfehlenswert ist dabei die Einbindung entsprechender Screenshots, diese können auf zwei Wegen erstellt werden. ALT + DRUCK Zwischenablage STRG + V z.b. in Paint Mithilfe des Snipping Tool s, was auf allen virtuellen Maschinen und manchen physischen Computern installiert ist 14