Skip to content

dcoles/acme-linode-objectstorage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ACME ("Let's Encrypt") client for Linode Object Storage

Automatically provision a Linode Object Storage bucket with a Let's Encrypt certificate.

Requirements

Requires Python 3.8+ with Cryptography and Requests.

pip install cryptography requests

Installing

The easiest way to install is using pip:

pip install --user git+https://github.com/dcoles/acme-linode-objectstorage.git

Alternatively clone this repository and run python3 setup.py install --user.

Usage

This assumes you have already created an Object Storage Bucket for a domain (e.g. my.bucket.domain) and configured a DNS to point to the bucket.

The bucket name and DNS name must be identical.

  1. Generate Let's Encrypt account key:

    openssl genrsa 4096 > account_key.pem
  2. Create a Linode API Personal Access Token with Read/Write permission to Object Storage.

  3. Provision a certificate for this bucket:

    export LINODE_TOKEN=...
    python3 -m acme_linode_objectstorage -k account_key.pem my.bucket.domain

    If this is the first time running the script, you will also need to include the --agree-to-terms-of-service flag to indicate agreement with the Let's Encrypt Terms of Service.

Certificates are typically valid for 90-days. This script should be re-run approximately 30-days prior to certificate expiration.

License

Licenced under the MIT License. See LICENSE for details.

About

ACME ("Let's Encrypt") client for Linode Object Storage

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages