RemoteAccessAndSupport

Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.

  • Launchpad entry: none yet

  • Packages affected:

Summary

Using a simple gui wrapper for two VNC applications, we can effectively give and get remote desktop control (and ultimately support) easily.

VNC is cross-platform for ease of use with Windows or Mac users as well.

Rationale

We need a support tool to actually "show" someone how to do something through the internet. VNC (VirtualNetworkConnection) is a great tool that already exists that just needs a GUI wrapper to put it to use.

Use cases

Frye is having trouble with setting up Evolution to connect to his email. Leela is Frye's friend and could do this easily for Frye. Leela is so advanced that she knows how to add port forwarding to her router and forwards port 5500 (the default reverse vnc port). Frye would load his icon from the menu that says "Remote Support" which launches a gui prompting for "give support" or "get support". Leela tells Frye to type in leelasdomain.dyndns.org which connects to Leela giving her control of Frye's PC while letting Frye see what is going on as well. It's real easy to describe a dialog box when you can move the mouse over it while talking to the person.

Scope

Design

  • Icon

    <insert image>

  • Main Window

    http://lh4.google.com/image/xburnerx/RWs1T7ptABI/AAAAAAAAAHI/4y8OzOPOup0/remote-access-mockup.jpg

  • Tray Icon and options once connected

    <insert image>

"Get Support" gives the option to specify an address in the form <ip><:port> or <domain><:port> where the port is optional and the default port is 5500. "Give Support" should start vnc listening on the specified port waiting for the other side to "Get Support".

Implementation

  • Get Support
    • x11vnc -connect <ip>:port

  • Give Support
    • vncviewer -listen
      • only listens on port 5500 (not critical issue, but specifying a port would be better)

Code

Named Gitso, built using PyGTK, a simple .py is available here.

Data preservation and migration

Unresolved issues

BoF agenda and discussion

I'm concerned about this. VNC is an insecure protocol, transferring keystrokes as clear text and screen images unencrypted. It would be better if the GUI somehow automagically tunneled the VNC session over an encrypted channel. Most people tunnel over SSH to secure the connection, but I'm not sure how this could be made transparent.

In an argument for vnc, it's can be run on Windows, Mac, Linux or whatever.

Using SSL (e.g. stunnel) to encrypt the conversation, even if no cert checking is done, would help significantly. There is probably a way to do it for SSH also, but care needs to be taken to avoid granting too much permission to the helpee. --NealMcBurnett


CategorySpec

RemoteAccessAndSupport (last edited 2008-08-06 16:27:06 by localhost)