You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
step certificate inspect should support using StartTLS聽#1479
If you want to implement this feature, comment to let us know (we'll work with you on design, scheduling, etc.)
Issue details
It would a nice addition to support inspecting certificates that use explicit TLS (StartTLS negotiates a potential upgrade to TLS from a cleartext connection), which could use a flag like --starttls to indicate the connection uses StartTLS instead of implicit TLS:
Related was an issue that lead to adding a smtps:// scheme prefix implying port 465 (implicit TLS), but SMTPS was commonly associated to implicit TLS equivalent to port 25 (StartTLS), however in 2018 was reassigned via RFC 8314 as the implicit TLS equivalent to the submission port (587 with StartTLS). So I don't know how much value that's providing vs just being explicit with a port number 馃槄 (there's help output with the smtps:// scheme, but no indication of the associated port)
Why is this needed?
The main benefit is it would not require an alternative tool to acquire a certificate from services only reachable via StartTLS:
StartTLS is often found with mail servers (aka explicit TLS via ports 25 and 587 related to SMTP and 110 + 143 for POP3/IMAP), which don't always offer implicit TLS ports (465, 993, 995). It can also be found elsewhere like Postgres databases (although this now offers implicit TLS too).
From what I understand however, supporting StartTLS varies by protocol, so implementing support may not be worth the effort/maintenance burden if it cannot be offloaded via some existing library? OpenSSL documents a -starttls option with a fairly long list of supported protocols.
If it's helpful to anyone interesting in contributing this feature, this comment references a Lua script from thenmap project, sslcert.lua. That covers various StartTLS protocols beyond just SMTP.
UPDATE: It looks like there's a Go package starttls (part of certigo CLI. Supported and proposed protocol support is tracked here) that could be adopted more easily and should take care of that?
Activity
polarathene commentedon Nov 12, 2025
If it's helpful to anyone interesting in contributing this feature, this comment references a Lua script from the
nmapproject,sslcert.lua. That covers various StartTLS protocols beyond just SMTP.UPDATE: It looks like there's a Go package
starttls(part ofcertigoCLI. Supported and proposed protocol support is tracked here) that could be adopted more easily and should take care of that?