Sascha Schulz
2025-05-26 7eb19fb69ef3e7a32ca000d899e3e886c20bb519
index.html
@@ -4943,10 +4943,10 @@
                        ProxyRequests Off
                        
                        # ProxyPass [Quelle] [Ziel] (auf Port achten) => Weiterleitung
                        ProxyPass / http://127.0.0.1:9000
                        ProxyPass / http://127.0.0.1:9000/
                        
                        # ProxyPassReverse [Quelle] [Ziel] (auf Port achten) => URL-Rewrite bei Redirects
                        ProxyPassReverse / http://127.0.0.1:9000
                        ProxyPassReverse / http://127.0.0.1:9000/
                     </code>
                  </pre>
                  <p>Apache neu starten, um die Änderungen am vhost zu übernehmen</p>
@@ -4965,6 +4965,106 @@
                  </pre>
                  <p>Anschließend sollte die NodeJS-Anwendung unter der bereits bekannten Domain erreichbar sein.</p>
               </section>
               <section>
                  <h3>Wireshark</h3>
               </section>
               <section>
                  <p>Aufgabe</p>
                  <p>Installiere Wireshark und starte anschließend einen Paket-Mitschnitt auf dem WLAN-Adapter. Setze den Filter oben auf "<code>ip.dst == 123.123.123.123</code>" (IP eurer virtuellen Maschine eintragen),
                     besuche die in der VM eingerichtete Webseite in einem Browser und beobachte den Datenverkehr in Wireshark</p>
               </section>
               <section>
                  <h3>Aktivierung von HTTPS</h3>
               </section>
               <section>
                  <p>SSL-Zertifikat erstellen</p>
                  <pre>
                     <code class="bash" data-trim data-line-numbers>
                        openssl req -newkey rsa:4096 -x509 -sha256 -days 3650 -nodes -out cert.pem -keyout key.pem
                     </code>
                  </pre>
                  <p>Anschließend die Fragen beantworten.</p>
                  <p>Die eigentliche Domain für das Zertifikat ist bei "CN" (Common Name) einzutragen</p>
               </section>
               <section>
                  <p>Aktivierung des entsprechenden Apache-Moduls:</p>
                  <pre>
                     <code class="bash" data-trim data-line-numbers>
                        sudo a2enmod ssl
                     </code>
                  </pre>
                  <p>Leserechte für den Rest der Welt an den Zertifikatsdateien setzen</p>
                  <pre>
                     <code class="bash" data-trim data-line-numbers>
                        chmod +r cert.pem key.pem
                     </code>
                  </pre>
               </section>
               <section>
                  <p>Anpassung / Erstellung vhost in <code>sites-available</code></p>
                  <pre>
                     <code class="bash" data-trim data-line-numbers>
                        sudo cp example.conf example-ssl.conf
                     </code>
                  </pre>
                  <p>Den vhost für HTTTP / Port 80 so konfigurieren, dass dieser nach HTTPS / Port 443 weiterleitet:</p>
                  <pre>
                     <code class="bash" data-trim data-line-numbers>
                        # example.conf
                        # Sämtliche Proxy-Direktiven und andere Inhalt
                        # dienende Direktiven auskommentieren:
                        #ProxyPass ...
                        #ProxyPassReverse ...
                        # hinzufügen (auf Ziel-Domäne achten)
                        Redirect Permanent / https://example.com
                     </code>
                  </pre>
               </section>
               <section>
                  <p>Den vhost für HTTPS / Port 443 anpassen</p>
                  <pre>
                     <code class="bash" data-trim data-line-numbers>
                        # example-ssl.conf
                        # Port anpassen
                        &lt;VirtualHost *:443&gt;
                        # hinzufügen (auf korrekte Pfade achten)
                        SSLEngine on
                        SSLCertificateFile "/.../cert.pem"
                        SSLCertificateKeyFile "/.../key.pem"
                     </code>
                  </pre>
                  <p>Anschließend den Apache neu starten:</p>
                  <pre>
                     <code class="bash" data-trim data-line-numbers>
                        sudo systemctl restart apache2
                     </code>
                  </pre>
               </section>
               <section>
                  <p>Aufgabe</p>
                  <p>Inspiziere erneut den Datenverkehr zwischen eurem Browser und dem Server mittels Wireshark. Was fällt auf?</p>
               </section>
               <section>
                  <p>Datenverkehr eines Browser in Wireshark sichtbar machen:</p>
                  <p>CMD öffnen:</p>
                  <pre>
                     <code class="bash" data-trim data-line-numbers>
                        REM Umgebungsvariable setzen:
                        set SSLKEYLOGFILE=%USERPROFILE%\Desktop\sslkey.log
                        REM Beliebigen Browser per Konsole starten (Ordner nach Bedarf vorher wechseln):
                        chromium.exe
                        REM oder
                        firefox.exe
                     </code>
                  </pre>
                  <p>Die TLS-Schlüssel werden nun vom Browser in der festgeleten Datei geloggt</p>
               </section>
               <section>
                  <p>Eben angegebene Datei in Wireshark einstellen:</p>
                  <p>Bearbeiten > Einstellungen > Protocols > TLS > (Pre)-Master-Secret log filename</p>
               </section>
            </section>
         </div>
      </div>