mirror of
https://github.com/certbot/certbot.git
synced 2026-01-21 19:01:07 +03:00
43 lines
1.1 KiB
Python
43 lines
1.1 KiB
Python
import logging
|
|
import os
|
|
import pkg_resources
|
|
|
|
import M2Crypto
|
|
|
|
from acme import messages2
|
|
from acme import jose
|
|
|
|
from letsencrypt import network2
|
|
|
|
|
|
logger = logging.getLogger()
|
|
logger.setLevel(logging.DEBUG)
|
|
|
|
NEW_REG_URL = 'https://www.letsencrypt-demo.org/acme/new-reg'
|
|
|
|
key = jose.JWKRSA.load(pkg_resources.resource_string(
|
|
'acme.jose', os.path.join('testdata', 'rsa512_key.pem')))
|
|
net = network2.Network(NEW_REG_URL, key)
|
|
|
|
regr = net.register(contact=(
|
|
'mailto:cert-admin@example.com', 'tel:+12025551212'))
|
|
logging.info('Auto-accepting TOS: %s', regr.terms_of_service)
|
|
net.update_registration(regr.update(
|
|
body=regr.body.update(agreement=regr.terms_of_service)))
|
|
logging.debug(regr)
|
|
|
|
authzr = net.request_challenges(
|
|
identifier=messages2.Identifier(
|
|
typ=messages2.IDENTIFIER_FQDN, value='example1.com'),
|
|
new_authzr_uri=regr.new_authzr_uri)
|
|
logging.debug(authzr)
|
|
|
|
authzr, authzr_response = net.poll(authzr)
|
|
|
|
csr = M2Crypto.X509.load_request_string(pkg_resources.resource_string(
|
|
'letsencrypt.tests', os.path.join('testdata', 'csr.pem')))
|
|
try:
|
|
net.request_issuance(csr, (authzr,))
|
|
except messages2.Error as error:
|
|
print error.detail
|