gwcert#

PyPI Status Python Version License

Read the documentation at https://gridworks-cert.readthedocs.io/ Tests Codecov

pre-commit Black

Tools for creating TLS certificates for use with, e.g. MQTT and RabbitMQ.

NOTE: these are temporary tools for non-production deployments. This library is more or less equivalent to a README containing OpenSSL commands, but less manual.

This library is a thin wrapper around ownca, which wraps pyca/cryptography, which wraps the OpenSSL C library. See also tls-gen, a repo from rabbitmq, which performs a similar task using a stack of make/python/OpenSSL CLI.

Features#

  • Create a local Certificate Authority directory with a self-signed certificate, via gwcert ca create.

  • Create named key pairs, CSRs and certificates with arbitrary input and output paths, via gwcert key add.

  • Build cli commands visually with gwcert tui.

Installation#

The recommended way to install gwcert is with pipx from PyPI:

$ pipx install gridworks-cert

Usage#

Get help with any of:

gwcert
gwcert ca
gwcert key

Create a Certificate Authority directory with a self-signed certificate via:

gwcert ca create

Show information about the locally created ca and keys with:

gwcert ca info

Add a named set of keys (public, private, certificate) via, for example:

gwcert key add KEY_NAME

Show information about a certificate:

gwcert key info KEY_NAME

Build CLI commands visually:

gwcert tui

Please see the Command-line Reference for more details.

Contributing#

Contributions are very welcome. To learn more, see the Contributor Guide.

License#

Distributed under the terms of the MIT license, gwcert is free and open source software.

Issues#

If you encounter any problems, please file an issue along with a detailed description.

Credits#

This project was generated from @cjolowicz’s Hypermodern Python Cookiecutter template.