]> git.proxmox.com Git - pve-docs.git/blame - pve-storage-pbs.adoc
vzdump: drop overly scary & outdated warning about fleecing
[pve-docs.git] / pve-storage-pbs.adoc
CommitLineData
93e1d33e
TL
1[[storage_pbs]]
2Proxmox Backup Server
3---------------------
4ifdef::wiki[]
5:pve-toplevel:
6:title: Storage: Proxmox Backup Server
7endif::wiki[]
8
9Storage pool type: `pbs`
10
11This backend allows direct integration of a Proxmox Backup Server into {pve}
12like any other storage.
13A Proxmox Backup storage can be added directly through the {pve} API, CLI or
135789c0 14the web interface.
93e1d33e
TL
15
16Configuration
17~~~~~~~~~~~~~
18
19The backend supports all common storage properties, except the shared flag,
20which is always set. Additionally, the following special properties to Proxmox
21Backup Server are available:
22
23server::
24
25Server IP or DNS name. Required.
26
f8564fdd
FE
27port::
28
29Use this port instead of the default one, i.e. `8007`. Optional.
30
93e1d33e
TL
31username::
32
33The username for the Proxmox Backup Server storage. Required.
34
35TIP: Do not forget to add the realm to the username. For example, `root@pam` or
36`archiver@pbs`.
37
38password::
39
40The user password. The value will be saved in a file under
92192603
TL
41`/etc/pve/priv/storage/<STORAGE-ID>.pw` with access restricted to the root
42user. Required.
93e1d33e
TL
43
44datastore::
45
46The ID of the Proxmox Backup Server datastore to use. Required.
47
48fingerprint::
49
50The fingerprint of the Proxmox Backup Server API TLS certificate. You can get
51it in the Servers Dashboard or using the `proxmox-backup-manager cert info`
52command. Required for self-signed certificates or any other one where the host
53does not trusts the servers CA.
54
55encryption-key::
56
57A key to encrypt the backup data from the client side. Currently only
58non-password protected (no key derive function (kdf)) are supported. Will be
92192603
TL
59saved in a file under `/etc/pve/priv/storage/<STORAGE-ID>.enc` with access
60restricted to the root user. Use the magic value `autogen` to automatically
61generate a new one using `proxmox-backup-client key create --kdf none <path>`.
62Optional.
93e1d33e 63
8200df48
FG
64master-pubkey::
65
66A public RSA key used to encrypt the backup encryption key as part of the
67backup task. The encrypted copy will be appended to the backup and stored on
68the Proxmox Backup Server instance for recovery purposes.
69Optional, requires `encryption-key`.
70
93e1d33e
TL
71.Configuration Example (`/etc/pve/storage.cfg`)
72----
73pbs: backup
74 datastore main
75 server enya.proxmox.com
76 content backup
77 fingerprint 09:54:ef:..snip..:88:af:47:fe:4c:3b:cf:8b:26:88:0b:4e:3c:b2
5c85b0a1 78 prune-backups keep-all=1
93e1d33e
TL
79 username archiver@pbs
80----
81
82Storage Features
83~~~~~~~~~~~~~~~~
84
85Proxmox Backup Server only supports backups, they can be block-level or
86file-level based. {pve} uses block-level for virtual machines and file-level for
87container.
88
73d19b42 89.Storage features for backend `pbs`
93e1d33e
TL
90[width="100%",cols="m,4*d",options="header"]
91|===============================================================
92|Content types |Image formats |Shared |Snapshots |Clones
93|backup |n/a |yes |n/a |n/a
94|===============================================================
95
1658c673
FE
96[[storage_pbs_encryption]]
97Encryption
98~~~~~~~~~~
99
55ebc079
TL
100[thumbnail="screenshot/storage-pbs-encryption-with-key.png"]
101
1658c673
FE
102Optionally, you can configure client-side encryption with AES-256 in GCM mode.
103Encryption can be configured either via the web interface, or on the CLI with
104the `encryption-key` option (see above). The key will be saved in the file
105`/etc/pve/priv/storage/<STORAGE-ID>.enc`, which is only accessible by the root
106user.
107
108WARNING: Without their key, backups will be inaccessible. Thus, you should
109keep keys ordered and in a place that is separate from the contents being
110backed up. It can happen, for example, that you back up an entire system, using
111a key on that system. If the system then becomes inaccessible for any reason
112and needs to be restored, this will not be possible as the encryption key will be
113lost along with the broken system.
114
f1edca2e 115It is recommended that you keep your key safe, but easily accessible, in
1658c673
FE
116order for quick disaster recovery. For this reason, the best place to store it
117is in your password manager, where it is immediately recoverable. As a backup to
451839ed 118this, you should also save the key to a USB flash drive and store that in a secure
1658c673
FE
119place. This way, it is detached from any system, but is still easy to recover
120from, in case of emergency. Finally, in preparation for the worst case scenario,
f1edca2e
FE
121you should also consider keeping a paper copy of your key locked away in a safe
122place. The `paperkey` subcommand can be used to create a QR encoded version of
123your key. The following command sends the output of the `paperkey` command to
124a text file, for easy printing.
1658c673
FE
125
126----
f1edca2e 127# proxmox-backup-client key paperkey /etc/pve/priv/storage/<STORAGE-ID>.enc --output-format text > qrkey.txt
1658c673
FE
128----
129
8200df48
FG
130Additionally, it is possible to use a single RSA master key pair for key
131recovery purposes: configure all clients doing encrypted backups to use a
132single public master key, and all subsequent encrypted backups will contain a
133RSA-encrypted copy of the used AES encryption key. The corresponding private
134master key allows recovering the AES key and decrypting the backup even if the
135client system is no longer available.
136
137WARNING: The same safe-keeping rules apply to the master key pair as to the
138regular encryption keys. Without a copy of the private key recovery is not
139possible! The `paperkey` command supports generating paper copies of private
140master keys for storage in a safe, physical location.
141
1658c673
FE
142Because the encryption is managed on the client side, you can use the same
143datastore on the server for unencrypted backups and encrypted backups, even
144if they are encrypted with different keys. However, deduplication between
145backups with different keys is not possible, so it is often better to create
146separate datastores.
147
148NOTE: Do not use encryption if there is no benefit from it, for example, when
149you are running the server locally in a trusted network. It is always easier to
150recover from unencrypted backups.
151
2309c050
TL
152Example: Add Storage over CLI
153~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
93e1d33e
TL
154
155// TODO: FIXME: add once available
156//You can get a list of exported CIFS shares with:
157//
158//----
159//# pvesm scan pbs <server> [--username <username>] [--password]
160//----
161
162Then you could add this share as a storage to the whole {pve} cluster
163with:
164
165----
166# pvesm add pbs <id> --server <server> --datastore <datastore> --username <username> --fingerprint 00:B4:... --password
167----
168
169ifdef::wiki[]
170
171See Also
172~~~~~~~~
173
174* link:/wiki/Storage[Storage]
175
176endif::wiki[]