How to: Set Up SSH Handler on Linux



    Future releases of UWM will embed “ssh://” or “telnet ://” links directly into simulation session pages. This allows the user to click on these links and the browser will launch the appropriate command in a new terminal. This guide has instructions how to acquire and use a provided script that modifies a Linux desktop environment to allow this process.



    If you are running Lubuntu (Ubuntu with the LX desktop environment / LXDE) pay close attention to the messages from the script, as you may have to do an extra, manual steps to complete the system configuration.


    Known working systems and browsers

    • Linux OS
      • Ubuntu 14.4+
      • Fedora 22
      • CentOS 7
      • Lubuntu
    • Browsers
      • Chrome
      • Chromium
      • Firefox

    Getting Started

    This tutorial will guide you through the creation of an SSH and Telnet handler so your system will understand connectivity shortcuts from supported browsers.

    Note: DO NOT run commands as ‘root’ or ‘sudo’ unless explicitly asked to do so.

    1. Launch your preferred terminal application and run the following commands
    2. Follow the prompts while the script executes
    3. You will need to log out and back in once the script has finished running

    Testing The Handler

    1. Open Firefox
    2. In the browser's address bar type: ssh://<ip_address_of_VIRL_VM>
    3. In the pop-up window click OK to launch the terminal application

      Note: The handler script understands URIs of the generic form handler://username@host:port. Handler can be ‘ssh’ or ‘telnet’, the ‘username@’ is optional and is only useful for SSH. The :port parameter is also optional and works for both, SSH and Telnet.


      • You should now see something similar to this:


      NOTE: The username will be automatically inserted by the SSH command. In order to login successfully, your username needs to be valid on the remote system. If you see the terminal application open with the intended IP address, then everything is working as expected.