Hi all,
Does Proxmox currently have a way to handle secrets in configuration files or VMs/LXCs?
I am leveraging Terraform to deploy VMs using cloud-init templates.
As part of my configuration, I use additional cloud-init settings to customize and configure virtual machines during deployment.
During deployment, Terraform reads the additional templates from /var/lib/vz/snippets/*.yaml on the Proxmox node it's deploying on and then applies these steps to the VM during the build.
For the most part, these configurations include basic tasks like hardening the VM and installing Docker. However, I’ve encountered scenarios where I need to include secrets in the configuration for more complex deployments.
For obvious reasons, I don’t want to store secrets in plain text. To address this, I’m using HashiCorp's Vault API to fetch secrets during deployment. However, even using short-lived tokens isn't ideal, as it makes the process less repeatable—requiring constant token rotation, which adds complexity and friction to the workflow.
Additionally, this approach still requires me to provide the Vault token in the template, which isn’t secure or efficient.
Does Proxmox currently offer a secret store, or are there any plans to integrate one for managing configurations like this in the future?
It would be great if there were a way to set up secret injection by referencing secrets directly in the VM or template using something like ${my_vault_token}.
Does Proxmox currently have a way to handle secrets in configuration files or VMs/LXCs?
I am leveraging Terraform to deploy VMs using cloud-init templates.
As part of my configuration, I use additional cloud-init settings to customize and configure virtual machines during deployment.
During deployment, Terraform reads the additional templates from /var/lib/vz/snippets/*.yaml on the Proxmox node it's deploying on and then applies these steps to the VM during the build.
For the most part, these configurations include basic tasks like hardening the VM and installing Docker. However, I’ve encountered scenarios where I need to include secrets in the configuration for more complex deployments.
For obvious reasons, I don’t want to store secrets in plain text. To address this, I’m using HashiCorp's Vault API to fetch secrets during deployment. However, even using short-lived tokens isn't ideal, as it makes the process less repeatable—requiring constant token rotation, which adds complexity and friction to the workflow.
Additionally, this approach still requires me to provide the Vault token in the template, which isn’t secure or efficient.
Does Proxmox currently offer a secret store, or are there any plans to integrate one for managing configurations like this in the future?
It would be great if there were a way to set up secret injection by referencing secrets directly in the VM or template using something like ${my_vault_token}.