Metadata-Version: 2.1
Name: certbot-plugin-websupport
Version: 0.1.2
Summary: Websupport DNS Authenticator plugin for Certbot
Home-page: https://github.com/Mordred/certbot-plugin-websupport
Author: Martin Jantosovic
Author-email: jantosovic.martin@gmail.com
License: MIT
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Plugins
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Security
Classifier: Topic :: System :: Installation/Setup
Classifier: Topic :: System :: Networking
Classifier: Topic :: System :: Systems Administration
Classifier: Topic :: Utilities
Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
Description-Content-Type: text/markdown
Requires-Dist: certbot (>=0.38.0)
Requires-Dist: requests
Requires-Dist: zope.interface
Provides-Extra: docs
Requires-Dist: Sphinx (>=1.0) ; extra == 'docs'
Requires-Dist: sphinx-rtd-theme ; extra == 'docs'

# Certbot plugin for authentication using Websupport REST API

This is a plugin for [Certbot](https://certbot.eff.org/) that uses the Websupport REST API to allow [Websupport](https://wwww.websupport.sk/)
customers to prove control of a domain name.

## Usage

1. Obtain an API key and API secret (see [Account Page](https://admin.websupport.sk/sk/auth/apiKey))

2. Install the plugin using `pip install certbot-plugin-websupport`

3. Create a `websupport.ini` config file with the following contents and apply `chmod 600 websupport.ini` on it:
   ```
   certbot-plugin-websupport:dns_api_key = APIKEY
   certbot-plugin-websupport:dns_api_secret = SECRET
   ```
   Replace `APIKEY` with your Websupport API key, `SECRET` with your API secret and ensure permissions are set
   to disallow access to other users.

4. Run `certbot` and direct it to use the plugin for authentication and to use
   the config file previously created:
   ```
   certbot certonly -a certbot-plugin-websupport:dns --certbot-plugin-websupport:dns-credentials websupport.ini -d domain.com
   ```
   Add additional options as required to specify an installation plugin etc.

Please note that this solution is usually not relevant if you're using Websupport's web hosting services as Websupport offers free automated certificates for all simplehosting plans having SSL in the admin interface.

## Updates

This plugin can be updated by running:

```
pip install certbot-plugin-websupport --upgrade
```

## Wildcard certificates

This plugin is particularly useful when you need to obtain a wildcard certificate using dns challenges:

```
certbot certonly -a certbot-plugin-websupport:dns --certbot-plugin-websupport:dns-credentials websupport.ini -d domain.com -d \*.domain.com --server https://acme-v02.api.letsencrypt.org/directory
```

## Automatic renewal

You can setup automatic renewal using `crontab` with the following job for weekly renewal attempts:

```
0 0 * * 0 certbot renew -q -a certbot-plugin-websupport:dns --certbot-plugin-websupport:dns-credentials /etc/letsencrypt/websupport/websupport.ini --server https://acme-v02.api.letsencrypt.org/directory
```

