[GH-ISSUE #394] Letsencrypt broken for IPv6 #334

Closed
opened 2026-02-26 06:32:22 +03:00 by kerem · 1 comment
Owner

Originally created by @thomaspurchas on GitHub (May 2, 2020).
Original GitHub issue: https://github.com/NginxProxyManager/nginx-proxy-manager/issues/394

Checklist

  • Have you pulled and found the error with jc21/nginx-proxy-manager:latest docker image?
  • Are you sure you're not using someone else's docker image?
  • If having problems with Lets Encrypt, have you made absolutely sure your site is accessible from outside of your network?

Describe the bug
Unable to create Lets Encrypt certificates when server is only accessible via IPv6

To Reproduce

  1. Create only AAAA DNS record for domain.
  2. Try and create Lets Encrypt SSL cert.

Expected behaviour
SSL certificate should be created

Additional context
The Let Encrypt .conf does not listen on IPv6.
github.com/jc21/nginx-proxy-manager@4c60bfb66b/backend/templates/letsencrypt-request.conf (L3-L5)

I think this can be fixed by adding

{% if ipv6 -%}
  listen [::]:80;
{% else -%}
  #listen [::]:80;
{% endif %}

to the template, or including _listen.conf instead of statically defining the listen directive

Originally created by @thomaspurchas on GitHub (May 2, 2020). Original GitHub issue: https://github.com/NginxProxyManager/nginx-proxy-manager/issues/394 **Checklist** - Have you pulled and found the error with `jc21/nginx-proxy-manager:latest` docker image? ✅ - Are you sure you're not using someone else's docker image? ✅ - If having problems with Lets Encrypt, have you made absolutely sure your site is accessible from outside of your network? ✅ **Describe the bug** Unable to create Lets Encrypt certificates when server is only accessible via IPv6 **To Reproduce** 1. Create _only_ AAAA DNS record for domain. 2. Try and create Lets Encrypt SSL cert. **Expected behaviour** SSL certificate should be created **Additional context** The Let Encrypt `.conf` does not listen on IPv6. https://github.com/jc21/nginx-proxy-manager/blob/4c60bfb66bae09ae5d3edb930fbd414232951261/backend/templates/letsencrypt-request.conf#L3-L5 I think this can be fixed by adding ``` {% if ipv6 -%} listen [::]:80; {% else -%} #listen [::]:80; {% endif %} ``` to the template, or including `_listen.conf` instead of statically defining the `listen` directive
kerem 2026-02-26 06:32:22 +03:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@jc21 commented on GitHub (May 20, 2020):

Ah yes that would do it..

Thanks for the comprehensive report by the way :)

<!-- gh-comment-id:631435537 --> @jc21 commented on GitHub (May 20, 2020): Ah yes that would do it.. Thanks for the comprehensive report by the way :)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/nginx-proxy-manager-NginxProxyManager#334
No description provided.