25

Moving here a question locked on ServerFault, with some refinements:

  • since nothing assures you that closed-source terminal emulators don't phone home with your login details or private keys, I'm looking for an open-source SSH client
  • tabbed sessions are a must - PuTTY doesn't have them
  • built-in file transfer from the remote server to my local machine (ZMODEM or SFTP). Use case: I want to transfer a particular remote file to my Windows as quickly as possible. SecureCRT, XShell, ZOC support ZMODEM, and I can do sz myfile. This disqualifies PuTTY because I'm not going to type the full pscp command every time I need to fetch a file.

Wikipedia has a comparison of SSH clients. Other desired features:

  • configurable keyboard shortcuts
  • configurable colors, or at least a light theme

The best candidate I found so far is MobaXTerm (sources - though it's not clear just how open sourced it is), which is ridiculously good (X11 forwarding to export the remote display from the server onto your Windows machine!) but really odd in a few respects:

  • there's almost no community around it. No GitHub/SourceForge, no forum, no issue tracking
  • it's bloated with all sorts of pointless tools, like a text-mode lobotomized Wireshark to capture network traffic, a calculator (yes, the one that comes with Windows is not good), a text-mode list of hardware devices in Windows (?!), a directories diff tool (are they seriously trying to come up with something better than, say, BeyondCompare?) or Cygwin and a bunch of other commands to soup up the Windows terminal

Disqualified:

  • mRemoteNG - open source, but no private key authentication support. Seems to simply embed PuTTY.
11
  • 1
    What does “tabbed sessions” mean? If you want to have multiple tabs, why not use a generic tabbing utility plus PuTTY? Feb 23, 2014 at 0:13
  • @Gilles: because I don't want to use a hack of that sort, and any serious terminal client supports tabbed sessions, with all that entails (multi-machine command execution for instance, or session profiles that can be applied to multiple sessions). Feb 23, 2014 at 0:19
  • 1
    MobaXterm is on the dead-zone between open source (most of the things in it) and closed source (I believe the wrapper that does most of the cool stuff isn't FOSS), which probably explains the lack of community. The 'odd' features can be removed/customized with the paid version I suspect Feb 23, 2014 at 0:40
  • 1
    @richard: thank you for the condescending answer. I was asking for a Windows program, not a Unix/Linux one. Feb 25, 2014 at 2:03
  • 1
    I did not tell you to get a Unix program, I said that separating terminal emulation and other functionality (ssh) is not a hack. It is good practice. Feb 25, 2014 at 10:44

1 Answer 1

22

As you've already mentioned PuTTY, I may recommend you one thing I'm using at work: MTPuTTY. It's a native Windows wrapper around PuTTY, which basically adds the "tabbed" feature you're after. It integrates PuTTY, so you have all your stored sessions available. You can attach already running single-windowed PuTTY sessions, or detach a tab to become such. Another Plus is: it is available as portable app, so no installation required.

But while MTPuTTY comes free-of-charge, it's unfortunately not open-source. On the other hand, it's PuTTY dealing with the sessions, and MTPuTTY just caters the "window collection and organization", so this might still be fitting for you.

MTPuTTY
MTPuTTY with multiple tabs open, one even with split-view (click image for larger variant)


If open-source is a strong requirement for you, also take a look at superputty, which offers a similar feature-set as MTPuTTY does (I've used this before switching to MTPuTTY, as I couldn't get it working with the portable PuTTY version). It also supports KiTTY, but a minor draw-back might be its dependency on .NET 2.0 or higher.

superputty with multiple tabs open superputty file transfer
superputty: multiple open tabs / file transfer (click images for larger variants)


As pointed out in the comments, you might wish to use this in conjunction with KITTY instead of PuTTY. KITTY is a PuTTY fork, and offers a.o. experimental ZModem-Support.

As for your "configurable colors": That again can be done with the PuTTY/KITTY settings. On my setup, I use e.g. red background to identify production servers (as "red" signifies "danger", so I take extra care when typing in those tabs ;)) With KiTTY, you can even use background images.

I have not (yet) used KiTTY myself, but at least one colleague of mine swears on it (he also used PuTTY before).

11
  • Interesting find. I've added another must-have feature, quick file transfer. ZMODEM would be easiest - does MTPuTTY support it? Feb 23, 2014 at 0:39
  • As I wrote: MTPuTTY is just a wrapper around PuTTY, and basically does nothing but "organize" your PuTTY windows. All session-handling is done by PuTTY (alternatively KITTY, I've heard, so you might want to give that one a look, too). So your "protocols" must be supported by the latter :)
    – Izzy
    Feb 23, 2014 at 0:43
  • 1
    KITTY is interesting, but another weirdo (just like MobaXTerm :) when it comes to having a forum ("it's actually closed"), sane source code hosting (haven't these French SSH client developers heard of GitHub?), or a web page that seems cobbled together after Y2K. Feb 23, 2014 at 22:08
  • At least the portable variant does have a page on sourceforge. But as I wrote, I've never used KiTTY, so I didn't check more closely on it.
    – Izzy
    Feb 23, 2014 at 22:20
  • 2
    Cool! I have been using KiTTY, like, forever now, so superputty looks like a great addition to my burgeoning toolbox. Thanks for sharing!
    – pepoluan
    Feb 25, 2014 at 4:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.