Provide OS integration to sign /boot and/or root during updates
Nobody has claimed this yet.
- Dominant language
- Makefile
- Stars
- 1.6k
- Forks
- 211
- Avg merge
- 4d 21h
- Merged PRs (30d)
- 6
Description
A common paint point in Heads is that when any changes are made, it is difficult to tell if the changes are intentional or due to tampering.
In my opinion, the best solution to this is to eliminate the question. When intentional changes are made, sign them then as part of the update process.
It might be possible for Heads to include or offer integrations for common OSes. E.g. we could build packages for Debian-based, Fedora-based, etc. distributions that would know how to re-sign /boot after an update occurs. Potentially, this could be extended to root also for the root-hashing feature.
For Debian, it is possible to install apt/dpkg hooks that occur before or after dpkg invocations, package installation, etc. (one example: https://unix.stackexchange.com/questions/76294/hook-a-script-to-apt-get). Assuming other package managers offer similar functionality, we could probably export a Heads script and hook it at the appropriate place to integrate signing into the update process.
Alternative to #1599
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Review the proposed Debian apt/dpkg hooks and the alternative in issue #1599 first; the issue does not name repository files, tests, or entry points. Done would require a defined integration for one or more common operating systems that signs /boot and potentially root during updates.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- debian, fedora, linux
- Domain
- operating-systems, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100