ob status does not report a route domain that has no certificate
維護者通常 1 天內回覆
還沒有人認領這個 Issue。
評估
研究方向
Start from the ob status certificate checks and proxy.CertExpiries, which the issue says currently reads only domain.main; trace how applied resolvers, ACME stores, and terminating route domains reach that code. Check route discovery output under /etc/traefik/dynamic if the existing route data is insufficient. Done when status reports missing or renewal-floor certificates for route domains, counts SAN and wildcard coverage, and avoids immediate divergence while issuance is pending.
由索引模型根據 Issue 內容生成。
描述
What happens
ob status reports a healthy proxy when a terminating route's domain has no certificate from the resolver that should issue it. If the configured resolver never obtains a certificate for a domain (for example, the HTTP-01 challenge is blocked or the DNS-01 token is wrong), Traefik serves its default self-signed certificate for that domain. Status does not mention the domain at all.
Status only judges certificates that exist in the ACME stores. A domain with no renewable certificate does not appear there, so it raises no issue and does not set Diverged.
Before #236 this case was sometimes caught by accident. If a leftover resolver key still held an old certificate for the domain, that certificate was eventually flagged as overdue. Since #236, a leftover certificate is marked orphaned and never flagged, so nothing reports the missing one.
Expected
For each domain that a terminating route serves, status checks that a resolver in the applied static configuration holds a certificate for it in the store it writes, and that the certificate is outside the renewal floor. A route domain with no such certificate is reported as an issue, and status diverges. Wildcard routes are covered by a matching wildcard certificate from the wildcard resolver.
Notes
- The route domains come from the application's routes, which status already knows, or from the discovery controller's output in
/etc/traefik/dynamic. - A certificate's SANs should count as well as
domain.main.proxy.CertExpiriescurrently extracts onlydomain.main, so a domain covered only through a SAN would be reported as missing. - A route whose certificate is still being issued right after its first deploy should not report divergence immediately. A short grace period, or reporting it as pending, avoids a false alarm.
Reproduce
- Deploy an application with a terminating route for a domain whose ACME challenge cannot succeed, for example a domain whose DNS does not point at the host.
- Wait for Traefik's issuance attempt to fail. The domain then serves Traefik's default certificate.
- Run
ob status. It reports the proxy as in sync and exits zero.
- 主要語言
- Go
- 星號
- 4
- 分支
- 0
- 平均合併
- 36 分鐘
- 30 天內合併 PR
- 13
環境準備
- 沒有 Dockerfile 或 Docker Compose 檔案
- 有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
labstack/onebox 的其他 Issue
-
bug
難度 1/5 1 小時以內 新手友好度 80/100
維護者通常 1 天內回覆
-
bug
難度 1/5 1 小時以內 新手友好度 85/100
維護者通常 1 天內回覆
-
難度 3/5 1-2 天 新手友好度 55/100
維護者通常 1 天內回覆
-
enhancement
難度 4/5 3-5 天 新手友好度 30/100
維護者通常 1 天內回覆
-
bug
難度 3/5 1-2 天 新手友好度 65/100
維護者通常 1 天內回覆
相似的 Issue
-
難度 2/5 1-3 小時 新手友好度 77/100
維護者通常 1 天內回覆
-
bug
難度 2/5 1-3 小時 新手友好度 78/100
jasonfen/terminal-space-program#949 ·
維護者通常 1 天內回覆
-
[bug]: scan-all update-schedule does not auto-convert 5-field cron expressions as documented可能已有人在做 @vishnums2k5 今天認領。 未關閉
難度 2/5 1-3 小時 新手友好度 78/100
goharbor/harbor-cli#1143 · 1 則留言 ·
維護者通常 8 天內回覆
-
難度 2/5 1-3 小時 新手友好度 78/100
-
難度 2/5 1-3 小時 新手友好度 73/100