From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate001.proxmox.com (gate001.proxmox.com [IPv6:2a0f:8001:1:32::40]) by lore.proxmox.com (Postfix) with ESMTPS id AAB0D1FF0AB for ; Wed, 09 Sep 2026 13:12:37 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id 8FF1E215F6; Wed, 09 Sep 2026 13:12:34 +0200 (CEST) From: Erik Fastermann To: pbs-devel@lists.proxmox.com Subject: [PATCH proxmox-backup 2/5] report: do not include remote passwords Date: Wed, 9 Sep 2026 13:12:25 +0200 Message-ID: <20260909111228.217535-3-e.fastermann@proxmox.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260909111228.217535-1-e.fastermann@proxmox.com> References: <20260909111228.217535-1-e.fastermann@proxmox.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 1 AWL -0.462 Adjusted score from AWL reputation of From: address DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment (newer systems) KAM_LAZY_DOMAIN_SECURITY 1 Sending domain does not have any anti-forgery methods RDNS_NONE 1.274 Delivered to internal network by a host with no rDNS SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_NONE 0.001 SPF: sender does not publish an SPF Record Message-ID-Hash: MNTDL6TRV7QOLSXY4HVNTENOL7MZSM4J X-Message-ID-Hash: MNTDL6TRV7QOLSXY4HVNTENOL7MZSM4J X-MailFrom: efastermann@ruth.proxmox.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Erik Fastermann X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox Backup Server development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: remote.cfg stores the password or API token of the remote user as a base64 string, which is trivially reversible. As reports are commonly shared with third parties, for example in public forum threads, list the remotes through the API instead, which returns every property but the password. Proxmox Datacenter Manager handles its own remote configuration the same way. The JSON output format is used for two reasons: the text table only covers a subset of the configured properties, and the report runs all commands with PROXMOX_OUTPUT_NO_BORDER set, which also suppresses the table header and thus leaves the columns unlabeled. The latter could alternatively be solved with a custom text formatter, as done for the remote listing in Proxmox Datacenter Manager. Signed-off-by: Erik Fastermann --- src/server/report.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/server/report.rs b/src/server/report.rs index d293aa6dd..c22141810 100644 --- a/src/server/report.rs +++ b/src/server/report.rs @@ -10,7 +10,6 @@ fn project_files() -> Vec { "/etc/proxmox-backup/acl.cfg", ], ), - ("Remotes", vec!["/etc/proxmox-backup/remote.cfg"]), ( "Jobs", vec![ @@ -41,6 +40,10 @@ fn project_commands() -> Vec { ("date", vec!["-R"]), ("proxmox-backup-manager", vec!["versions", "--verbose"]), ("proxmox-backup-manager", vec!["subscription", "get"]), + ( + "proxmox-backup-manager", + vec!["remote", "list", "--output-format", "json-pretty"], + ), ("proxmox-backup-manager", vec!["ldap", "list"]), ("proxmox-backup-manager", vec!["openid", "list"]), ] -- 2.47.3