Get signed and valid SSL certificates, create CSRs and the corresponding private keys directly from the command line in usually less than a minute. Easy, secure, fast.
This software is in an early beta stage, feedback is being gathered. Although most things should work there might be unexpected errors or problems. Please report any bugs you may encounter or even better create an MR to fix them.
- Downloader: Download ZeroSSL certificates and convert them to any required format (e.g. .der, .pem, .p12, .pfx)
- Generator: Automate the creation of a huge amount of certificates with the ZeroSSL API (can be used as a library / standalone toolkit)
- Generator: Everything except for certificate creation and domain validation will happen in your local system
- Generator: Can be used as a free tool for CSR creation
- Generator: Can be used as a free tool for self-signed certificate creation
- Go to: https://zerossl.com/
- Create a free account
- Within your dashboard navigate to developer and get your API key
- Now you can create valid SSL certificates with ZeroSSL
- PHP 8.1 or higher
- PHP OpenSSL extension (https://www.php.net/manual/en/book.openssl.php)
- PHP CURL extension (https://www.php.net/manual/de/book.curl.php)
- Optional: Composer (PHP dependency manager, only needed for development, used for autoloading, https://getcomposer.org/)
- Generator: Get a signed SSL certificate in the command line from scratch in less than a minute
- Downloader: Download ZeroSSL certificates in any format which might be required
- CSR Tool: Advanced tool for CSR generation (under construction)
- Certificate Converter: Certificate format conversion tool (under construction)
The script will display native PHP errors with the stack trace in case something goes wrong. In order
to understand what is not working check the first line of the error output. Most likely
you will have a ConfigurationException
, which means you have to adjust your input.
Note: This is not yet completely ready, be free to make MRs for improvement.
Create an options object: $options = new ZeroSSL\CliClient\Dto\Options()
Run: $certificateData = RequestProcessor::generate($options,true);
Have a look at the RequestProcessor objects for the functions you need to achieve what you actually want.