From: "Lukas Wagner" <l.wagner@proxmox.com>
To: "Shannon Sterz" <s.sterz@proxmox.com>,
"Lukas Wagner" <l.wagner@proxmox.com>,
<pdm-devel@lists.proxmox.com>
Subject: Re: [PATCH proxmox-backup 04/11] config/server/api: add certificate renewal logic including notifications
Date: Wed, 29 Jul 2026 12:08:52 +0200 [thread overview]
Message-ID: <DKAZ0YLQI8TG.3GQ0Q2ADUOUWK@proxmox.com> (raw)
In-Reply-To: <DKAYOZ3FFYYW.1QISE0FM2M6LO@proxmox.com>
On Wed Jul 29, 2026 at 11:53 AM CEST, Shannon Sterz wrote:
>>> +/// Send email for upcoming self signed renewal.
>>> +pub fn send_upcoming_self_signed_renewal_notification() -> Result<(), Error> {
>>> + let metadata = HashMap::from([
>>> + ("hostname".into(), proxmox_sys::nodename().into()),
>>> + ("type".into(), "cert".into()),
>>> + ]);
>>> +
>>> + let notification = Notification::from_template(
>>> + Severity::Info,
>>
>> Maybe this should use Severity::Notice? Since it might require some
>> attention from the user?
>
> imo no, at least not yet. this series does not stage certificates yet
> (like my series for pve would [1]), so there is nothing a user can do at
> this stage. however, the notification further down that a renewal has
> happened needs more attention as fingerprints would need to be
> exchanged. so i'll adjust the severity there.
>
> once we have a staging mechanism in place, we can include the new
> fingerprint in the notification and increase the severity here to make
> users aware this will happen. we can then tell the user to make sure to
> check that any clients are either updated automatically (through a
> mechanism similar to the one in that series) or that they should add the
> fingerprint manually.
>
> [1]: https://lore.proxmox.com/all/20260611120327.257523-1-s.sterz@proxmox.com/
>
Ack!
-->8 snip 8<--
>>
>> I've just realized that we don't really send notifications for
>> successful ACME cert refreshes, so maybe we should do this in the future
>> as well. This would of course be a separate patch series, just thinking
>> out aloud here.
>
> we could, but the point of using acme usually is that you use
> certificates that are trusted by other hosts in you environment.
> meaning, you either use a public acme provider that is generally trusted
> or a private one and add your root cert to the trust stores of the
> systems in your environment.
>
> this means, most users using acme (usually) don't need to do anything
> when successfully refreshing. whereas, a refreshed self-signed
> certificate requires exchanging fingerprints again. otherwise, backups
> will start failing.
>
> so imo, if we want to add a notification for that, it should be lower
> severity than the self-signed certificate one.
>
ack!
>>> + };
>>> +
>>> + send_notification(notification)
>>> +}
>
> -->8 snip 8<--
>
>>> diff --git a/templates/default/cert-upcoming-refresh-body.txt.hbs b/templates/default/cert-upcoming-refresh-body.txt.hbs
>>> new file mode 100644
>>> index 000000000..8d199c9fd
>>> --- /dev/null
>>> +++ b/templates/default/cert-upcoming-refresh-body.txt.hbs
>>> @@ -0,0 +1,9 @@
>>> +Proxmox Backup Server will refresh its TLS certificate within the next 30 days.
>>
>> I wonder, would it be possible to include a concrete date here? If I
>> understood it correctly, the first time the user receives this
>> notification, the renewal would be first attempted in 15 days at the
>> earliest, so maybe this should be mentioned.
>
> i can add a line that the earliest a certificate will updated is in X
> days.
>
> adding a date is imo a bit trickier due to localization. as far as i can
> tell, handlebars [1] currently has no date formatting helpers. so either
> we implement our own, which seems orthogonal to this series and probably
> not worth it if we do decide to switch templating engines in the near
> future. or we don't care about localization and simply decide on one
> format (e.g. YYYY-MM-DD).
>
> what do you think?
>
> [1]: https://github.com/sunng87/handlebars-rust/issues/614
Notifications are not localized at all right now, so I think if we just
use ISO 8601 (so YYYY-MM-DD), it should be clear enough for most users.
>
> -->8 snip 8<--
next prev parent reply other threads:[~2026-07-29 10:09 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-18 11:54 [PATCH datacenter-manager/proxmox{,-backup} 00/11] TLS Certificate Rotation Shannon Sterz
2026-06-18 11:54 ` [PATCH proxmox 01/11] acme-api: make self-signed certificate expiry configurable Shannon Sterz
2026-07-10 11:15 ` Lukas Wagner
2026-07-29 9:53 ` Shannon Sterz
2026-06-18 11:54 ` [PATCH proxmox-backup 02/11] config: use proxmox_acme_api for generating self-signed certificates Shannon Sterz
2026-06-18 11:54 ` [PATCH proxmox-backup 03/11] config: adapt to api change in proxmox_acme_api, add expiry paramter Shannon Sterz
2026-06-18 11:54 ` [PATCH proxmox-backup 04/11] config/server/api: add certificate renewal logic including notifications Shannon Sterz
2026-07-10 11:17 ` Lukas Wagner
2026-07-29 9:53 ` Shannon Sterz
2026-07-29 10:08 ` Lukas Wagner [this message]
2026-07-29 10:13 ` Shannon Sterz
2026-07-29 10:29 ` Lukas Wagner
2026-06-18 11:54 ` [PATCH proxmox-backup 05/11] daily-update/docs: warn on excessive self-signed certificate lifetime Shannon Sterz
2026-07-10 11:17 ` Lukas Wagner
2026-07-29 9:53 ` Shannon Sterz
2026-06-18 11:54 ` [PATCH proxmox-backup 06/11] backup-manager cli: `cert update` can create auth and csrf key Shannon Sterz
2026-06-18 11:54 ` [PATCH datacenter-manager 07/11] certs: adapt to api change in proxmox_acme_api, add expiry paramter Shannon Sterz
2026-06-18 11:54 ` [PATCH datacenter-manager 08/11] api/auth/bin: add certificate renewal logic Shannon Sterz
2026-07-10 11:17 ` Lukas Wagner
2026-07-29 9:53 ` Shannon Sterz
2026-06-18 11:54 ` [PATCH datacenter-manager 09/11] cli: expose certificate management endpoints via the cli Shannon Sterz
2026-06-18 11:54 ` [PATCH datacenter-manager 10/11] daily-update/docs: warn on excessive tls certificate validity periods Shannon Sterz
2026-06-18 11:54 ` [PATCH datacenter-manager 11/11] docs/certificates: use correct certificate file name Shannon Sterz
2026-07-30 13:33 ` [PATCH datacenter-manager/proxmox{,-backup} 00/11] TLS Certificate Rotation Shannon Sterz
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=DKAZ0YLQI8TG.3GQ0Q2ADUOUWK@proxmox.com \
--to=l.wagner@proxmox.com \
--cc=pdm-devel@lists.proxmox.com \
--cc=s.sterz@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.