generate self signed ssl certificate, i.e. a private CA certificate
    :param filepath: file path to the key file
    :param keyfile: file path to the private key
    :param days: valid duration for the certificate
    :param silent: whether to suppress output

def sign_cert_request(filepath, cert_req, ca_crt, ca_key, days, extfile,
                      silent=False):
    """
    generate self signed ssl certificate, i.e. a private CA certificate
    :param filepath: file path to the key file
    :param keyfile: file path to the private key
    :param days: valid duration for the certificate
    :param silent: whether to suppress output
    """
    message = 'sign certificate request'
    cmd = ('openssl x509 -req -in {} -CA {} -CAkey {} -CAcreateserial'
           ' -out {} -days {} -extfile {} -extensions v3_req').format(
               cert_req, ca_crt, ca_key, filepath, days, extfile)
    call_openssl(cmd, message, silent)