M7d follow-ups — remote TLS/auth polish
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 54/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- rust
- Lĩnh vực
- authentication, cli, security
Hướng nghiên cứu
Bắt đầu với docs/remote-tls.md và đặc tả thiết kế M7d, sau đó kiểm tra crates/clowder-daemon/src/main.rs và remote_tls.rs::load_or_generate. Tập trung vào hai hạng mục cần thực hiện cụ thể trước các hạng mục chỉ liên quan đến thiết kế: ngăn thông tin xác thực khi khởi động bị lộ trong log và đảm bảo việc xoay vòng token không làm chứng chỉ hoặc ghim TOFU mất hiệu lực. Issue không nêu test nào, vì vậy hãy xác nhận các tiêu chí chấp nhận với các maintainer.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Context
M7d (#53) shipped opt-in TLS + bearer-token auth + TOFU for the remote daemon. These are the deferred minors from its review and threat model (docs/remote-tls.md, docs/superpowers/specs/2026-08-03-clowder-m7d-remote-tls-auth-design.md). None block use; all are polish/hardening.
Note: the "exposure warning still says NO authentication under TLS" minor was already fixed in the cleanup batch (#54).
Follow-ups
- Token logged in cleartext at info-level (
crates/clowder-daemon/src/main.rs) — the bearer token is printed to the daemon log on startup so the operator can copy it, but it then lands in any log aggregation. Consider redacting from the log and pointing operators atclowder remote-token(which reads the state-dir file) instead, or writing it to a0600file only. - Credential rotation is all-or-nothing (
crates/clowder-daemon/src/remote_tls.rs::load_or_generate) — it only takes the "load" path when all three files (remote-cert.pem,remote-key.pem,remote-token) exist; deleting any one regenerates all three, so "rotate the token" silently also rotates the cert and breaks every client's TOFU pin. Consider independent token rotation (e.g.clowder remote-token --rotatethat regenerates only the token) and/or an explicit--rotate-cert.
Larger deferred items (design-only in the M7d spec)
- mTLS / client certificates — channel-bound client auth instead of a bearer token.
- QUIC transport (
quinn) — if roaming/mux ever matters (M7 deliberately deferred this; TCP+TLS is adequate for a terminal). - Configured-fingerprint pin / pairing UX — an alternative to TOFU that closes the first-connect window (a single pasted "pairing string" of fingerprint + token).
- macOS Keychain storage for the client token (currently config/env only; the Rust forwarder would need
security-framework).
- Ngôn ngữ chính
- Rust
- Star
- 0
- Fork
- 0
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của richardcase/clowder
-
documentation priority: medium
Độ khó 2/5 Nửa ngày Mức phù hợp với người mới 82/100
richardcase/clowder#143 ·
-
enhancement github_actions priority: medium rust
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 65/100
richardcase/clowder#142 ·
-
github_actions priority: medium
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 78/100
richardcase/clowder#141 ·
-
bug priority: medium
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 68/100
richardcase/clowder#140 ·
-
bug priority: medium
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 72/100
richardcase/clowder#139 ·
Tất cả issue của richardcase/clowder
Issue tương tự
-
binding:python bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
coollabsio/orbit#72 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
bug order-flow studies ui
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
userFRM/egui-charts#2417 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 2 ngày