From: Hanna Reitz <hreitz@redhat.com>
To: "Daniel P. Berrangé" <berrange@redhat.com>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
"Richard W.M. Jones" <rjones@redhat.com>,
qemu-block@nongnu.org
Subject: Re: [PATCH 1/3] block: better document SSH host key fingerprint checking
Date: Thu, 23 Dec 2021 10:37:08 +0100 [thread overview]
Message-ID: <bedd1afd-8926-d43c-400e-092cb5d413b1@redhat.com> (raw)
In-Reply-To: <20211118143547.2045554-2-berrange@redhat.com>
On 18.11.21 15:35, Daniel P. Berrangé wrote:
> The docs still illustrate host key fingerprint checking using the old
> md5 hashes which are considered insecure and obsolete. Change it to
> illustrate using a sha256 hash. Also show how to extract the hash
> value from the known_hosts file.
>
> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
> ---
> docs/system/qemu-block-drivers.rst.inc | 30 ++++++++++++++++++++++----
> 1 file changed, 26 insertions(+), 4 deletions(-)
>
> diff --git a/docs/system/qemu-block-drivers.rst.inc b/docs/system/qemu-block-drivers.rst.inc
> index 16225710eb..2aeeaf6361 100644
> --- a/docs/system/qemu-block-drivers.rst.inc
> +++ b/docs/system/qemu-block-drivers.rst.inc
> @@ -778,10 +778,32 @@ The optional *HOST_KEY_CHECK* parameter controls how the remote
> host's key is checked. The default is ``yes`` which means to use
> the local ``.ssh/known_hosts`` file. Setting this to ``no``
> turns off known-hosts checking. Or you can check that the host key
> -matches a specific fingerprint:
> -``host_key_check=md5:78:45:8e:14:57:4f:d5:45:83:0a:0e:f3:49:82:c9:c8``
> -(``sha1:`` can also be used as a prefix, but note that OpenSSH
> -tools only use MD5 to print fingerprints).
> +matches a specific fingerprint. The fingerprint can be provided in
> +``md5``, ``sha1``, or ``sha256`` format, however, it is strongly
> +recommended to only use ``sha256``, since the other options are
> +considered insecure by modern standards. The fingerprint value
> +must be given as a hex encoded string::
> +
> + host_key_check=sha256:04ce2ae89ff4295a6b9c4111640bdcb3297858ee55cb434d9dd88796e93aa795``
I think the backticks at the end of this line should be dropped.
With that done:
Reviewed-by: Hanna Reitz <hreitz@redhat.com>
> +
> +The key string may optionally contain ":" separators between
> +each pair of hex digits.
> +
> +The ``$HOME/.ssh/known_hosts`` file contains the base64 encoded
> +host keys. These can be converted into the format needed for
> +QEMU using a command such as::
> +
> + $ for key in `grep 10.33.8.112 known_hosts | awk '{print $3}'`
> + do
> + echo $key | base64 -d | sha256sum
> + done
> + 6c3aa525beda9dc83eadfbd7e5ba7d976ecb59575d1633c87cd06ed2ed6e366f -
> + 12214fd9ea5b408086f98ecccd9958609bd9ac7c0ea316734006bc7818b45dc8 -
> + d36420137bcbd101209ef70c3b15dc07362fbe0fa53c5b135eba6e6afa82f0ce -
> +
> +Note that there can be multiple keys present per host, each with
> +different key ciphers. Care is needed to pick the key fingerprint
> +that matches the cipher QEMU will negotiate with the remote server.
>
> Currently authentication must be done using ssh-agent. Other
> authentication methods may be supported in future.
next prev parent reply other threads:[~2021-12-23 9:37 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-18 14:35 [PATCH 0/3] block: misc fixes & improvements for SSH block driver key fingerprints Daniel P. Berrangé
2021-11-18 14:35 ` [PATCH 1/3] block: better document SSH host key fingerprint checking Daniel P. Berrangé
2021-12-23 9:37 ` Hanna Reitz [this message]
2021-11-18 14:35 ` [PATCH 2/3] block: support sha256 fingerprint with pre-blockdev options Daniel P. Berrangé
2021-12-23 9:45 ` Hanna Reitz
2021-11-18 14:35 ` [PATCH 3/3] block: print the server key type and fingerprint on failure Daniel P. Berrangé
2021-12-23 10:11 ` Hanna Reitz
2021-12-23 10:18 ` Philippe Mathieu-Daudé
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=bedd1afd-8926-d43c-400e-092cb5d413b1@redhat.com \
--to=hreitz@redhat.com \
--cc=berrange@redhat.com \
--cc=kwolf@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=rjones@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).