Files
Frida---Fred/SECURITY.md

3.6 KiB

Sicherheitshinweise für Frida & Fred Webseite

Implementierte Sicherheitsmaßnahmen

1. Geschützte Konfigurationsdatei

  • config.php enthält sensible Zugangsdaten (SMTP-Passwort)
  • Wird durch .htaccess vor direktem Zugriff geschützt
  • Ist in .gitignore und wird NICHT ins Git-Repository committed

2. Git-Sicherheit

  • config.php wird automatisch ignoriert
  • Nur config.php.example (ohne echte Passwörter) wird ins Repository committed
  • Bei neuem Deployment: config.php.example kopieren und umbenennen

3. Spam-Schutz

  • Honeypot-Feld: Verstecktes Feld fängt Bots ab
  • Rate-Limiting: Max. 1 Nachricht pro Minute pro Benutzer
  • CSRF-Token: Schutz vor Cross-Site-Request-Forgery
  • Server-seitige Validierung: Alle Eingaben werden geprüft

4. Zugriffsbeschränkungen (.htaccess)

  • Direkter Zugriff auf config.php ist gesperrt
  • GET-Requests auf send-mail.php sind blockiert (nur POST erlaubt)
  • Sensible Dateien (.env, composer.json, .git) sind geschützt

🚀 Deployment auf neuem Server

Schritt 1: Dateien hochladen

Lade alle Dateien AUSSER config.php hoch (die ist in .gitignore).

Schritt 2: config.php erstellen

cp config.php.example config.php

Schritt 3: Zugangsdaten eintragen

Öffne config.php und trage die echten SMTP-Zugangsdaten ein.

Schritt 4: Berechtigungen setzen (empfohlen)

chmod 600 config.php  # Nur Besitzer kann lesen/schreiben

🔒 Best Practices

Was du TUN solltest:

config.php mit restriktiven Berechtigungen (600 oder 640) Regelmäßig das SMTP-Passwort ändern HTTPS verwenden (SSL-Zertifikat) PHP-Error-Logs regelmäßig prüfen config.php.example als Vorlage pflegen

Was du NICHT tun solltest:

config.php ins Git-Repository committen Passwörter in öffentlichen Dateien speichern .htaccess löschen oder deaktivieren Debug-Modus in Produktion aktivieren Passwörter per E-Mail oder unsichere Kanäle teilen

📁 Dateistruktur

Webseite/
├── config.php              # ❗ NICHT ins Git! (wird ignoriert)
├── config.php.example      # ✅ Vorlage (ohne echte Passwörter)
├── send-mail.php           # Mailer-Script
├── .htaccess              # Zugriffsbeschränkungen
├── .gitignore             # Ignoriert sensible Dateien
├── vendor/                # PHPMailer-Bibliothek
└── ...

🔐 Zusätzliche Sicherheitsempfehlungen

1. Umgebungsvariablen (fortgeschritten)

Noch sicherer: Verwende Umgebungsvariablen statt PHP-Dateien

  • Bei Shared Hosting oft nicht verfügbar
  • Bei VPS/Dedicated Server: .env mit php-dotenv

2. Zwei-Faktor-Authentifizierung

Aktiviere 2FA für:

3. SSL/TLS-Zertifikat

  • Stelle sicher, dass HTTPS aktiv ist
  • Erzwinge HTTPS-Umleitung in .htaccess

4. Regelmäßige Updates

  • PHPMailer regelmäßig aktualisieren
  • PHP-Version aktuell halten
  • Server-Software patchen

🆘 Was tun bei Kompromittierung?

Falls das Passwort kompromittiert wurde:

  1. Sofort Passwort ändern im E-Mail-Account
  2. config.php aktualisieren mit neuem Passwort
  3. Server-Logs prüfen auf verdächtige Aktivitäten
  4. Alle Zugriffe prüfen (FTP, SSH, Admin-Panels)
  5. Optional: Alle Passwörter rotieren

📞 Support

Bei Fragen zur Sicherheit:


Wichtig: Diese Datei (SECURITY.md) kann ins Git-Repository committed werden, da sie keine sensiblen Informationen enthält.