From: Christian Ebner <c.ebner@proxmox.com>
To: Samuel Rufinatscha <s.rufinatscha@proxmox.com>,
pbs-devel@lists.proxmox.com
Subject: Re: [PATCH proxmox{,-backup,-datacenter-manager} 0/4] fix #6173: acme: use the configured HTTP proxy
Date: Tue, 27 Oct 2026 15:54:34 +0100 [thread overview]
Message-ID: <16406423-0b43-4ddc-b0e6-8403980a05f8@proxmox.com> (raw)
In-Reply-To: <20261008153323.293158-1-s.rufinatscha@proxmox.com>
On 10/8/26 5:33 PM, Samuel Rufinatscha wrote:
> ACME requests in PBS and PDM ignore the node's HTTP proxy setting and
> fail when the CA is reachable only through a proxy [0].
>
> Add optional proxy support to the shared ACME client and pass the node
> proxy configuration to each operation that contacts the CA.
>
> Testing:
>
> Reproduced the issue on PBS 4.2 using Pebble [1] as the ACME server
> and Tinyproxy [2] as the HTTP proxy configured in PBS. Added a firewall
> rule to block direct access to Pebble while allowing connections through
> Tinyproxy. Operations succeeded through the configured proxy.
>
> Tested for:
>
> (1) HTTP-01 and DNS-01, including proxies requiring
> authentication.
> (2) Automatic renewal using a short-lived Pebble certificate.
> (3) Changed the HTTP proxy setting to a second Tinyproxy instance
> without restarting the PBS services. The next ACME operations used
> the new proxy.
> (4) PDM was built against the shared libraries (only).
>
> Maintainer notes:
>
> - proxmox-acme-api has breaking changes because of the extra
> Option<ProxyConfig> argument.
> - proxmox-acme-api adds the proxmox-http dependency to the impl feature
>
> [0] https://bugzilla.proxmox.com/show_bug.cgi?id=6173
> [1] https://github.com/letsencrypt/pebble
> [2] https://tinyproxy.github.io/
Thanks for the patches, changes look okay to me and work as stated.
But there are two things which are worth improving upon:
- Allowing the user to opt-in or opt-out from using the proxy: How to
approach this best might however be discussed first to be in line with
PVE as well, where this is still an open issue AFAICS [0].
- Log in the task log that the node's http proxy is being used for
connection: This might help users discover issues more easily. Ideally
this would also be shown as additional error context when connection to
the proxy fails, e.g. when adding an new ACME account, instead of the
rather limited `client error (Connect) (400)`
[0]
https://lore.proxmox.com/pve-devel/20240228112412.3982-1-h.laimer@proxmox.com/
prev parent reply other threads:[~2026-10-27 14:54 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-08 15:33 [PATCH proxmox{,-backup,-datacenter-manager} 0/4] fix #6173: acme: use the configured HTTP proxy Samuel Rufinatscha
2026-10-08 15:33 ` [PATCH proxmox 1/2] acme: async_client: support HTTP proxies Samuel Rufinatscha
2026-10-08 15:33 ` [PATCH proxmox 2/2] acme-api: " Samuel Rufinatscha
2026-10-08 15:33 ` [PATCH proxmox-backup 1/1] fix #6173: acme: use the configured HTTP proxy Samuel Rufinatscha
2026-10-08 15:33 ` [PATCH proxmox-datacenter-manager " Samuel Rufinatscha
2026-10-27 14:54 ` Christian Ebner [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=16406423-0b43-4ddc-b0e6-8403980a05f8@proxmox.com \
--to=c.ebner@proxmox.com \
--cc=pbs-devel@lists.proxmox.com \
--cc=s.rufinatscha@proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox