mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-08-18 09:45:03 +02:00
- replaced CERTBOT_DNS_API_TOKEN with CLOUDFLARE_API_TOKEN everywhere - introduced generic sys-dns-cloudflare-records role for managing DNS records - added sys-dns-hetzner-rdns role with both Cloud (hcloud) and Robot API flavors - updated Mailu role to: - generate DKIM before DNS setup - delegate DNS + rDNS records to the new generic roles - removed legacy per-role Cloudflare vars (MAILU_CLOUDFLARE_API_TOKEN) - extended group vars with HOSTING_PROVIDER for rDNS flavor decision - added hetzner.hcloud collection to requirements This consolidates DNS management into reusable roles, supports both Cloudflare and Hetzner providers, and standardizes variable naming across the project.
Certbot
🔥 Description
This Ansible role automates the installation and configuration of Certbot, a free and open-source tool for automating the deployment of Let's Encrypt certificates. It also handles the setup of DNS plugins for ACME challenges.
📖 Overview
Optimized for Archlinux, this role ensures secure SSL/TLS certificate generation with minimal manual intervention. It supports both webroot
and DNS-01
validation methods, providing flexibility based on your infrastructure needs.
Key Features
- Automatic Installation: Installs
certbot
and the necessary DNS plugin via pacman. - Dynamic DNS Plugin Support: Automatically installs the correct
certbot-dns-<provider>
package based on your selected challenge method. - Credential Management: Creates secure credential files for DNS API tokens when using DNS-01 validation.
- Idempotent Execution: Tasks are intelligently executed only once per playbook run.
🎯 Purpose
The Certbot role provides a ready-to-use, automated solution for SSL/TLS management in your infrastructure. Whether you're managing traditional servers or containerized environments, this role ensures your certificates are always in place and valid.
🚀 Features
- Certbot Installation: Ensures the latest version of Certbot is installed.
- DNS Plugin Installation: Installs a matching plugin based on your configured ACME challenge method.
- Credential Directory Management: Creates a secured
/etc/certbot
directory with proper permissions. - API Token File Setup: Manages API token files securely for DNS challenge authentication.