docs: add initial TFA documentation
better than nothing.. Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
parent
ca953d831f
commit
f9fcac51a5
@ -284,3 +284,91 @@ you can use the ``proxmox-backup-manager user permission`` command:
|
|||||||
|
|
||||||
Path: /datastore/store1
|
Path: /datastore/store1
|
||||||
- Datastore.Backup (*)
|
- Datastore.Backup (*)
|
||||||
|
|
||||||
|
.. _user_tfa:
|
||||||
|
Two-factor authentication
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
Introduction
|
||||||
|
~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Simple authentication requires only secret piece of evidence (one factor) that
|
||||||
|
a user can successfully claim a identiy (authenticate), for example, that you
|
||||||
|
are allowed to login as `root@pam` on a specific Proxmox Backup Server.
|
||||||
|
If the password gets stolen, or leaked in another way, anybody can use it to
|
||||||
|
login - even if they should not be allowed to do so.
|
||||||
|
|
||||||
|
With Two-factor authentication (TFA) a user is asked for an additional factor,
|
||||||
|
to proof his authenticity. The extra factor is different from a password
|
||||||
|
(something only the user knows), it is something only the user has, for example
|
||||||
|
a piece of hardware (security key) or an secret saved on the users smartphone.
|
||||||
|
|
||||||
|
This means that a remote user can never get hold on such a physical object. So,
|
||||||
|
even if that user would know your password they cannot successfully
|
||||||
|
authenticate as you, as your second factor is missing.
|
||||||
|
|
||||||
|
Available Second Factors
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
You can setup more than one second factor to avoid that losing your smartphone
|
||||||
|
or security key permanently locks you out from your account.
|
||||||
|
|
||||||
|
There are three different two-factor authentication methods supported:
|
||||||
|
|
||||||
|
* TOTP (`Time-based One-Time Password <https://en.wikipedia.org/wiki/Time-based_One-Time_Password>`_).
|
||||||
|
A short code derived from a shared secret and the current time, it switches
|
||||||
|
every 30 seconds.
|
||||||
|
|
||||||
|
* WebAuthn (`Web Authentication <https://en.wikipedia.org/wiki/WebAuthn>`_).
|
||||||
|
A general standard for authentication. It is implemented by various security
|
||||||
|
devices like hardware keys or trusted platform modules (TPM) from a computer
|
||||||
|
or smart phone.
|
||||||
|
|
||||||
|
* Single use Recovery Keys. A list of keys which should either be printed out
|
||||||
|
and locked in a secure fault or saved digitally in a electronic vault.
|
||||||
|
Each key can be used only once, they are perfect for ensuring you are not
|
||||||
|
locked out even if all of your other second factors are lost or corrupt.
|
||||||
|
|
||||||
|
|
||||||
|
Setup
|
||||||
|
~~~~~
|
||||||
|
|
||||||
|
.. _user_tfa_setup_totp:
|
||||||
|
TOTP
|
||||||
|
^^^^
|
||||||
|
There is not server setup required, simply install a TOTP app on your
|
||||||
|
smartphone (for example, `FreeOTP <https://freeotp.github.io/>`_) and use the
|
||||||
|
Proxmox Backup Server web-interface to add a TOTP factor.
|
||||||
|
|
||||||
|
.. _user_tfa_setup_webauthn:
|
||||||
|
WebAuthn
|
||||||
|
^^^^^^^^
|
||||||
|
|
||||||
|
For WebAuthn to work you need to have two things:
|
||||||
|
|
||||||
|
* a trusted HTTPS certificate (for example, by using `Let's Encrypt
|
||||||
|
<https://pbs.proxmox.com/wiki/index.php/HTTPS_Certificate_Configuration>`_)
|
||||||
|
|
||||||
|
* setup the WebAuthn configuration (see *Configuration -> Authentication* in the
|
||||||
|
Proxmox Backup Server web-interface). This can be auto-filled in most setups.
|
||||||
|
|
||||||
|
Once you fullfilled both of those requirements, you can add a WebAuthn
|
||||||
|
configuration in the *Access Control* panel.
|
||||||
|
|
||||||
|
.. _user_tfa_setup_recovery_keys:
|
||||||
|
Recovery Keys
|
||||||
|
^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
Recovery key codes do not need any preparation, you can simply create a set of
|
||||||
|
recovery keys in the *Access Control* panel.
|
||||||
|
|
||||||
|
.. note:: There can only be one set of single-use recovery keys per user at any
|
||||||
|
time.
|
||||||
|
|
||||||
|
TFA and Automated Access
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Two-factor authentication is only implemented for the web-interface, you should
|
||||||
|
use :ref:`API Tokens <user_tokens>` for all other use cases, especially
|
||||||
|
non-interactive ones (for example, adding a Proxmox Backup server to Proxmox VE
|
||||||
|
as a storage).
|
||||||
|
Loading…
Reference in New Issue
Block a user