Dovecot nutzt einen Master-Prozess, der spezialisierte Worker startet. Das isoliert Fehler: Eine fehlerhafte IMAP-Sitzung kann den Auth-Daemon nicht zum Absturz bringen.
Kernprozesse:
| Prozess | Aufgabe |
|---|---|
| dovecot (Master) | Startet und überwacht die Kindprozesse |
| anvil | Zählt Verbindungen pro Benutzer/IP |
| log | Zentraler Log-Sammler |
| config | Liefert die Konfiguration an alle anderen Prozesse |
| stats | Metriken im Arbeitsspeicher |
| auth | Ein einziger Auth-Daemon für alle Protokolle |
| imap-login / pop3-login | Netzwerk-Handler vor der Authentifizierung (geringe Rechte) |
| imap / pop3 | Worker pro Sitzung nach der Authentifizierung |
| lmtp | Lokale Zustellung vom MTA |
| doveadm | Server für die Admin-CLI |
Rechtetrennung: imap-login läuft als Benutzer dovenull ohne Shell. Erst nach erfolgreicher Authentifizierung wird die Sitzung an imap übergeben, das als Eigentümer des Postfachs läuft. Deshalb hatte Dovecot in 20 Jahren so wenige CVEs.
Nebenläufigkeit: Standardmäßig bekommt jeder Benutzer pro Sitzung einen eigenen imap-Prozess. Mit service_count = 0 verwendet Dovecot Prozesse wieder, um den fork()-Aufwand bei hoher Last zu senken.
Melden Sie sich an, um festzuhalten, was Sie gelesen haben.