Zum Inhalt springen

E-Mail / SMTP-Konfiguration

RAMP verwendet E-Mail für:

  • Links zum Zurücksetzen von Passwörtern (native RAMP-Benutzer)
  • Benutzereinladungs-E-Mails
  • MFA-Einrichtungsbenachrichtigungen
  • Systembenachrichtigungen (zukünftig)

Die E-Mail-Konfiguration ist optional, wird aber für Produktions-Deployments dringend empfohlen.

  • SMTP-Server-Zugriff (Gmail, Office 365, SendGrid, benutzerdefiniertes SMTP)
  • SMTP-Anmeldedaten (Benutzername und Passwort)
  • Netzwerkzugriff vom RAMP-Server zum SMTP-Server

{
"Smtp": {
"Host": "smtp.gmail.com",
"Port": 587,
"EnableSsl": true,
"Username": "noreply@yourcompany.com",
"Password": "your-smtp-password",
"FromAddress": "noreply@yourcompany.com",
"FromName": "RAMP System"
}
}
EinstellungErforderlichBeschreibungBeispiel
HostJaSMTP-Server-Hostnamesmtp.gmail.com
PortJaSMTP-Server-Port587 (STARTTLS) oder 465 (SSL)
EnableSslJaSSL/TLS-Verschlüsselung verwendentrue (empfohlen)
UsernameJaSMTP-Authentifizierungs-Benutzernamenoreply@yourcompany.com
PasswordJaSMTP-Authentifizierungs-Passwort(App-Passwort oder Konto-Passwort)
FromAddressJaE-Mail-Adresse im “Von”-Feldnoreply@yourcompany.com
FromNameNeinAnzeigename im “Von”-FeldRAMP System

  1. 2-Schritt-Verifizierung aktivieren

    Gehen Sie zu https://myaccount.google.com/security und aktivieren Sie die 2-Schritt-Verifizierung.

  2. App-Passwort erstellen

    1. Gehen Sie zu https://myaccount.google.com/apppasswords
    2. “Mail” und “Sonstiges (benutzerdefinierter Name)” auswählen
    3. “RAMP” als Namen eingeben
    4. “Generieren” klicken
    5. Das 16-stellige Passwort kopieren
  3. RAMP konfigurieren

    {
    "Smtp": {
    "Host": "smtp.gmail.com",
    "Port": 587,
    "EnableSsl": true,
    "Username": "your-email@gmail.com",
    "Password": "app-password-from-google",
    "FromAddress": "your-email@gmail.com",
    "FromName": "RAMP System"
    }
    }

Gmail-Limits:

  • 500 E-Mails pro Tag (kostenlose Konten)
  • 2.000 E-Mails pro Tag (Google Workspace)

Terminal-Fenster
cd src/RAMP.API
dotnet user-secrets set "Smtp:Password" "your-smtp-password"

  1. Einen Testbenutzer mit nativer RAMP-Authentifizierung erstellen
  2. Zu Admin -> Benutzer navigieren
  3. Den Testbenutzer suchen
  4. Passwort zurücksetzen klicken
  5. Den E-Mail-Posteingang des Benutzers auf die Zurücksetzen-E-Mail prüfen

RAMP starten und die Protokolle auf folgendes prüfen:

[INFO] SMTP configured: smtp.gmail.com:587
[INFO] Email sent to: testuser@example.com
Terminal-Fenster
$smtp = New-Object Net.Mail.SmtpClient("smtp.gmail.com", 587)
$smtp.EnableSsl = $true
$smtp.Credentials = New-Object System.Net.NetworkCredential("your-email@gmail.com", "app-password")
$smtp.Send("your-email@gmail.com", "test@example.com", "Test", "Test email from RAMP")

RAMP enthält integrierte E-Mail-Vorlagen für:

  • Betreff: “Password Reset Request - RAMP”
  • Inhalt: Zurücksetzen-Link mit 24-Stunden-Ablauf
  • Betreff: “Multi-Factor Authentication Enabled - RAMP”
  • Inhalt: Bestätigung und Erinnerung an Backup-Codes
  • Betreff: “Welcome to RAMP”
  • Inhalt: Konto erstellt, nächste Schritte

Prüfung 1: SMTP-Konfiguration überprüfen

Terminal-Fenster
# SMTP-Verbindung testen
telnet smtp.gmail.com 587

Prüfung 2: Anwendungsprotokolle auf E-Mail-Fehler prüfen

Prüfung 3: Anmeldedaten überprüfen

  • Sicherstellen, dass Benutzername und Passwort korrekt sind
  • Für Gmail: App-Passwort verwenden (nicht das Konto-Passwort)
  • Prüfen, ob 2FA für das E-Mail-Konto aktiviert ist

Prüfung 1: Benutzernamenformat überprüfen

  • Gmail: your-email@gmail.com
  • Office 365: your-email@yourdomain.com
  • SendGrid: Immer apikey (wörtliche Zeichenfolge)

Prüfung 2: Passwort prüfen

  • Gmail: 16-stelliges App-Passwort verwenden (keine Leerzeichen)
  • SendGrid: Vollständigen API-Schlüssel beginnend mit SG. verwenden
  • Office 365: Konto-Passwort oder App-Passwort verwenden

Fehler “Verbindung verweigert” oder “Timeout”

Abschnitt betitelt „Fehler “Verbindung verweigert” oder “Timeout”“

Prüfung 1: Port- und SSL-Einstellungen überprüfen

  • Port 587: EnableSsl = true verwenden
  • Port 465: EnableSsl = true verwenden
  • Port 25: EnableSsl = false verwenden (nicht empfohlen)

Prüfung 2: Firewall prüfen

Terminal-Fenster
# Ausgehende SMTP-Verbindung testen
nc -zv smtp.gmail.com 587

Prüfung 3: Netzwerkzugriff überprüfen

  • Sicherstellen, dass der RAMP-Server den SMTP-Server erreichen kann
  • Sowohl Host-Firewall als auch Netzwerk-Firewalls prüfen

Lösung 1: Absenderadresse überprüfen

  • Eine echte, verifizierte E-Mail-Adresse verwenden
  • Generische Adressen wie noreply@gmail.com vermeiden

Lösung 2: SPF- und DKIM-Einträge einrichten

  • DNS-Einträge für Ihre Domain konfigurieren
  • Dokumentation von SendGrid/SES beachten

Lösung 3: Professionellen E-Mail-Anbieter verwenden

  • SendGrid, Amazon SES bieten bessere Zustellbarkeit
  • Korrekte E-Mail-Header einschließen

  1. SSL/TLS verwenden – Immer EnableSsl = true setzen und Port 587 oder 465 verwenden
  2. Dediziertes E-Mail-Konto – Ein dediziertes E-Mail-Konto für RAMP erstellen, getrennt von persönlichen/Admin-Konten
  3. Starke Authentifizierung – 2FA für das E-Mail-Konto aktivieren, App-Passwörter statt Konto-Passwörtern verwenden, Anmeldedaten regelmäßig rotieren
  4. Sichere Anmeldedatenspeicherung – SMTP-Passwörter niemals in die Quellcodeverwaltung einchecken
  5. E-Mail-Aktivität überwachen – Gesendete E-Mail-Protokolle prüfen, Benachrichtigungen bei ungewöhnlicher Aktivität einrichten, fehlgeschlagene Zustellversuche prüfen
  6. Ratenbegrenzung beachten – Anbieter-Limits im Blick behalten (Gmail: 500/Tag, Office 365: 10.000/Tag, SendGrid: je nach Plan)

Nein. E-Mail ist optional, aber die Passwort-Zurücksetzen-Funktionalität erfordert sie.

Ja. Setzen Sie Smtp:FromAddress auf eine beliebige Adresse, die Sie kontrollieren und bei Ihrem SMTP-Anbieter verifiziert haben.

Derzeit nicht. RAMP verwendet eine SMTP-Konfiguration. Dies kann in einer zukünftigen Version hinzugefügt werden.

Verwenden Sie einen Dienst wie MailHog oder Papercut SMTP für die lokale Entwicklung.