Skip to main content

A simple command line tools to create and read CSR and P12

Project description

Python module to generate key, certificate request and self signed certificate

Information

This can be used only with python2.7

Getting started

required modules:

  • Click

  • pycparser

  • PyYAML

Installing package using pip

$ pip install --user CertGenerator

Add symbolic link

$ sudo ln -s /Users/{user}/Library/Python/2.7/bin/cert /usr/bin/cert

or

$ cd /usr/bin
$ sudo ln -s /Users/{user}/Library/Python/2.7/bin/cert

Usage

Usage: cli.py [OPTIONS] COMMAND [ARGS]...

  A command line tool to create and read CSR and P12

Options:
  -v, --verbose  Display only if necessary
  -d, --debug    Display all details
  --version      show version and exit
  -h, --help     Show this message and exit.

Commands:
  config               Edit or read config ini
  create               Create a single CSR
  create-multiple      Create multiple certificate using csv file
  create-multiple-p12  Create multiple p12 using csv file
  create-p12           Create a simple p12 Need key file and pem file
  init                 Create certificate folder and default csv file
  read                 Read csr or p12

On terminal you can use:

$ cert [ARGS]

The folder folder will be created in /Users/{user}/Documents/CertGenerator

.CertGenerator
├── certificate
│   ├── csr
│   └── p12
├── csr.yaml
├── csv
│   └── serial.csv
└── log
    └── certgen.log

You can change default app folder using init arg:

$ cert init -cert {path}

the new folder will be structured the same way

Optional configurations file

config.ini

2 sections in config.ini

  • default
    • log_file is the log of file, where are referenced errors and warnings

  • config
    • csvFile is csv file to create several csr

    • yamlFile is the yaml file to configure the datas of the csr

a third section custom can be added to change default app folder see config.

In config.ini:

[default]
log_file = certgen.log

[config]
csvfile = serial.csv
yamlfile = csr.yaml

Config add custom path to config ini

Read config ini

$ cert config read

Change default path of app and default csv file path or csv name, it will add a custom section

$ cert config edit [-cert [path/to/app folder]] [-csv [path/to/csv or csv file]]

Delete custom path of app or csv file, if no flag, it will delete the entire custom section

$ cert config delete [[-cert] [-csv]]

yaml

CertGenerator
|── csr.yaml

In csr.yaml:

C: 'FR'
O: 'FTW Enterprise'
OU: 'IT'
CN: 'Test'
emailAddress: 'csr@test.com'

csv

CertGenerator
├── csv
│   └── serial.csv
  • You must add header column ‘serial’

  • you can create multiple csr using csv file in csv folder

  • The row from csv will be added in CN.

serial.csv

serial

SN123456

SNjhgjkhkjh

SDjhijoklklk

SN654

Create Certificate

Create one certificate

$ cert create [FQDN]

using config.ini:

$ cert create -c [FQDN]

Create multiple certificate

using csv file:

$ cert create-multiple [--csv=[path/csv or csv name]]

using config.ini:

$ cert -c create-multiple [--csv=[path/csv or csv name]]

Please note, –csv override csv from config.ini

Read certificate

$ cert read [path/of/csr]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

CertGenerator-2.1.1.tar.gz (16.1 kB view details)

Uploaded Source

Built Distribution

CertGenerator-2.1.1-py2-none-any.whl (18.9 kB view details)

Uploaded Python 2

File details

Details for the file CertGenerator-2.1.1.tar.gz.

File metadata

  • Download URL: CertGenerator-2.1.1.tar.gz
  • Upload date:
  • Size: 16.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.10

File hashes

Hashes for CertGenerator-2.1.1.tar.gz
Algorithm Hash digest
SHA256 508c51e3ed7ecdcec91714ef0d6a8d9cf40b2b288eac4c9663ea2cba89731ff1
MD5 b86ccf9a70a072ff060edaaa71e5c2fe
BLAKE2b-256 10eebad3eff14f0b64641c51cde71e8e98674b0c95afdc7e332959f827cf86ac

See more details on using hashes here.

File details

Details for the file CertGenerator-2.1.1-py2-none-any.whl.

File metadata

  • Download URL: CertGenerator-2.1.1-py2-none-any.whl
  • Upload date:
  • Size: 18.9 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.10

File hashes

Hashes for CertGenerator-2.1.1-py2-none-any.whl
Algorithm Hash digest
SHA256 29a92ba36727434b133d3e328a05c28e2bdbc2086c010e95438796f78a05043f
MD5 153b4c6eb500d5505aed0f1083ef8560
BLAKE2b-256 2e9775a8f044bd894c2ca7f60936ad343cf038395900bc886d63e41e1272d096

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page