Open source SSH clients

Open source SSH client alternatives in Fedora

The Secure Shell (SSH) protocol allows users to connect remotely to a machine using encrypted communications. It’s normal to use this protocol to work in a network environment. In Fedora, you can use the default client for SSH connections, OpenSSH. OpenSSH is one client of many available and the most widely used. However, there are different clients available that provide different features to the user. This article introduces some alternative clients to OpenSSH and how you can get started using them.

Using OpenSSH

As mentioned previously, OpenSSH is the default SSH client in Fedora. To connect to an SSH server, you can run the following command in a terminal window.

$ ssh <ip-address>

This will prompt you to connect to this IP address via the SSH protocol. Depending on the configuration of your server and client, it may ask for a password, passphrase, or another authentication method. If it’s your first time connecting to the remote machine, it will ask to add the machine to the

known_hosts

file. This file is simply a record of public keys from servers you connect to. Whenever you connect to a machine again, it checks to make sure the public key has not changed (to prevent man-in-the-middle attacks).

This all works fine, but maybe you need more advanced features and want another client. The following are four alternative SSH clients that may better fit your needs.

Remmina

Alternative SSH clients: Screenshot of Remmina's main screen

Screenshot of Remmina’s main screen

Remmina is a remote desktop client that supports many protocols to connect to network machines. One of its better features is managing different connections in one client. The list of protocols that Remmina supports is fairly broad.

  • RDP (Remote Desktop Protocol)
  • VNC (Virtual Network Protocol)
  • telnet
  • SSH
  • NX
Alternative SSH clients: Screenshot of Remmina in the system tray menu

Screenshot of Remmina in the system tray menu

One of the advantages of Remmina is that it allows you to maintain a list of connections from your history. There’s also a way to directly connect to a machine if you know the credentials already.

There are a handful of other useful features provided in Remmina. One feature is identity management. This allows you to configure each connection to work with just a double click, handling everything else for you. Pre-command is another popular one that allows you to set the environment before making each connection. A good feature that I used to use is the system tray icon to quickly access to your connections, preferences, and make new connections.

There are a few cons of Remmina. It doesn’t save logs to your system and doesn’t have personalization of the interface, character encoding, or post-execution scripts.

Remmina is written in GTK3+, meaning that it runs efficiently in GTK desktops like GNOME, LXDE, Cinnamon, Mate, Xfce, and others. It’s licensed under the GPLv2 license.

Installing Remmina

Remmina is packaged and readily available to use in Fedora. To install it, open up a terminal window and enter the following command.

$ sudo dnf install remmina

PuTTY

Alternative SSH clients: Screenshot of PuTTY's default screen

Screenshot of PuTTY’s default screen

PuTTY is one of the older SSH clients in open source. It has many broad and powerful features included in it.

  • SSH, telnet, and Rlogin support
  • Identitymanagement
  • Saving sessions (list of connections)
  • Quick configuration
  • Configuration per session/connection
  • Saves logs
  • Allows connection to Non-POSIX servers
  • Keyboard translations
  • Serial connections
  • X11 forwarding
  • Interface personalization
Alternative SSH clients: PuTTY Connection Window (ssh client)

Screenshot of opening a new connection in PuTTY

One disadvantage to PuTTY is that it doesn’t allow tabs or window groups. Each connection is opened in a new window. Another missing feature is post-execution scripts, which are not allowed.

PuTTY is written in C and runs well in about every desktop environment. It’s licensed under the MIT license.

Installing PuTTY

Also like Remmina, PuTTY is packaged in Fedora and can be installed with a new terminal window.

$ sudo dnf install putty

 

PAC Manager

Alternative SSH clients: Screenshot of PAC Manager's main screen

Screenshot of PAC Manager’s Main Screen main screen

Originally written for Ubuntu, Perl Auto Connector (PAC) is a powerful tool to manage remote connections, especially SSH and telnet connections. Some of its main features include…

  • Remote and local macros
  • Remotely sending commands
  • Cluster connections
  • Scripting support
  • Serial/TTY connection via cu/tip/remote-TTY connection
  • Pre/post connections local executions
  • Tabs or windows for connections
  • Proxy support
  • KeePass integration
  • Wake-On LAN capabilities
  • Possibility to split terminals in the same tab
  • System tray menu icon
  • Saves logs
Alternative SSH clients: Screenshot of PAC Manager's system tray menu

Screenshot of PAC Manager’s system tray menu

The cons of PAC are more based in the Ubuntu integration, but now the developers are working on these. Its integration with non-GTK Desktops isn’t the best and the implementation of the “keep alive with key strokes” (sending a key to keep the connection working) fails in some non-POSIX connections.

It’s written in Perl and GTK and is licensed under the GPLv3.

Installing PAC Manager

PAC Manager is not packaged in the default Fedora repositories, so a few workarounds have to be used to install it. Since the project is hosted in SourceForge, you need to know the version number to download the latest version. Running the following commands will install all of the dependencies you need, and then download and install v4.5.5.7.

$ sudo dnf install perl-YAML uuid-perl perl-Gtk2-GladeXML perl-Crypt-CBC perl-Socket6 perl-Net-ARP perl-Gtk2-Ex-Simple-List perl-Crypt-Blowfish perl-Net-SSH-Expect perl-IO-Stty vte tigervnc rdesktop
$ wget http://sourceforge.net/projects/pacmanager/files/pac-4.0/pac-4.5.5.7-2.x86_64.rpm
$ sudo rpm -ivh pac-4.5.5.7-2.x86_64.rpm

secpanel

Alternative SSH clients: Screenshot of secpanel's main screen

Screenshot of the main screen of secpanel

secpanel is not a client itself. It’s a front-end to manage connections to the OpenSSH client. Its main feature is managing connections and identities and selecting programs to run the connections (

gnome-terminal

,

kde-terminal

, and others).

It lacks many features like saving logs and pre- / post-connection programs. It’s important to keep in mind that it is just front-end to managing connections, not a client itself.

It’s written completely in Tcl/Tk, making it compatible with any desktop. It’s also licensed under the GPLv3.

Installing secpanel

secpanel is not yet packaged in the default Fedora repositories, but there is work ongoing to bring it to Fedora. The project is currently available on SourceForge. It can be installed by entering the following commands in a new terminal window.

$ sudo dnf -y install tcl tk
$ wget http://sourceforge.net/projects/secpanel/files/secpanel-0.6.1-1.noarch.rpm
$ sudo rpm -ivh secpanel-0.6.1-1.noarch.rpm
Alternative SSH clients: Screenshot of secpanel's configuration menu

Screenshot of secpanel’s configuration menu


Edited, Jul 13: A previous version of this article stated secpanel was available in Fedora’s repositories. This is not yet true, although there is work towards bringing it to Fedora.

For System Administrators Using Software

14 Comments

  1. You’re missing mobile shell/ (mosh). It’s built to be resilient and be able to reestablish connections without looaing the session if you’re in an environment with unstable networking or even changing IP addresses. Definitely worth mentioning!

    • Mace Moneta

      Mosh is awesome on mobile devices. The major highways here are lined with WiFi from the cable companies, and mosh lets me maintain a session while riding (as a passenger) down the road, even though I’m switching from accesspoint to accesspoint.

      However, mosh isn’t an ssh client; it uses ssh to establish a connection, then switches to UDP over its own ports.

  2. Erik

    I love clusterssh to run multiple (open)ssh sessions in parallel.
    Ian: “We are in a hurry with this project, you know. We can ask the cloud managers, may be they can clone the first machine so you do not have to do the whole setup again”
    Me: “It’s already done, I installed all 10 machines in parallel with clusterssh”

  3. Mace Moneta

    Dropbear is very popular in minimal installs as well, and it’s in the Fedora repositories. To get the complete list of ssh related packages,

    dnf search ssh

  4. Matthew

    cssh for the win here as well. Also use fabric and ansible for more than 20 servers.

  5. Anton

    Thank you very much! Remmina is very usefull soft that I searched

  6. Application reviews on Fedora Magazine should include information about how applications appear/function in a HiDPI environment. For example the GUI for secpanel is written in Tk, which doesn’t scale for HiDPI screens. Remmina, which uses GTK3, looks great on my Dell XPS 13.

    I’m not criticizing secpanel or Tk, but they don’t work well on high resolution monitors. This could be an important consideration for some readers and is something you can’t really show in a screenshot.

  7. Was using cssh but recently switched to tmux-cssh (https://github.com/dennishafemann/tmux-cssh) I wasn’t fond of how cssh popped open multiple windows.

    tmux-cssh keeps everything in one terminal. I’m still tweaking things but so far I like it!

  8. Mic Fens

    I tried remmina based on the feedback here. Most of what I would use it for is ssh, and remmina’s ssh client is totally broken (https://github.com/FreeRDP/Remmina/issues/899) in Fedora 24. I’ll have a look when it actually works.

  9. Erik

    Maybe I am missing or misunderstanding something, but neither my fedora 23 nor fedora 24 machines up secpanel.

    I tried both:
    dnf install secpanel
    and
    dnf search secpanel

    without success.

    Thanks,

    Erik

    • Bryan

      I’ve had the same result here. A search of the Fedora Package Database shows no packages either current, retired or orphaned.

      OP: Are you able to verify how you installed secpanel?

      Cheers,
      Bryan

  10. x3mboy

    mosh is not a ssh client, it’s a new shell, use its own protocol to comunicate, require its own server. It’s a great tool, but it doesn’t fit in this category. I will cssh (clusterssh is the package name), and Remmina is working fine with SSH on F23, I need to check what’s its status on Final Release of F24.

    Thanks for your feedback!

Comments are Closed

The opinions expressed on this website are those of each author, not of the author's employer or of Red Hat. Fedora Magazine aspires to publish all content under a Creative Commons license but may not be able to do so in all cases. You are responsible for ensuring that you have the necessary permission to reuse any work on this site. The Fedora logo is a trademark of Red Hat, Inc. Terms and Conditions