Repository navigation
Network: dynamic DNS, own CA, Let's Encrypt - #108
Merged
Merged
Conversation
shareos-ddns (DuckDNS, dynv6, Cloudflare, No-IP, dyndns2 URL; IPv4/IPv6), shareos-ca (mbedtls CA for the box and other devices), shareos-acme (uacme, DNS-01 through the DynDNS provider). UI under System -> Netzwerk, rpcd methods in shareos.web, cron entries, CA in the settings backup, tests test-ddns.sh and test-ca.sh (CI: qemu with the firmware's mbedtls). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KmfmQxsE59Ms99VrbCi1J1
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.
System → Netzwerk gets three new parts:
shareos-ddns): DuckDNS, dynv6, Cloudflare, No-IP or any dyndns2 URL; IPv4 and/or IPv6; sent every 5 min only when the address changed, daily otherwise, retried after 30 min on failure; failures become a message. Secrets go to curl via stdin (-K -), never back to the browser.shareos-ca): EC P-256 CA via the firmware's mbedtls; certificates for other devices (825 days, serverAuth, wildcards, IPs) with download of cert/key; the box's own certificate follows name/IP and renews 30 days before expiry.shareos-certno longer replaces a CA-issued certificate with a self-signed one on IP change. CA key/cert are in the settings backup.shareos-acme, uacme 1.8.1 with mbedtls, 105 KB): DNS-01 through the DynDNS provider (DuckDNS, Cloudflare), no open port; renewed daily when < 30 days left; staging mode.Tests:
tests/test-ddns.sh(24 checks, fake curl, in backend-tests),tests/test-ca.sh(18 checks, firmware mbedtls + uci through qemu-arm-static in the firmware job). Let's Encrypt itself is not tested end-to-end here (no route to the ACME servers from the build environment) – needs a test on the box.Generated by Claude Code