0ef119efa6469736b68820fff8846ac5e0e02e60
Introduction
First, RTFM.
Have you read it? If you haven't go read it. Cuz I'll keep everything short.
This is a dns01 solver for FreeDNS.
Pull requests welcome. I'm now somewhat familiar with golang. You can also look at other and choose the one that fits your need.
Install
$ cd deploy
$ helm show values freedns-webhook > my-values.yaml
$ edit my-values.yaml
$ helm install -n cert-manager [INSTALLATION_NAME] freedns-webhook/ -f my-values.yaml
ClusterIssuer for Let's encrypt staging
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
name: letsencrypt-staging
spec:
acme:
email: myemail@example.com
server: https://acme-staging-v02.api.letsencrypt.org/directory
privateKeySecretRef:
name: le-staging
solvers:
- dns01:
webhook:
groupName: acme.freedns.afraid.org
solverName: freedns-solver
config:
secretName: freedns-auth
FreeDNS webhook settings
Normally if you haven't changed anything, the default namespace should be
cert-manager. It should be within the same namespace for the webhook when
you do helm install webhook -n cert-manager.
Additionally, the following names can be customized
- acme.freedns.afraid.org
UPDATE
2026-05-21
- Merged the latest upstream changes.
- Added
SOCKS5_PROXYsupport to work around FreeDNS IP-based blocking. - Added Helm values support for pinning container images by digest.
- Fixed the logging implementation to use cert-manager’s logging infrastructure correctly.
- Moved the default container image registry from Docker Hub to GHCR.
2024-10-30
- Merged from upstream, now works on 1.31 cluster
2024-11-02
- Webhook will now properly logs its actions
- Removed permissions to read secrets from pod for obvious reansons
- Authentication details are now requested from Helm
- You should remove the old secret
freedns-auth. It is now handled by Helm.
Description
Languages
Go
75.8%
Makefile
16.3%
Go Template
5.6%
Dockerfile
2.3%