为了测试 ocsp 实现,我需要一个 ocsp 响应器。是否有任何现成的响应者用于测试目的?或者有什么方法可以在本地主机上运行一些响应器?
1 回答
如果您拥有或获得openssl,它包括一个基本但可用的 OCSP 响应程序;在您的系统或 Web上的“OCSP 服务器选项”中查看 man ocsp(1)(有时是 1ssl 或类似内容)大约一半。(该ocsp
命令还包括客户端/请求者和调试实用程序。)
这旨在支持由 openssl 命令 (qv) 颁发(并可选择撤销)ca
并记录在其“数据库”中的证书,但该数据库只是一个制表符分隔的文本文件(通常但不一定命名index.txt
),您可以使用它对于已经存在的证书,只要它们都具有相同的颁发者名称。当然,您需要一个支持 OCSP 签名的密钥/证书/链来为发行者(或委托人)签名。我以为有关于“数据库”格式的文档,但我找不到它,而且我使用它们太久了,我忘记了我从哪里学到的——它可能来自代码。但是对于(重新)创建的示例,index.txt
请参见https://unix.stackexchange.com/questions/320038/easy-rsa-index-txt-serial-and-duplicates(部分回答我的)。
请注意,一个进程使用一个“数据库”文件并支持一个发行者。如果您需要多个发行者,您可以在具有多个地址的机器上的不同端口和/或不同地址上运行多个进程。如果这不合适,您可以在两者之间放置任何 HTTP 前端,例如 httpd 或 nginx 可以接受混合请求并转发http://myocsp.local/forCA1
到一个openssl ocsp
进程localhost:1001
并转发到另一个进程http://myocsp.local/forCA2
等localhost:1002
。