-
-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Debian template: disable newly (all) installed services by default #2238
Comments
I've been playing with Debian packaging lately and I think I found a good way to resolve this. I suggest creating a simple script at that location which will check the service against a whitelist of allowed services (Qubes daemons etc). There's a second part to this though and that is enabling services. While my suggestion above would prevent services from running after install, they would still run after next boot. I don't know if there's a nice way to wrap Still I'm unsure, if all services should be running in all AppVMs. |
Technically there is much better way to do that: systemd preset file which define what services should be automatically enabled - this is invented specifically to allow setting such defaults. The question here is rather about policy: generally we don't change upstream policy decisions and Debian has more or less "if service is installed, it should be started automatically". Should we override it? I think we had more detailed discussion about it somewhere, but can't find it now. @unman @adrelanos any opinions? |
I too seem to remember a discussion, but in my current somewhat addled state, cant remember where. We do stop services on initial creation of templates, and I don't think that the proposed solution is of great help given that it takes a hit in the next boot. My gut feeling is that we should stick with Debian default, however painful that is. |
We can't or shouldn't harden Debian (much) since the result wouldn't be a Debian template with only necessarily modifications to integrate with Qubes. That would be a fork of Debian. Debian is a trademark. https://www.debian.org/trademark Forks of Debian shouldn't be called Debian to avoid confusion. Instead, I would suggest to maintain a reasonably hardened by default Debian derivative. Any coming to mind? Perhaps Anyone up to maintain a Kicksecure Qubes template? And then once such as template stabilized in Qubes consider installing only that by default and not "plain" Debian. That would avoid the discussion on whether (default less secure) distribution defaults should be honored. No change of upstream policy but Qubes becoming "upstream" by not calling it Debian but its own name that it deserves. |
Please don't create file It's not needed. If needed in a script, could be used similar to:
|
Good find! So the original request is identical to It should be rather straightforward to pull in that poackage from some Qubes OS package. If there's any Qubes service that must run immediately after being installed, the default policy will have to be extended a bit. |
The role of a Qubes template is to offer software (i.e. a filesystem with installed software), not to run it!
It might break some security assumptions if all the software user intends to install in a template (which the user might want to use only on few of the AppVMs based on that software) was also made running in all the AppVMs based on that template.
While we do not allow for inter-VM networking between AppVM by default, neither to reach AppVM from the outside world (thanks to default DNAT-based routing), there still might be edge cases where enabling all services by default might have fatal consequences. E.g. a service that periodically fetches some data, then parses it (and subsequently gets exploited due to some bugs it might have).
AFAIU, the Debian policy of "enable services for all installed software" is in stark contrast with Fedora's default rule which says the opposite.
The text was updated successfully, but these errors were encountered: