Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ACME: Improve Cloudflare documentation #1292

Open
wants to merge 1 commit into
base: devel
Choose a base branch
from

Conversation

Vynce
Copy link
Contributor

@Vynce Vynce commented Sep 10, 2023

Many guides on setting up ACME certs with Cloudflare in pfSense show filling out all five authentication fields. This is not required for acme.sh to work correctly and potentially exposes Cloudflare credentials with broad access though the pfSense UI and configuration backups.

There are several ways that acme.sh can authenticate to Cloudflare, from least to most permissive:

  1. Token with Zone.DNS:Edit permission and Zone ID. This only works with certs that cover a single zone.
  2. Token with Zone.Zone:Read and Zone.DNS:Edit permission and Account ID. This works with certs that cover multiple zones. acme.sh uses the Account ID to look up all Zone IDs.
  3. Global API key and email address. This is not recommended since it provides complete access to the entire Cloudflare account.

References:
https://github.com/acmesh-official/acme.sh/wiki/dnsapi#dns_cf
acmesh-official/acme.sh#2398
acmesh-official/acme.sh@c25947d

Many guides on setting up ACME certs with Cloudflare in pfSense show
filling out all five authentication fields. This is not required for
acme.sh to work correctly and potentially exposes Cloudflare credentials
with broad access though the pfSense UI and configuration backups.

There are several ways that acme.sh can authenticate to Cloudflare, from
least to most permissive:

1. Token with Zone.DNS:Edit permission and Zone ID. This only works with
   certs that cover a single zone.
2. Token with Zone.Zone:Read and Zone.DNS:Edit permission and Account
   ID. This works with certs that cover multiple zones. acme.sh uses the
   Account ID to look up all Zone IDs.
3. Global API key and email address. This is not recommended since it
   provides complete access to the entire Cloudflare account.

References:
https://github.com/acmesh-official/acme.sh/wiki/dnsapi#dns_cf
acmesh-official/acme.sh#2398
acmesh-official/acme.sh@c25947d
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant