From: Anthony Liguori <anthony@codemonkey.ws>
To: "Daniel P. Berrange" <berrange@redhat.com>, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] PATCH: 0/7: Support SASL authentication in VNC server
Date: Sat, 14 Feb 2009 16:17:44 -0600 [thread overview]
Message-ID: <49974308.9090306@codemonkey.ws> (raw)
In-Reply-To: <20090212145302.GO9894@redhat.com>
Daniel P. Berrange wrote:
> Previously I provided patches for QEMU's VNC server to support SSL/TLS
> and x509 certificates. This provides good encryption capabilities for
> the VNC session. It doesn't really address the authentication problem
> though.
>
> I have been working to create a new authentication type in the RFB
> protocol to address this need in a generic, extendable way, by mapping
> the SASL API into the RFB protocol. Since SASL is a generic plugin
> based API, this will allow use of a huge range of auth mechanims over
> VNC, without us having to add any more auth code. For example, PAM,
> Digest-MD5, GSSAPI/Kerberos, One-time key/password, LDAP password
> lookup, SQL db password lookup, and more.
>
> I have got a VNC auth type assigned by the RFB spec maintainers:
>
> http://realvnc.com/pipermail/vnc-list/2008-December/059463.html
>
> With the full current spec for the SASL extension currently documented
> here:
>
> http://realvnc.com/pipermail/vnc-list/2008-December/059462.html
>
>
> This is the 2nd version of the patches I initially posted here
>
> http://lists.gnu.org/archive/html/qemu-devel/2009-02/msg00255.html
>
Modulo the comments I made, this series look really nice. I'm going to
apply Brian Kress' multiple clients patch once he adds a SoB so you'll
want to make sure to rebase against that for the next series.
Regards,
Anthony Liguori
> Changes since last time
>
> - Re-factor the code to move TLS and SASL methods into separate files,
> vnc-tls.c, vnc-auth-vencrypt.c and vnc-auth-vencrypt.h
>
> - Added simple access control lists for authorization of client users
> on either SASL username, or x509 distinguished name
>
> - Added proof of concept external file format for persisting ACLs
>
> - Extend 'info vnc' to show much more information about clients and
> auth
>
> - Tested with SASL + Digest-MD5, SASL + GSSAPI. TLS + SASL + Digest-MD5
> and TLS + SASL + GSSAPI. This gives coverage off all interesting
> code paths and/or I/O encryption combinations.
>
>
> The combined diffstat for all 7 patches about to follow, is
>
> .hgignore | 16
> Makefile | 27 +
> Makefile.target | 5
> b/acl.c | 264 ++++++++++++
> b/acl.h | 71 +++
> b/keymaps.h | 60 ++
> b/qemu.sasl | 34 +
> b/vnc-auth-sasl.c | 640 +++++++++++++++++++++++++++++
> b/vnc-auth-sasl.h | 76 +++
> b/vnc-auth-vencrypt.c | 175 +++++++
> b/vnc-auth-vencrypt.h | 33 +
> b/vnc-tls.c | 456 ++++++++++++++++++++
> b/vnc-tls.h | 76 +++
> configure | 34 +
> curses.c | 3
> curses_keys.h | 9
> keymaps.c | 45 --
> monitor.c | 80 +++
> qemu-doc.texi | 109 ++++
> sdl.c | 3
> sdl_keysym.h | 7
> vl.c | 12
> vnc.c | 1100 ++++++++++++++++++--------------------------------
> vnc.h | 215 +++++++++
> vnc_keysym.h | 5
> 25 files changed, 2795 insertions(+), 760 deletions(-)
>
>
> Daniel
>
>
prev parent reply other threads:[~2009-02-14 22:18 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-12 14:53 [Qemu-devel] PATCH: 0/7: Support SASL authentication in VNC server Daniel P. Berrange
2009-02-12 15:01 ` [Qemu-devel] PATCH: 1/7: Extend 'info vnc' output to show client Daniel P. Berrange
2009-02-13 18:30 ` Anthony Liguori
2009-02-15 11:43 ` Daniel P. Berrange
2009-02-15 18:22 ` Anthony Liguori
2009-02-18 21:10 ` [Qemu-devel] " Mike Day
2009-02-12 15:02 ` [Qemu-devel] PATCH: 2/7: Push VncState struct into vnc.h Daniel P. Berrange
2009-02-14 22:09 ` Anthony Liguori
2009-02-15 11:43 ` Daniel P. Berrange
2009-02-12 15:02 ` [Qemu-devel] PATCH: 3/7: Split out VNC TLS auth code to separate file Daniel P. Berrange
2009-02-12 15:03 ` [Qemu-devel] PATCH: 4/7: Add SASL authentication extension to VNC Daniel P. Berrange
2009-02-12 15:03 ` [Qemu-devel] PATCH: 5/7: Include auth credentials in 'info vnc' Daniel P. Berrange
2009-02-12 15:04 ` [Qemu-devel] PATCH: 6/7: Support simple ACL for client authorization Daniel P. Berrange
2009-02-14 22:14 ` Anthony Liguori
2009-02-12 15:04 ` [Qemu-devel] PATCH: 7/7: Add external persistent ACL file Daniel P. Berrange
2009-02-14 22:16 ` Anthony Liguori
2009-02-15 11:28 ` Daniel P. Berrange
2009-02-12 15:43 ` [Qemu-devel] PATCH: 0/7: Support SASL authentication in VNC server Daniel P. Berrange
2009-02-14 22:17 ` Anthony Liguori [this message]
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=49974308.9090306@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=berrange@redhat.com \
--cc=qemu-devel@nongnu.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.