OwnCA makes easy handle Certificate Authority (CA) and manage certificates for hosts, servers or clients.
An example of high level usage:
>>> from ownca import CertificateAuthority
>>> ca = CertificateAuthority(ca_storage='/opt/CA', common_name='MyCorp CA')
>>> example_com = ca.issue_certificate('www.example.com', dns_names=['www.example.com', 'w3.example.com')
Basically in this three lines steps:
-
Imported the ownca Certificate Authority library
-
Created a new CA named as Corp CA that uses
/opt/CA
as CA storage for certificates, keys etc. -
Create a signed certificate by Corp CA server www.mycorp.com, the files are also stored in
/opt/CA/certs/www.example.com
.>>> example_com.cert <Certificate(subject=<Name(CN=www.example.com)>, ...)>
More detailed usage can be found in http://ownca.readthedocs.org
pip install ownca
Visit http://ownca.readthedocs.org
$ git clone [email protected]:OwnCA/ownca.git
$ cd ownca
$ pipenv shell
$ pipenv install -d
Case you have macOS M1
$ pip uninstall cryptography cffi
$ LDFLAGS=-L$(brew --prefix libffi)/lib CFLAGS=-I$(brew --prefix libffi)/include pip install cffi cryptography rust --no-binary :all: