Repository navigation
Installer: signed releases, pinned app releases with SHA-256 checks, and the security page - #15
Merged
Merged
Conversation
…and the security page - install.sh installs a pinned release of each app and checks every file it downloads against the SHA-256 written in it, stopping on a mismatch. scripts/pin-apps.sh writes the list after an app's release; CI checks it on every change and every Monday. - release.yml publishes install.sh and the selfhostit command as a release with SHA-256 sums and a signed attestation; the docs install from the newest release. - security.md: sign-in, sessions and logs (bcrypt, tokens, what is logged and for how long), the security scans and GitHub protections, what needs sudo and why, how to verify the installer, and the reporting route with response times. - Updates and backups: how to make an encrypted backup with age.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Answers the installer and documentation points from the latest outside security review.
Pinned, checked installs
install.shno longer runs app installers frommain. Instead it installs the release of each app pinned in the script.scripts/pin-apps.shrewrites the list after an app's release, and--checkverifies it.The installer as a signed release
release.yml, started by hand withgh workflow run release.yml -f version=v1.0.0, does the following:install.sh,selfhostitandSHA256SUMSin one release (the repos have immutable releases on, so the files go in at creation)https://github.com/selfhostit/docs/releases/latest/download/install.sh. That URL works only after the first release is published, so run the workflow right after merging.security.md
SECURITY.mdin every app.gh attestation verifyorSHA256SUMS).Updates and backups
age.Generated by Claude Code