54 lines
2 KiB
Markdown
54 lines
2 KiB
Markdown
# OCSP responder for CAcert
|
|
|
|
This project aims to provide an OCSP responder implementation for CAcert.
|
|
|
|
## License
|
|
|
|
The project is licensed under the terms of the Apache License Version 2.0. See
|
|
LICENSE.txt for details.
|
|
|
|
## Requirements
|
|
|
|
* the sources for OCSP answers should be files in openssl ca's index.txt format as documented
|
|
in https://pki-tutorial.readthedocs.io/en/latest/cadb.html
|
|
* certificates that are not listed in those files will be answered as `unknown`
|
|
* the responder must support multiple CA certificates
|
|
* the responder must support multiple OCSP signing certificates
|
|
* responses must be signed
|
|
* responses must contain the signing certificate
|
|
|
|
## Configuration format
|
|
|
|
The responder is configured using a YAML configuration file `config.yaml` in the working directory.
|
|
|
|
Example:
|
|
|
|
```yaml
|
|
---
|
|
issuers:
|
|
- caCertificate: ca1/rootCA.pem
|
|
responderCertificate: ca1/resp.crt.pem
|
|
responderKey: ca1/resp.key.pem
|
|
certificateList: ca1/index.txt
|
|
- caCertificate: ca2/rootCA.pem
|
|
responderCertificate: ca2/resp.crt.pem
|
|
responderKey: ca2/resp.key.pem
|
|
certificateList: ca2/index.txt
|
|
```
|
|
|
|
Supported configuration keys are:
|
|
|
|
* `issuer`: a list of supported issuer CAs with the following sub keys:
|
|
|
|
* `caCertificate`: the PEM encoded X.509 CA certificate
|
|
* `responderCertificate`: the PEM encoded OCSP responder certificate
|
|
* `responderKey`: the PEM encoded OCSP responder private key. The key must be in PKCS#8 or PKCS#1 format
|
|
* `certificateList`: an openssl ca formatted `index.txt` containing the certificate status of issued certificates
|
|
|
|
All file names may either be given as absolute paths or paths relative to the working directory. The file specified in
|
|
`certificateList` is watched for changes. The certificate database is automatically reloaded when a change is detected.
|
|
|
|
# Command line parameters
|
|
|
|
The responder supports a command line parameter `-serverAddr` that allows the specification of the listening port
|
|
and address. The default for `-serverAddr` is `:8080`.
|