Skip to main content

Obtain certificates using a DNS TXT record for MyOnlinePortal.net domains

Project description

certbot-dns-myonlineportal

MyOnlinePortal DNS Authenticator plugin for Certbot.

This plugin is built from the ground up and follows the development style and life-cycle of other certbot-dns-* plugins found in the Official Certbot Repository.

Installation

pip install --upgrade certbot
pip install certbot-dns-myonlineportal

Verify:

$ certbot plugins --text

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* dns-myonlineportal
Description: Obtain certificates using a DNS TXT record (if you are using
MyOnlinePortal for DNS).
Interfaces: Authenticator, Plugin
Entry point: dns-myonlineportal =
certbot_dns_myonlineportal.dns_myonlineportal:Authenticator

...
...

Configuration

The credentials file e.g. /etc/letsencrypt/.secrets/myonlineportal-credentials.ini should look like this:

dns_myonlineportal_username = username
dns_myonlineportal_password = password
dns_myonlineportal_endpoint = https://myonlineportal.net/set-acme

Usage

certbot ... \
        --authenticator dns-myonlineportal \
        --dns-myonlineportal-propagation-seconds 90 \
        --dns-myonlineportal-credentials ~/myonlineportal-credentials.ini \
        certonly

Development

Build the docker container

docker build -t certbot/dns-myonlineportal .

Run the docker container

mkdir -p ./var/lib/letsencrypt
mkdir -p ./var/log/letsencrypt
mkdir -p ./etc/letsencrypt
PWD=$(pwd)

docker run \
  --rm \
  -v ${PWD}/var/lib/letsencrypt:/var/lib/letsencrypt \
  -v ${PWD}/var/log/letsencrypt:/var/log/letsencrypt \
  -v ${PWD}/etc/letsencrypt:/etc/letsencrypt \
  --cap-drop=all \
  certbot/dns-myonlineportal certonly --debug \
   --authenticator dns-myonlineportal \
   --dns-myonlineportal-propagation-seconds 90 \
   --dns-myonlineportal-credentials /etc/letsencrypt/.secrets/myonlineportal-credentials.ini \
   --no-self-upgrade \
   --agree-tos \
   --email 'my.email@example.com' \
   --keep-until-expiring --non-interactive --expand \
   --server https://acme-v02.api.letsencrypt.org/directory \
   -d example.myonlineportal.net -d '*.example.myonlineportal.net'

Run the tests

python3 -m unittest certbot_dns_myonlineportal.dns_myonlineportal_test -v

Build the package

python3 -m build

Upload to pypi

python3 -m twine upload --repository testpypi dist/*

Helpful links

MyOnlinePortal api

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

certbot_dns_myonlineportal-0.1.1.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

certbot_dns_myonlineportal-0.1.1-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file certbot_dns_myonlineportal-0.1.1.tar.gz.

File metadata

File hashes

Hashes for certbot_dns_myonlineportal-0.1.1.tar.gz
Algorithm Hash digest
SHA256 63729d27a8e60a07d8130c82844153ff98855e95a73a11dd24a2bf1869d3014c
MD5 6687052a983bc4d1c1955aeec3d7629e
BLAKE2b-256 f348c49a3cf26fc06d05c9e7b49f8da214e700822b4a3b5041fced8b9ce5c32a

See more details on using hashes here.

File details

Details for the file certbot_dns_myonlineportal-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for certbot_dns_myonlineportal-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c8eb752f5f3fa13c9b36a129c695800a9760d6408e973b536039a7ece028684b
MD5 3c90f5e438ec00a93744370dbc384fc7
BLAKE2b-256 dd1d000eef36656a0efb92fa39361d95680904628f1d9130ec86cd00b1d84495

See more details on using hashes here.

Supported by

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