- Star
- 109
- Fork
- 6
- 未关闭 Issue
- 19
- 最近提交
- 4天前
这是什么?
sslx 是一个处理 X.509 证书和 TLS 连接的命令行工具,把通常需要组合多条 openssl 命令完成的工作整合到一个程序里。它可以查看证书、检查目标主机的 TLS 握手和证书链、用 CA 证书包验证证书链,以及确认证书与私钥是否匹配。程序基于 rustls 构建,不依赖系统安装的 OpenSSL。
除了检查功能,sslx 还能对主机的 TLS 配置进行 A+ 到 F 的评级,评估协议版本、密码套件、证书有效期、密钥类型、主机名匹配、证书链完整性和 ALPN 等项目。expiry 命令可以一次检查多个主机的证书过期情况,若有证书在 7 天内过期则以退出码 1 结束,适合用于定时任务或 CI 流水线。此外,它还能生成自签名证书和 CSR,在 PEM、DER 与 PKCS12 之间转换格式,并解码文件或 JWT 令牌。
所有命令都支持 --json 参数,便于脚本调用。项目提供 bash、zsh 和 fish 的自动补全脚本,可通过 cargo、Homebrew 或预编译二进制安装。
核心功能
- 01对主机的 TLS 配置从协议、密码套件、证书和证书链等方面评为 A+ 到 F。
- 02一次检查多个主机的证书有效期,临近过期时返回非零退出码。
- 03查看 PEM 和 DER 格式证书,支持多证书的证书包。
- 04生成自签名证书和证书签名请求(CSR)。
- 05在 PEM、DER 与 PKCS12 格式之间转换,并从 PKCS12 中提取证书和私钥。
- 06解码文件与 JWT 令牌,所有命令均支持 JSON 输出。
适用场景
- 在定时任务或 CI 流水线中批量检查多台主机的证书过期时间。
- 排查服务器上的 TLS 握手失败或证书链错误。
- 为本地开发生成自签名证书。
- 生成 CSR 以提交给证书颁发机构。
快速上手
- 1
使用 Cargo 安装 sslx 二进制文件
cargo install sslx - 2
评估某个主机的 TLS 配置
sslx grade github.com - 3
为本地开发生成自签名证书
sslx generate --cn localhost --san "*.local,127.0.0.1"
使用前须知
- README 中的基准测试仅在 macOS M2 上进行,其他平台的性能未经验证。
- 该项目较新,仅有 94 个星标,且未说明稳定版本发布情况。
收录于专题
标签
常见问题
- sslx 是什么?
- 一个用 Rust 编写的单文件命令行工具,用于查看、评级和管理证书及 TLS 连接,是 OpenSSL 命令行的简易替代。 sslx 是一个处理 X.509 证书和 TLS 连接的命令行工具,把通常需要组合多条 openssl 命令完成的工作整合到一个程序里。它可以查看证书、检查目标主机的 TLS 握手和证书链、用 CA 证书包验证证书链,以及确认证书与私钥是否匹配。程序基于 rustls 构建,不依赖系统安装的 OpenSSL。
- sslx 可以免费使用吗?用的什么许可证?
- sslx 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- sslx 还在维护吗?
- 活跃维护中。sslx 最近一次提交是在 2026年10月21日。
- sslx 适合用来做什么?
- 在定时任务或 CI 流水线中批量检查多台主机的证书过期时间。 排查服务器上的 TLS 握手失败或证书链错误。 为本地开发生成自签名证书。 生成 CSR 以提交给证书颁发机构。
- sslx 怎么安装和运行?
- 使用 Cargo 安装 sslx 二进制文件: cargo install sslx 评估某个主机的 TLS 配置: sslx grade github.com 为本地开发生成自签名证书: sslx generate --cn localhost --san "*.local,127.0.0.1"
- 在哪里获取 sslx?
- 源代码和安装说明在 GitHub 上:https://github.com/glincker/sslx
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一款命令行工具,用于从服务器提取 TLS/SSL 证书,并导出为 PEM、DER 或信任库格式。
开源安全基础设施平台,统一管理密钥、证书、加密密钥、特权访问和 AI 智能体凭证。
一个单文件 Rust 命令行工具,可立即通过 HTTP 共享文件和目录,支持认证、上传和 TLS。
一个小巧、可移植的 C 语言库,实现 X.509 证书处理及 TLS、DTLS 协议,适合嵌入式系统。
一款支持 TLS 的交互式拦截 HTTP 代理,提供终端、命令行和 Web 三种界面,用于查看 HTTP/1、HTTP/2 和 WebSocket 流量。