Seite 1 von 1

[gelöst] Dovecot Fehlermeldung wegen apparmor

Verfasst: 18. Nov 2019, 12:29
von f.gruber
Hallo,
diese Meldungen stehen beim Zugriff auf den IMAP Server Dovecot im LOG, wenn ich apparmor aktiviere.

Code: Alles auswählen

master: Fatal: execv(/usr/lib/dovecot/stats) failed: Permission denied
master: Error: service(stats): command startup failed, throttling for 8 secs
stats: Fatal: master: service(stats): child 15303 returned error 84 (exec() failed)
Habe schon alles mögliche probiert.

Code: Alles auswählen

doveadm stop

Code: Alles auswählen

aa-complain usr.lib.dovecot.stats
/etc/apparmor.d/usr.lib.dovecot.stats wird in den Complain-Modus versetzt.
Dann

Code: Alles auswählen

aa-logprof
Protokolleinträge von /var/log/audit/audit.log werden gelesen.
AppArmor-Profile in /etc/apparmor.d werden aktualisiert.
Änderungen im Erzwingen-Modus
Dann wieder

Code: Alles auswählen

aa-enforce usr.lib.dovecot.stats
/etc/apparmor.d/usr.lib.dovecot.stats wird in den Erzwingen-Modus versetzt.
Dovecot start:

Code: Alles auswählen

dovecot
Zunächst alles ok. Doch, wenn sich ein User auf dem IMAP Server einloggt, habe ich wieder

Code: Alles auswählen

imap-login: Login: user=<xxxx>, method=PLAIN, rip=127.0.0.1, lip=127.0.0.1, mpid=15858, TLS, session=<gJTqMJ2XUoR/AAAB>
master: Fatal: execv(/usr/lib/dovecot/stats) failed: Permission denied
master: Error: service(stats): command startup failed, throttling for 8 secs
stats: Fatal: master: service(stats): child 15859 returned error 84 (exec() failed)
Was soll ich machen?

Die einfache "Lösung" ist, apparmor zu deaktivieren, was ich ja auf diesem Server jetzt seit Monaten getan habe. Jetzt aber wollte ich der Sache doch einmal auf den Grund gehen.

Ja, und noch etwas:
Wenn ich apparmor deaktiviere, hilft das zunächst gar nichts.
Nach dem Deaktivieren von apparmor muss ich den Server rebooten. Dann arbeitet Dovecot wieder normal, also ohne diese Fehlermeldungen im Journal.

Kann mir jemand helfen?

Re: Dovecot Fehlermeldung wegen apparmor

Verfasst: 20. Nov 2019, 21:17
von f.gruber
Es scheint, dass ich das Problem selber lösen konnte.

Ich habe zunächst einmal alle Dateien, die nach dem letzten Update geändert worden sind, auf den neuen Stand gebracht, also alle Dateien gelöscht, wenn eine gleichnamige Datei mit dem Suffix rpmsave existiert und diese dann umbenannt.

Dann habe ich noch folgenden Profil Override gemacht:

Code: Alles auswählen

/etc/apparmor.d/local/usr.lib.dovecot.stats
In diese Datei habe ich folgendes eingefügt

Code: Alles auswählen

/usr/lib/dovecot/stats mrpx,
Dann apparmor aktiviert

Code: Alles auswählen

systemctl start apparmor.service
systemctl enable apparmor.service
und dovecot gestartet

Code: Alles auswählen

dovecot
Ich bekomme jedenfalls nun keine Fehlermeldung mehr :p