[ Dumping my thoughts so this doesn't remain completely unanswered for
even longer. ]
On 17-04-18 18:50, Jason A. Donenfeld wrote:
> OpenVPN traditionally works around CAs. However many TLS-based protocols also
> allow an alternative simpler mode in which rather than verify certificates
> against CAs, the certificate itself is hashed and compared against a
> pre-known set of acceptable hashes. This is usually referred to as
> "fingerprint verification". It's popular across SMTP servers, IRC servers,
> XMPP servers, and even in the context of HTTP with pinning.
> So, I'd like to propose an extremely simple and non-invasive way of
> supporting this in OpenVPN, by re-using several features that already
> basically support it. Namely, what I propose is:
> * Allow specifying 'none' to the --ca parameter, to specify that
> certificates should not be checked against a CA. Note that 'none'
> is already used in other similar options as a special placeholder.
> * When '--ca none' is in use, --verify-hash checks all depths instead
> of just level 1.
> With these very simple changes, fingerprint authentication is easily achieved
> via the --tls-verify script on the server and via --verify-hash on the client.
Adding support for fingerprint authentication sounds like a good idea to
me. Even if it was just to simplify config for peer-to-peer and small
(home) setups by getting rid of the need to create and maintain a CA.
So: feature Ack.
However, if we were to add this, I think I'd rather make it a
first-class citizen. For example by adding a peer fingerprint
verification option that works in both client and server configs, and is
mutually exclusive with --ca. I'd expect such an option to accept an
(inline-able) file that contains a list of fingerprints, so one can make
a config like:
Or maybe base64 fingerprints, because a lot of people have been trained
by SSH to recognize short base64 strings as fingerprints.
Anyone else from the community that has some thoughts on this?
As for implementation: I'm already having problems getting to my review
queue, so am not promising to implement this. I would definitely put a
patch for this on my review queue though :)
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
Openvpn-devel mailing list