HTTP und HTTPS - Protokolle des Web
Wie Browser und Server kommunizieren
- Sie können den Unterschied zwischen HTTP und HTTPS erklären und Sicherheitsaspekte benennenVerstehen
- Sie können HTTP-Anfragen und -Antworten analysierenAnalysieren
HTTP und HTTPS sind die Protokolle, über die Webseiten übertragen werden. Sie lernen den Unterschied und die Sicherheitsaspekte kennen.
HTTP - Hypertext Transfer Protocol
HTTP ist das Protokoll, über das Webseiten übertragen werden. Es definiert, wie Browser und Webserver miteinander sprechen.
HTTP-Anfrage (Request)
Wenn Sie eine Webseite öffnen, sendet Ihr Browser eine Anfrage:
GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0
Das bedeutet: "Gib mir die Datei index.html von www.example.com"
HTTP-Antwort (Response)
Der Server antwortet:
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 1234
<html><body>Hallo Welt!</body></html>
Status-Codes
- 200 OK - Alles funktioniert
- 404 Not Found - Seite existiert nicht
- 500 Internal Server Error - Serverfehler
Warning
HTTP ist NICHT sicher!
Bei HTTP werden alle Daten unverschlüsselt übertragen:
- Jeder im Netzwerk kann mitlesen
- Passwörter können abgefangen werden
- Daten können manipuliert werden
Niemals sensible Daten über HTTP übertragen!
HTTPS - Sicher surfen
HTTPS (HTTP Secure) ist die verschlüsselte Version von HTTP.
Unterschiede zu HTTP:
| HTTP | HTTPS |
|---|---|
| Unverschlüsselt | Verschlüsselt (TLS/SSL) |
| Port 80 | Port 443 |
| Kein Schloss-Symbol | 🔒 Schloss-Symbol im Browser |
| Unsicher für sensible Daten | Sicher für Passwörter, Banking, etc. |
Wie funktioniert die Verschlüsselung?
- SSL-Zertifikat: Der Server beweist seine Identität
- Verschlüsselung: Browser und Server vereinbaren einen geheimen Schlüssel
- Gesicherte Übertragung: Alle Daten werden verschlüsselt gesendet
Selbst wenn jemand die Daten abfängt, kann er sie nicht lesen! 🔐
Challenge
Analyse-Aufgabe: HTTP-Traffic beobachten
Aufgabe: Beobachten Sie in Filius, wie HTTP-Anfragen ablaufen.
- Erstellen Sie ein Netzwerk:
- 1 Webserver (mit einfacher HTML-Seite)
- 1 Client mit Browser
- Wechseln Sie in den Aktionsmodus
- Öffnen Sie auf dem Webserver:
- Rechtsklick → Software → Webserver → "Logs anzeigen"
- Öffnen Sie auf dem Client:
- Den Browser
- Rufen Sie die Webseite auf
- Beobachten Sie:
- Welche HTTP-Methode wird verwendet? (GET, POST, ...)
- Welchen Status-Code sendet der Server? (200, 404, ...)
- Wie groß ist die übertragene Datei?
Zusatzaufgabe: Versuchen Sie, eine nicht existierende Seite aufzurufen (z.B. /nichtda.html). Welcher Status-Code erscheint?