Apparmor
Zur Navigation springen
Zur Suche springen
Apparmor
- Service starten
systemctl start apparmor.service systemctl enable apparmor.service
- Apparmor Flags
Jedes Profil kann in einem der drei Modi aktiviert werden: complain, enforce, audit
- Es können auch alle Profile in einen bestimmten Modus versetzt werden
# Beispiele aa-complain /etc/apparmor.d/* # für den "Complain"-Modus" aa-enforce /etc/apparmor.d/* # für den "Enforce"-Modus
Ein Apparmor Profil anpassen
- Ein Apparmor Profil in den Complain Modus setzen
# Beispiel aa-complain /usr/lib/dovecot/config
- Dann das entsprechende Programm starten
dovecot
Nun werden Aktionen, die gegen die Regeln im Profil verstoßen, in /var/log/audit/audit.log
geschrieben.
- Profil automatisch anpassen
aa-logprof
Troubles
Probleme nach Systemupgrade
server dovecot: IMAP(username): file_dotlock_create(/var/mail/username) failed: Permission denied
... oder ähnliche Meldungen.
- Die Ursache liegt im AppArmor Profil für dovecot.
- Apparmor Profile überprüfen
Die Profile befinden sich in
/etc/apparmor.d
Möglicherweise müssen nach einem Systemupgrade einige Profile erneuert werden.
# Beispiel cd /etc/apparmor.d mv usr.sbin.dovecot usr.sbin.dovecot.bak mv usr.sbin.dovecot.rpmnew usr.sbin.dovecot
- Thread zu diesem Thema
Dovecot wird blockiert von Apparmor
Dovecot Profile ändern
Auf meinem openSUSE Server hat sich gezeigt, dass einige Korrekturen notwendig sind.
- Änderungen sollte man nicht an den Dateien in
/etc/apparmor.d
vornehmen sondern in/etc/apparmor.d/local
. - Hier befinden sich Dateien gleichen Namens, die von den jeweiligen Profildateien in
/etc/apparmor.d
includiert werden.
master: Fatal: execv(/usr/lib/dovecot/stats) failed: Permission denied
Mit folgender Zeile in der Datei /etc/apparmor.d/local/usr/lib/dovecot/stats
konnte ich das Problem lösen:
/usr/lib/dovecot/stats mrpx,
Letsencrypt Zertifikate
Folgende Ergänzungen in /etc/apparmor.d/local
habe ich vorgenommen, damit Dovecot mit Apparmor funktioniert:
# usr.lib.dovecot.config: /etc/letsencrypt/archive/mydomainname/* r, /etc/letsencrypt/live/mydomainname/* r, # usr.sbin.dovecot /etc/letsencrypt/archive/mydomainname/* r,