VNC VNC demo Windows  TightVNC  ajklinux1.uncc.edu Ubuntu  Gtk VNC Viewer.

Slides:



Advertisements
Similar presentations
Network Security.
Advertisements

K. Stoeckigt, Secure real-time audio/video communication – H.350, Encryption & Gatekeeper/Proxy – using H.323 (…and a bit SIP) Tutorial/Workshop.
SSH Operation and Techniques - © William Stearns 1 SSH Operation and Techniques The Swiss Army Knife of encryption tools…
Objectives Overview Define an operating system
Chapter One The Essence of UNIX.
NETOP REMOTE CONTROL What’s new in version 9.5? DECEMBER 09 NETOP REMOTE CONTROL1.
Remote Access Network Management Kelly Given Allison Traina.
TCP/IP Protocol Suite 1 Chapter 18 Upon completion you will be able to: Remote Login: Telnet Understand how TELNET works Understand the role of NVT in.
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
Module 6 Windows 2000 Professional 6.1 Installation 6.2 Administration/User Interface 6.3 User Accounts 6.4 Managing the File System 6.5 Services.
Guide To UNIX Using Linux Third Edition
COS 420 DAY 24. Agenda Assignment 5 posted Chap Due May 4 Final exam will be take home and handed out May 4 and Due May 10 Student evaluations Latest.
Remote Desktop Security Raghav Chawla, Jon Ussery Group 20.
Installing Windows XP Professional Using Attended Installation Slide 1 of 41Session 2 Ver. 1.0 CompTIA A+ Certification: A Comprehensive Approach for all.
Remote Networking Architectures
VMware vCenter Server Module 4.
11 SYSTEMS ADMINISTRATION AND TERMINAL SERVICES Chapter 12.
Operating System.
SOFTWARE.
Telnet/SSH: Connecting to Hosts Internet Technology1.
Learning Outcomes At the end of this lesson, students should be able to: State the types of system software – Operating system – Utility system Describe.
Section 6.1 Explain the development of operating systems Differentiate between operating systems Section 6.2 Demonstrate knowledge of basic GUI components.
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
Guide to Operating System Security Chapter 9 Web, Remote Access, and VPN Security.
Operating Systems Operating System
© Paradigm Publishing Inc. 4-1 Chapter 4 System Software.

Chapter 7: Using Windows Servers to Share Information.
VPN: An Easy Software / Appliance Solution for Remote Access Robert Gulick, EdD DBA/Technology Trainer Parma City School District
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
Chapter 4 System Software.
Chapter 9: Novell NetWare
2-3 note. 2 Peripheral Devices “Peripheral devices” are hardware plugged into ports or connected to a computer wirelessly. These devices can be for input,
CIM6400 CTNW (04/05) 1 CIM6400 CTNW Lesson 6 – More on Windows 2000.
VNC Greg Fankhanel Jessica Nunn Jennifer Romero. What is it? Stands for Virtual Network Computing It is remote control software which allows you to view.
Explain the purpose of an operating system
Chapter 4 System Software. Software Programs that tell a computer what to do and how to do it. Sets of instructions telling computers to perform actions.
Hands-On Microsoft Windows Server Introduction to Remote Access Routing and Remote Access Services (RRAS) –Enable routing and remote access through.
AE6382 Secure Shell Usually referred to as ssh, the name refers to both a program and a protocol. The program ssh is one of the most useful networking.
Remote Access Using Citrix Presentation Server December 6, 2006 Matthew Granger IT665.
VNC
Internet Business Foundations © 2004 ProsoftTraining All rights reserved.
© Paradigm Publishing Inc. 4-1 OPERATING SYSTEMS.
Computer Networking From LANs to WANs: Hardware, Software, and Security Chapter 13 FTP and Telnet.
XWN740 X-Windows Configuring and Using Using VNC (Chapter 14: Pages )‏
XWN740 X-Windows Configuring and Using Remote Access (Chapter 13: Pages )‏
© Paradigm Publishing, Inc. 4-1 Chapter 4 System Software Chapter 4 System Software.
Using the Weizmann Cluster Nov Overview Weizmann Cluster Connection Basics Getting a Desktop View Working on cluster machines GPU For many more.
Chapter 9 Operating Systems Discovering Computers Technology in a World of Computers, Mobile Devices, and the Internet.
SSH. 2 SSH – Secure Shell SSH is a cryptographic protocol – Implemented in software originally for remote login applications – One most popular software.
IT Automation: The Technology Behind Managed Services Wes Powell, Information Technology Consultant.
VIRTUAL NETWORK COMPUTING SUBMITTED BY:- Ankur Yadav Ashish Solanki Charu Swaroop Harsha Jain.
APACHE Apache is generally recognized as the world's most popular Web server (HTTP server). Originally designed for Unix servers, the Apache Web server.
When you cannot be there Remote access and collaboration Raul Suarez Dec 2009.
Chapter 2 Operating Systems
DISCOVERING COMPUTERS 2018 Digital Technology, Data, and Devices
Virtual Network Computing
VNC
VNC
Warm Handshake with Websites, Servers and Web Servers:
Virtual Network Computing
Module 4 Remote Login.
Telnet/SSH Connecting to Hosts Internet Technology.
Chapter 2: System Structures
X Windows.
Radoslaw Jedynak, PhD Poland, Technical University of Radom
Level 3 Extended Diploma Unit 13 Computer Systems Architecture
Remote Computing Services Cloud connection Distributed system
Windows desktop sharing
Web Servers (IIS and Apache)
Presentation transcript:

VNC

VNC demo Windows  TightVNC  ajklinux1.uncc.edu Ubuntu  Gtk VNC Viewer

VNC Virtual Network Computing

VNC - Overview Virtual Network Computing (VNC)  A graphical desktop sharing system Uses the RFB protocolRFB protocol  Remotely “control” another computer  Use another computer via a GUI environment  Uses a network Transmit keyboard and mouse events from one computer to another Relays the graphical screen updates back

VNC - Overview Platform-independent  VNC viewer resides any operating system Can connect to a VNC server of any other operating system  Clients and servers available for almost all GUI operating systems and for Java  Multiple clients may connect to a VNC server at the same time  Popular uses for this technology include: Remote technical support Accessing files on one's work computer from one's home computer

VNC - Overview Developed at “AT&T”  Original VNC source code and many modern derivatives are: Open source GNU General Public License

History

Created at the Olivetti & Oracle Research Lab  Originally owned by Olivetti and Oracle Corporation  In 1999 AT&T acquired the lab 2002 closed down the lab's research efforts Following the closure of ORL in 2002  Several members of the development team formed RealVNCRealVNC Continued working on open source and commercial VNC software under that name Several other versions of VNC have been developed from the original GPLed source code.  Forking has not led to compatibility problems RFB protocol is designed to be extensible  VNC clients and servers negotiate their capabilities when handshaking Make use of the most appropriate options supported at both ends

Etymology

'Virtual Network Computer/Computing'  Originates from ORL's work on a thin client Called Videotile Used the RFB protocol  Essentially an LCD display with: A pen input A fast ATM connection to the network  At the time a network computer was commonly used as a synonym for 'thin client' VNC is essentially a software-only (i.e virtual) version of this network computer

Operation

VNC system requires:  A server  A client  A communication protocol

Operation Where:  VNC server Program on the machine that shares its “screen” Does all the core processing  VNC client (or viewer) Program that monitors and interacts with the server Displays results  VNC protocol Very simple protocol  Based on one graphic primitive:  "Put a rectangle of pixel data at the specified X,Y position"

Operation Server sends small rectangles of the framebuffer to the client In simplest form: VNC protocol can use a lot of bandwidth  Methods devised to reduce communication overhead  For example, various encodings Methods to determine the most efficient way to transfer rectangles VNC protocol  Allows client and server to negotiate which encoding to be used

Operation Simplest encoding: raw encoding  Pixel data is sent in left-to-right scanline order First sends complete image After original full screen has been transmitted  Only transfer rectangles that change  Supported by all clients and servers Raw Encoding works well if:  Only a small portion of the screen changes from frame to frame Mouse pointer moving across a desktop Text being written at the cursor Bandwidth demands get very high when a lot of pixels change at the same time  Scrolling a window  Viewing full-screen video

Operation VNC uses TCP ports 5900 through 5906 (default)  Each port corresponds to a separate screen (:0 to :6) Java viewer available for many implementations  RealVNC allows clients to interact through a Java-enabled web browser Ports 5800 through 5806  Other ports can be used Both client and server must be configured accordingly  Some operating systems only support a single VNC session at a time Base operating system supports only a single session at a time  E.g. Windows XP

Operation On some machines:  Server does not have to have a physical display  Xvnc is the Unix VNC server Based on a standard X server  Xvnc can be considered to be two servers in one to applications: it is an X server to remote VNC users: it is a VNC server Applications can display themselves on Xvnc as if it were a normal X display  Will appear on any connected VNC viewers rather than on a physical screen

Operation Display served by VNC  Not necessarily the same display seen by a user on the server’s monitor Unix/Linux computers that support multiple simultaneous X11 sessions  VNC may be set to serve a particular existing X11 session  Start one of its own Multiple VNC sessions can be run from the same computer Microsoft Windows  VNC session served is always current user session

Operation VNC is commonly used as a cross-platform remote desktop system  Apple Remote Desktop for Mac OS X interoperates with VNC Will connect to a Linux user's current desktop if it is served with x11vnc As a separate X11 session if one is served with TightVNC From Linux  TightVNC will connect to an OS X session served by: Apple Remote Desktop  If the VNC option is enabled VNC server running on Microsoft Windows

Security

By default, VNC is not a secure protocol  Passwords are not sent in plain-text (as in telnet) but… Brute-force cracking could prove successful if both the encryption key and encoded password are sniffed from a network Recommended that a password of at least 8 characters be used  Limit of 8-characters on some versions of VNC If a password exceeds 8 characters:  Excess characters are removed  Truncated string is compared to the password

Security VNC may be tunneled over an SSH or VPN connection  Adds an extra security layer with stronger encryption  SSH clients are available for all major platforms (and many smaller platforms as well) SSH tunnels can be created from  UNIX clients  Microsoft Windows clients  Macintosh clients many others

Security UltraVNC supports the use of an open-source encryption plugin  Encrypts the entire VNC session  Including password authentication and data transfer Allows authentication to be performed  Based on NTLM and Active Directory user accountsNTLMActive Directory RealVNC offers high-strength encryption as part of its commercial package Workspot released AES encryption patches for VNCAES encryption

The original

RFB protocol

RFB Remote Frame Buffer

RFB RFB (“remote framebuffer”)  A simple protocol for remote access to graphical user interfaces  Works at the framebuffer level Applicable to all windowing systems and applications  Including X11, Windows and Macintosh  Used in Virtual Network Computing (VNC) and its derivatives RFB started as a relatively simple protocol  Has been enhanced with additional features (such as file transfers) and more sophisticated compression and security techniques as it has developed To maintain seamless cross-compatibility between different VNC client and server implementations:  Clients and servers negotiate a connection using the best RFB version  Use the most appropriate compression and security options they can both support

History RFB was originally developed at Olivetti Research Laboratory  Remote display technology used by a simple thin client with ATM connectivity called a Videotile  To keep the device as simple as possible RFB was developed and used in preference of existing remote display technologies RFB found a second, more enduring use when VNC was developed  VNC was released as open source software and the RFB specification published on the web.  Since then RFB has been a free protocol which anybody can use. ORL was closed in 2002  Some key people behind VNC and RFB formed RealVNC Ltd Continued development of VNC Maintain the RFB protocol  Current RFB protocol is published on the RealVNC website

Protocol versions Published versions of the RFB protocol are shown below: Developers are free to add additional encoding and security types  Must book unique identification numbers for these with the maintainers of the protocol so that the numbers do not clash.  Clashing type numbers would cause confusion when handshaking a connection and break cross-compatibility between implementations  The list of encoding and security types is maintained by RealVNC Ltd Separate from the protocol specification New types can be added without requiring the specification to be reissued VersionSourceDateSpecification RFB 3.3ORLJanuary 1998The Remote Framebuffer Protocol 3.3 RFB 3.7RealVNC LtdJuly 2003 RFB 3.8 (current) RealVNC LtdJuly 2005The Remote Framebuffer Protocol 3.8

Encoding Pixel data can be encoded to compress data  Raw  Hextile  Zlib  Many others… Can reduce the amount of data sent  Various encoding have different efficiencies  Can vary by screen content  Has a cost of the time to encode/decode Note: encoding is NOT encrypting!

Encoding NumberEncoding 0x Raw 0x CopyRect 0x RRE (Rising Rectangle) 0x CoRRE (Compact Rising Rectangle) 0x Hextile 0x Zlib 0x Tight 0x ZlibHex 0x Ultra 0x ZRLE 0x ZYWRLE 0xFFFF0001CacheEnable 0xFFFF0006XOREnable 0xFFFF8000ServerState (UltraVNC) 0xFFFF8001EnableKeepAlive (UltraVNC) 0xFFFF8002FTProtocolVersion (File Transfer Protocol Version - UltraVNC) 0xFFFFFF00–0xFFFFFF09CompressLevel (Tight encoding) 0xFFFFFF10XCursor 0xFFFFFF11RichCursor 0xFFFFFF18PointerPos 0xFFFFFF20LastRect 0xFFFFFF21NewFBSize 0xFFFFFFE0–0xFFFFFFE9QualityLevel (Tight encoding)

VNC 1. Uses a desktop on the client 2. Displays an image of a server “desktop” on the client 3. Is, by default, secure 4. Should never be used on modern computers