[GH-ISSUE #2448] [Urgent] Certbot command fails when creating new SSL certificate using DNS challenge #1722

Closed
opened 2026-02-26 07:32:13 +03:00 by kerem · 2 comments
Owner

Originally created by @MelvynEzi on GitHub (Dec 3, 2022).
Original GitHub issue: https://github.com/NginxProxyManager/nginx-proxy-manager/issues/2448

Checklist

  • Have you pulled and found the error with jc21/nginx-proxy-manager:latest docker image?
    • Yes
  • Are you sure you're not using someone else's docker image?
    • Yes
  • Have you searched for similar issues (both open and closed)?
    • Yes

Describe the bug

When creating an SSL certificate using DNS challenge, this error appears:

Error: Command failed: certbot certonly --config "/etc/letsencrypt.ini" --cert-name "npm-1" --agree-tos --email "EMAIL REDACTED" --domains "DOMAINS REDACTED" --authenticator dns-porkbun --dns-porkbun-credentials "/etc/letsencrypt/credentials/credentials-1"
Traceback (most recent call last):
  File "/usr/local/bin/certbot", line 5, in 
    from certbot.main import main
  File "/usr/local/lib/python3.7/dist-packages/certbot/main.py", line 6, in 
    from certbot._internal import main as internal_main
  File "/usr/local/lib/python3.7/dist-packages/certbot/_internal/main.py", line 28, in 
    from certbot import crypto_util
  File "/usr/local/lib/python3.7/dist-packages/certbot/crypto_util.py", line 42, in 
    from certbot import interfaces
  File "/usr/local/lib/python3.7/dist-packages/certbot/interfaces.py", line 21, in 
    from acme.client import ClientBase
ImportError: cannot import name 'ClientBase' from 'acme.client' (/usr/local/lib/python3.7/dist-packages/acme/client.py)

    at ChildProcess.exithandler (node:child_process:402:12)
    at ChildProcess.emit (node:events:513:28)
    at maybeClose (node:internal/child_process:1100:16)
    at Socket. (node:internal/child_process:458:11)
    at Socket.emit (node:events:513:28)
    at Pipe. (node:net:301:12)

Nginx Proxy Manager Version

2.9.19

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'SSL Certificates'
  2. Click on 'Add SSL Certificates'
  3. Check 'Use a DNS Challenge'
  4. Click on 'Save'
  5. See error

Expected behavior

SSL certificate created and shown under 'SSL Certificates'

Screenshots

N/A

Operating System

RaspberryPi OS Lite Bullseye

Additional context

Originally created by @MelvynEzi on GitHub (Dec 3, 2022). Original GitHub issue: https://github.com/NginxProxyManager/nginx-proxy-manager/issues/2448 <!-- Are you in the right place? - If you are looking for support on how to get your upstream server forwarding, please consider asking the community on Reddit. - If you are writing code changes to contribute and need to ask about the internals of the software, Gitter is the best place to ask. - If you think you found a bug with NPM (not Nginx, or your upstream server or MySql) then you are in the *right place.* --> **Checklist** - Have you pulled and found the error with `jc21/nginx-proxy-manager:latest` docker image? - Yes - Are you sure you're not using someone else's docker image? - Yes - Have you searched for similar issues (both open and closed)? - Yes **Describe the bug** <!-- A clear and concise description of what the bug is. --> When creating an SSL certificate using DNS challenge, this error appears: ``` Error: Command failed: certbot certonly --config "/etc/letsencrypt.ini" --cert-name "npm-1" --agree-tos --email "EMAIL REDACTED" --domains "DOMAINS REDACTED" --authenticator dns-porkbun --dns-porkbun-credentials "/etc/letsencrypt/credentials/credentials-1" Traceback (most recent call last): File "/usr/local/bin/certbot", line 5, in from certbot.main import main File "/usr/local/lib/python3.7/dist-packages/certbot/main.py", line 6, in from certbot._internal import main as internal_main File "/usr/local/lib/python3.7/dist-packages/certbot/_internal/main.py", line 28, in from certbot import crypto_util File "/usr/local/lib/python3.7/dist-packages/certbot/crypto_util.py", line 42, in from certbot import interfaces File "/usr/local/lib/python3.7/dist-packages/certbot/interfaces.py", line 21, in from acme.client import ClientBase ImportError: cannot import name 'ClientBase' from 'acme.client' (/usr/local/lib/python3.7/dist-packages/acme/client.py) at ChildProcess.exithandler (node:child_process:402:12) at ChildProcess.emit (node:events:513:28) at maybeClose (node:internal/child_process:1100:16) at Socket. (node:internal/child_process:458:11) at Socket.emit (node:events:513:28) at Pipe. (node:net:301:12) ``` **Nginx Proxy Manager Version** <!-- What version of Nginx Proxy Manager is reported on the login page? --> 2.9.19 **To Reproduce** Steps to reproduce the behavior: 1. Go to 'SSL Certificates' 2. Click on 'Add SSL Certificates' 3. Check 'Use a DNS Challenge' 4. Click on 'Save' 5. See error **Expected behavior** <!-- A clear and concise description of what you expected to happen. --> SSL certificate created and shown under 'SSL Certificates' **Screenshots** <!-- If applicable, add screenshots to help explain your problem. --> N/A **Operating System** <!-- Please specify if using a Rpi, Mac, orchestration tool or any other setups that might affect the reproduction of this error. --> RaspberryPi OS Lite Bullseye **Additional context** <!-- Add any other context about the problem here, docker version, browser version, logs if applicable to the problem. Too much info is better than too little. --> - https://github.com/certbot/certbot/pull/9356/commits/21dbe0cc7d06ed5c8b01153820f7f3cb28631cb2 This commit have removed some deprecated code from Certbot, and the removal of 'ClientBase' causes NPM to break.
kerem 2026-02-26 07:32:13 +03:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@eosti commented on GitHub (Dec 3, 2022):

A workaround can be found here in #2430

<!-- gh-comment-id:1336266064 --> @eosti commented on GitHub (Dec 3, 2022): A workaround can be found [here](https://github.com/NginxProxyManager/nginx-proxy-manager/issues/2430#issuecomment-1331687301) in #2430
Author
Owner

@MelvynEzi commented on GitHub (Dec 4, 2022):

A workaround can be found here in #2430

Can confirm workaround works. Hoping for a fix on NPM end.

<!-- gh-comment-id:1336336180 --> @MelvynEzi commented on GitHub (Dec 4, 2022): > A workaround can be found [here](https://github.com/NginxProxyManager/nginx-proxy-manager/issues/2430#issuecomment-1331687301) in #2430 Can confirm workaround works. Hoping for a fix on NPM end.
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#1722
No description provided.