Field Trip #28 Securing a VNC Connection with Java By Keith Lynn.

Slides:



Advertisements
Similar presentations
SSH Operation and Techniques - © William Stearns 1 SSH Operation and Techniques The Swiss Army Knife of encryption tools…
Advertisements

Chapter 6 Graphical User Interface (GUI) and Object-Oriented Design (OOD)
A CHAT CLIENT-SERVER MODULE IN JAVA BY MAHTAB M HUSSAIN MAYANK MOHAN ISE 582 FALL 2003 PROJECT.
Chapter 6 Graphical User Interface (GUI) and Object-Oriented Design (OOD)
1 Class 8. 2 Chapter Objectives Use Swing components to build the GUI for a Swing program Implement an ActionListener to handle events Add interface components.
APACHE SERVER By Innovationframes.com »
Chapter 6: Graphical User Interface (GUI) and Object-Oriented Design (OOD) J ava P rogramming: Program Design Including Data Structures Program Design.
4-1 PSe_4Konf.503 EAGLE Getting Started and Configuration.
Telnet/SSH: Connecting to Hosts Internet Technology1.
Course 201 – Administration, Content Inspection and SSL VPN
1 Web Server Administration Chapter 9 Extending the Web Environment.
ACM/JETT Workshop - August 4-5, ExceptionHandling and User Interfaces (Event Delegation, Inner classes) using Swing.
CSN08101 Digital Forensics Lecture 1B: Essential Linux and Caine Module Leader: Dr Gordon Russell Lecturers: Robert Ludwiniak.
Java Programming, 3e Concepts and Techniques Chapter 3 Section 65 – Manipulating Data Using Methods – Java Applet.
Network Security SSH Tunneling David Funk Matt McLaughlin Systems Administrators Computer Systems Support COE, University of Iowa.
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.
Using the Netbeans GUI Builder. The Netbeans IDE provides a utility called the GUI Builder that assists you with creating Windows applications. The Netbeans.
Java Programming: From Problem Analysis to Program Design, Second Edition1  Learn about basic GUI components.  Explore how the GUI components JFrame,
Learningcomputer.com SQL Server 2008 Configuration Manager.
MIT AITI 2003 Lecture 17. Swing - Part II. The Java Event Model Up until now, we have focused on GUI's to present information (with one exception) Up.
Field Trip # 21 Creating PDFs with Java By Keith Lynn.
LAB 1CSIS04021 Briefing on Assignment One & RMI Programming February 13, 2007.
Module 5: Configuring Access for Remote Clients and Networks.
Dale Roberts GUI Programming using Java - Event Handling Dale Roberts, Lecturer Computer Science, IUPUI Department of Computer.
A Study of Wireless Virtual Network Computing Kiran Erra.
GUIs in Java Swing, Events CS2110, SW Development Methods Readings: MSD, Chapter 12 Lab Exercise.
Field Trip #19 Animations with Java By Keith Lynn.
Field Trip #31 CrossWord Puzzle By Keith Lynn. JApplet A JApplet is a top-level container in Java We will use the JApplet to contain two Jpanels The first.
Remote Controller & Presenter Make education more efficiently
1 Chapter 28 Networking. 2 Objectives F To comprehend socket-based communication in Java (§28.2). F To understand client/server computing (§28.2). F To.
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 )‏
Chapter 12 1 TOPIC 13B l Buttons and Action Listeners Window Interfaces Using Swing Objects.
Field Trip #22 Creating an Excel Spreadsheet with Java By Keith Lynn.
Java GUI. Graphical User Interface (GUI) a list a button a text field a label combo box checkbox.
Field Trip #25 Creating a Client/Server By Keith Lynn.
Protocols COM211 Communications and Networks CDA College Olga Pelekanou
Field Trip #23 Hangman By Keith Lynn. JApplet A JApplet is a top-level container An applet is a small Java program that is executed by another program.
Java Programming: From Problem Analysis to Program Design, 3e Chapter 6 Graphical User Interface (GUI) and Object-Oriented Design (OOD)
Advanced Java Session 4 New York University School of Continuing and Professional Studies.
Hitchhiker’s Guide to CS Lee Sieger, Tim Cook, Jason Day, Zuozhi Yang.
Java Programming: From Problem Analysis to Program Design, Second Edition1 Lecture 5 Objectives  Learn about basic GUI components.  Explore how the GUI.
Field Trip #27 Using Java to Download Images and Sounds By Keith Lynn.
File Transfer Protocol (FTP) CIS 130. File Transfer Protocol (FTP) Copy files from one internet host (server) to your account on another host –Need domain.
Event Handling CS 21a: Introduction to Computing I First Semester,
Chapter 6 Graphical User Interface (GUI) and Object-Oriented Design (OOD)
Field Trip #34 Creating and Reading Zip Files in Java By Keith Lynn.
SSH. 2 SSH – Secure Shell SSH is a cryptographic protocol – Implemented in software originally for remote login applications – One most popular software.
1 Example security systems n Kerberos n Secure shell.
Chapter 7: Using Network Clients The Complete Guide To Linux System Administration.
PuTTY Introduction to Web Programming Kirkwood Continuing Education by Fred McClurg © Copyright 2016, All Rights Reserved ssh client.
Installation Guacamole Is a web application that provides access to desktop environments using remote desktop protocols (such as VNC or RDP); Installation.
Field Trip #29 Creating an Event Calendar with Java By Keith Lynn.
GUI Programming using Java - Event Handling
Virtual Network Computing
Secure services Unit-IV CHAP-1
CompSci 230 S Programming Techniques
A First Look at GUI Applications
Java GUI.
A Study of Wireless Virtual Network Computing
Graphical User Interface (pronounced "gooey")
FTP - File Transfer Protocol
Java Programming: From Problem Analysis to Program Design,
Ellen Walker Hiram College
Event Handling CS 21a: Introduction to Computing I
Event-driven programming for GUI
PC02 Term 1 Project Basic Messenger. PC02 Term 1 Project Basic Messenger.
Telnet/SSH Connecting to Hosts Internet Technology.
Remote Computing Services Cloud connection Distributed system
Tonga Institute of Higher Education
Presentation transcript:

Field Trip #28 Securing a VNC Connection with Java By Keith Lynn

Packages A package is a collection of related classes The package we will use is called Jsch which can be downloaded from This package allows us to make secure connections using the SSH protocol We will use SSH and tunnels to provide a secure connection for VNC

JSch The package Jsch contain classes necessary to create a secure connection We create an instance of a Session which we create by using the username, host, and port We then specify additional information We set the property StrictHostKeyChecking to no so we don't get prompted with a question about storing the host when we connect We also can specify which port should be tunneled

VNC VNC stands for Virtual Network Computing It will essentially allow us to make a remote desktop connection However, there is no real encryption of passwords So we use SSH to tunnel VNC and this will provide a level of encryption

JFrame A JFrame is a top-level container We can add other components to the JFrame In this app, we will add labels, text fields, and a button A JLabel allows us to put a label in the frame A JTextField allows us to get input from the user A JButton allows us to trigger an action

Events In order to detect and act on the button click, we will create an event listener The event listener we will create is an ActionListener ActionListener is an interface which contains the method actionPerformed If the listener is registered with the button, then when the button is clicked, actionPerformed is called We can get a reference to the source of the event with the method getSource()

SSH SSH is a secure communications protocol It is a replacement for protocols like telnet which wasn't secure In order to make the connection, we must have a server which accepts SSH connections and a client that can connect to the server

Executing External Programs in Java When we click the button, we want to execute an external program which will start a vnc viewer In order to execute the program, we will use a ProcessBuilder This class allows us to execute a remote command We must make sure that connect to the ProcessBuilder's input stream and read all of it

VncViewer Vncviewer is a free utility that will allow us to connect to a VNC server We specify the port that'd we've tunneled through SSH and use as the hostname If everything is connected correctly, you should see the desktop