| | |
| | | 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> |
| | |
| | | </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 |
| | | <VirtualHost *:443> |
| | | |
| | | # 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> |