Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This might lack some caps.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Any thoughts on what caps may be missing?
And what makes you think there may be some missing? Is there a problem that you see when you use this service unit?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll test these.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
NoNewPrivileges prevents UID changes, and we need to do UID changes. I need to adapt this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@cmouse I don't think
NoNewPrivileges
prevents UID changes - it prevents increasing privileges once they've been lost. If, for example, dovecot starts as root, then drops privileges and changes UID todovecot
, that would be fine. If, on the other hand, dovecot starts as root, then drops privileges and changes UID todovecot
, then tries to regain dropped privileges, thenNoNewPrivileges
would block that.I'm curious - is there a problem that you're seeing? I'd be really interested in knowing what the problem may be.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have not yet properly tried it, but in some cases some dovecot processes need to change their EUID to some user, and then back to root, and again to some other user. I'll try this out with this systemd unit and see if it really works.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After testing it, it was missing CAP_SYS_RESOURCE. Seems that NoNewPrivileges at least initially works with environment with multiple UIDs for users.