On Thu, 14 Dec 2017 13:51:11 +0100 David Fort <rdp.eff...@gmail.com> wrote:
> --- > Makefile.am | 5 +++ > man/weston-rdp.man | 92 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 97 insertions(+) > create mode 100644 man/weston-rdp.man > > diff --git a/Makefile.am b/Makefile.am > index 7adc625..f67e693 100644 > --- a/Makefile.am > +++ b/Makefile.am > @@ -1563,6 +1563,10 @@ if ENABLE_DRM_COMPOSITOR > man_MANS += weston-drm.7 > endif > > +if ENABLE_RDP_COMPOSITOR > +man_MANS += weston-rdp.7 > +endif > + > MAN_SUBSTS = \ > -e 's|__weston_native_backend__|$(WESTON_NATIVE_BACKEND)|g' \ > -e 's|__weston_modules_dir__|$(pkglibdir)|g' \ > @@ -1577,6 +1581,7 @@ SUFFIXES = .1 .5 .7 .man > EXTRA_DIST += \ > man/weston.man \ > man/weston-drm.man \ > + man/weston-rdp.man \ > man/weston.ini.man > > CLEANFILES += $(man_MANS) > diff --git a/man/weston-rdp.man b/man/weston-rdp.man > new file mode 100644 > index 0000000..88c795a > --- /dev/null > +++ b/man/weston-rdp.man > @@ -0,0 +1,92 @@ > +.TH WESTON-RDP 7 "2017-12-14" "Weston __version__" > +.SH NAME > +weston-rdp \- the RDP backend for Weston > +.SH SYNOPSIS > +.B weston --backend=rdp-backend.so > +. > +.\" *************************************************************** > +.SH DESCRIPTION > +The RDP backend allows to run a > +.B weston > +environment without the need of specific graphic hardware, or input devices. > Users can interact with > +.B weston > +only by connecting using the RDP protocol. > + > +The RDP backend uses FreeRDP to implement the RDP part, it acts as a RDP > server > +listening for incoming connections. It supports different codecs for > encoding the > +graphical content. Depending on what is supported by the RDP client, the > backend will > +encode images using remoteFx codec, NS codec or will fallback to raw > bitmapUpdate. > + > +On the security part, the backend supports RDP security or TLS, keys and > certificates > +must be provided to the backend depending on which kind of security is > requested. The RDP > +backend will announced security options based on which files have been given. s/announced/announce/ ? > + > +The RDP backend is multi-seat aware, so if two clients connect on the > backend, > +they will get their own seat. "each will get its own logical seat"? This seems like a nice way to test multi-seat, btw. :-) > + > +.\" *************************************************************** > +.SH OPTIONS > +. > +When the RDP backend is loaded, > +.B weston > +will understand the following additional command line options. > +.TP > +.B \-\-address\fR=\fIaddress\fR > +The IP address on which the RDP backend will listen for RDP connections. By > +default it listens on 0.0.0.0. > +.TP > +\fB\-\-port\fR=\fIport\fR > +The TCP port to listen on for connections, it defaults to 3389. > +.TP > +\fB\-\-no-clients-resize > +By default when a client connects on the RDP backend, it will instruct > weston to > +resize to the dimensions of the client's announced resolution. When this > option is > +set, weston will force the client to resize to its own resolution. > +.TP > +\fB\-\-rdp4\-key\fR=\fIfile\fR > +The file containing the RSA key for doing RDP security. As RDP security is > known > +to be insecure, this option should be avoided in production. > +.TP > +\fB\-\-rdp\-tls\-key\fR=\fIfile\fR > +The file containing the key for doing TLS security. To have TLS security you > also need > +to ship a file containing a certificate. > +.TP > +\fB\-\-rdp\-tls\-cert\fR=\fIfile\fR > +The file containing the certificate for doing TLS security. To have TLS > security you also need > +to ship a key file. > + > + > +.\" *************************************************************** > +.SH Generating cryptographic material for the RDP backend > +. > +To generate a key file to use for RDP security, you need the > +.BR winpr-makecert > +utility shipped with FreeRDP: > + > +.nf > +$ winpr-makecert -rdp -silent -n rdp-security > +.fi > + > +This will create a rdp-security.key file. > + > + > +You can generate a key and certificate file to use with TLS security using a > typical > +.B openssl > +invocations: > + > +.nf > +$ openssl genrsa -out tls.key 2048 > +Generating RSA private key, 2048 bit long modulus > +[...] > +$ openssl req -new -key tls.key -out tls.csr > +[...] > +$ openssl x509 -req -days 365 -signkey tls.key -in tls.csr -out tls.crt > +[...] > +.fi > + > +You will get the tls.key and tls.crt files to use with the RDP backend. Nice, I went through these commands and I can run it! :-) > +. > +.\" *************************************************************** > +.SH "SEE ALSO" > +.BR weston (1) > +.\".BR weston.ini (5) You could also modify weston.man to include a reference to this man page as well as add rdp to the list of backends there. I installed Remmina as the client, and it works. Sweet! Looks good, would you mind doing those little edits? Thanks, pq
pgpTN8X0rhuL6.pgp
Description: OpenPGP digital signature
_______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel