Best Ssh And Telnet Client For Mac

Active3 years ago

Is there a good PuTTY (free telnet / ssh client) equivalent for OS X?

SecureCRT client for Windows, Mac, and Linux provides rock-solid terminal emulation for computing professionals, raising productivity with advanced session management and a host of ways to save time and streamline repetitive tasks.

I know that I can just use terminal and an ssh command, but I want some sort of application that will store connection info, passwords, logs, etc for me, much like PuTTY.

Does this exist?

Dan J
4,22113 gold badges41 silver badges70 bronze badges
Steve RobbinsSteve Robbins
7483 gold badges9 silver badges16 bronze badges

10 Answers

PuTTY is a great Windows frontend, not to mention the need for an SSH client in the first place. On Linux, OS X, and most other UNIX-y based environments, SSH is generally purely command line, but still amazingly powerful.

The SSH client allows you to store an amazing amount of properties based on a given hostname, even global defaults, in the 'ssh_config' client file. This file doesn't exist by default (per the comments on the question), but should be written at ~/.ssh/config.

That path equates to:
~, your home directory, it expands on my system to /Users/jason.
.ssh, the leading dot makes it hidden. If you're in Terminal and in your home directory, you can simply run cd .ssh and enter it.
config is the file name, it is a plain text file with configuration parameters.

I use this file to control tunnels I always use, the private key needed for the connection, the username (if it differs from my local username), etc.

See the manpage, either via man ssh_config on your own machine which will contain the most appropriate version, or you can view it online from OpenBSD's Site.

Some example contents from my ssh config file are:

Whitespace is purely personal preference, it is not required except to separate Keys from Values.

The first three lines are global properties, they affect every SSH connection. The second section is a host-specific configuration.

The Host line specifies the host tag you will use when invoking ssh. Ex. ssh serve. When running that, it loads all the properties listed until the next Host line.

Since serve is not necessarily a DNS name, I specify the Hostname that it should actually connect to (no, not actually mine). User is self explanatory and there just to be explicit, and the IdentityFile is the path to the Private Key file it uses to connect.

Lastly, LocalForward sets up a port forwarding rule that I send through the SSH tunnel.

The various syntaxes are all documented on the man page.

There is no mechanism for defining a plain text password. Password entry is ALWAYS interactive when setting up the SSH connection. If you want to log in automatically, set up Private Key Authentication. Storing plain text passwords is stupid, always.

I use this to great effect. And the best part? All your SSH configurations are incredibly portable, it's just one file that you have to backup/retain, and move between system to system! Not so portable to Windows, but who really likes dealing with the registry anyway?

Jason SalazJason Salaz
17.1k16 gold badges83 silver badges136 bronze badges

Why not using MacPorts (https://www.macports.org/)? They have ported putty. You'll need to install MacPorts first, but once you've done that you can run:

and you'll have putty available on your Mac.

Ian C.
36.3k25 gold badges135 silver badges213 bronze badges
PitoneuxPitoneux

I have no experiences with this App: ZOC - I only did a quick Google on 'OS X telnet GUI' and got a link to this product as the first hit - but it seems to do the same as PuTTY.

There is a 30 days trial available.

ZOC is a professional SSH/telnet client and terminal emulator. With its impressive list of emulations it lets you easily connect to hosts and mainframes, using communication methods like secure shell, telnet, serial cable or modem/isdn.

Its sleek user interface has many ways of making your life easier. In its own way, ZOC is the Swiss Army Knife of terminal emulators: versatile, robust, proven.

Key Benefits:

  • Tabbed sessions with thumbnails
  • Customizable to meet your preferences and needs
  • Scripting language with over 200 commands
  • Compatible with Windows 7 and OS X Mountain Lion
  • Administrator friendly (deployment, configuration)
  • Now $79.99 with attractive bulk discounts

Key Features:

  • Emulations: VT220, xterm, Wyse, QNX, TN3270, TN5250, ...
  • Communication: SSH, Telnet, Modem, Serial Cable, ...
  • File Transfer: SCP, Zmodem, Xmodem, Ymodem, Kermit, ...
Rene LarsenRene Larsen

Jason's answer is definitely the way to go, but I'd like to point out a feature of Terminal that may be useful.

Within Terminal, you can make a direct connection to a remote machine similar to the way PuTTY does, without first opening a terminal window on the local machine. Simply select Shell->New Remote Connection... (cmd-shift-K). In the window that pops up, you can add any SSH server to the right-hand column, including aliases defined in the ~/.ssh/config file.

Using Jason's example, you would select 'Secure Shell' as the service on the left, and then add 'serve' to the list of servers on the right.

In the future, you can open the dialog box (much like the main PuTTY window) and double-click the entry for the server you want to connect to. The only difference between this and PuTTY is that you put custom configuration settings in the ~/.ssh/config file, which I see as a huge advantage.

Community
ithos67ithos67

You can install PuTTy on OS X with Homebrew:

And then run it from terminal as putty.

If you don't have Homebrew, you can install it from Terminal:

ShmidtShmidt

You might want to consider:

Spackle (free, SourceForge link)

This is a Java-based version of PuTTY, available for Mac and Linux.

Ethan Lee
3,5392 gold badges23 silver badges45 bronze badges
user37824user37824

Any terminal program could work with this answer, but I recommend iTerm2.

To store connection info and login with a single short command (no password typing required), you could use a key-login combined with an 'alias'.

Once you have an ssh-key on your server and your Mac, you could login with a command such as:

Using an alias within ~/.bash_profile you could shorten the command with an alias such as:

Then in iTerm2 you only need to execute a command:

to log into the server at 10.0.0.1 using ssh key login.

To store your session log (commands you've run) iTerm2 does this automatically, but you can adjust the amount of session logs you'd like to keep within Preferences -> Default profile -> Terminal -> Scrollback buffer. Tick the box for Unlimited scrollback if you prefer.

You can also store your logs indefinitely, between sessions by saving them to files. Preferences -> Default profile -> Miscellaneous -> Automatically log session input to files in [your chosen file on drive].

BakerBaker

Mac Os Ssh Client

I have ported Putty to Mac as a native application bundle, so no need for macports or terminals if your not a technical user.

More information with screen-shots is here : http://www.wine-reviews.net/2016/08/putty-for-mac-os-x-now-available.html

Ssh client mac gui

Cheers,

twicklinetwickline

vSSH is a PuTTY-based OS X app.

  • Can almost everything that PuTTY can
  • Multi-tab multi-window interface
  • Macros support (you shell scripts as menu items for quick access)
  • iCloud synchronization (connections, macros and keys) with vSSH and SSH control apps for iOS

Available on the Mac AppStore.

whoamiwhoami

Yes. There is new kid in town:

oktawianoktawian

We're looking for long answers that provide some explanation and context. Don't just give a one-line answer; explain why your answer is right, ideally with citations. Answers that don't include explanations may be removed.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged software-recommendationssh .

Posted:
in Mac Softwareedited January 2014
Hi folks,
Being a recent 'switcher', I am finding myself scrambling to find replacements for the fav tools I used before. My newest frustration is finding a good replacement for SecureCRT for the Mac.
I need an SSH client that will save logon info for my most common servers that I SSH to, as well as keep the session alive during the times I have to step away from the desk.
I have been using the SSH command line utility built into OSX but if I have to ignore an SSH session for five minutes while I attend to other matters, then the connection is dropped and I have to re-establish it.
Any suggestions? TIA, Zeeple.

Best Ssh Client For Mac

Comments

Best Ssh And Telnet Client For Mac

  • You don't need one. Just open a console window a use ssh from the command line.
  • Quote:

    Originally posted by Emin
    You don't need one. Just open a console window a use ssh from the command line.


    Thanks for the reply. But, as mentioned in the previous post, I currently use the SSH utility via command line and I find it lacking in the features I want. It has no keepalive. Thus if I have to walk away from the computer for a bit when I return, whatever I was connected to is now dropped, and I have to re-establich the SSH session. Pain in the rear.
    A utility such as SecureCRT, for Windows computers only, has these features and more and is truly a superior SSH client. So I am hoping that other Mac users out there have the same requirements that I do, and have found a good utility somewhere that can fill this gap.
    Thanks!
  • Quote:

    Tried ssh -o TCPKeepAlive ?
  • I would be interested in finding out a better SSH client than Terminal.
    At the moment, I click-hold on the Terminal icon in the dock and click 'Connect to server...'. Slightly easier than using the command line method.
  • Quote:

    Originally posted by Emin
    Tried ssh -o TCPKeepAlive ?


    No!! I have not tried that. However, I am trying right now. Thanks again for the prompt response!
  • Quote:

    Originally posted by Zeeple
    I need an SSH client that will save logon info for my most common servers that I SSH to


    You can use a command alias or a simple script to save the login command for each of your favorite servers, if re-typing the commands gets too complicated. In its simplest form, this just means typing the command into a text file and making the file executable. OpenSSH is a pretty decent SSH client, and the BSD environment that surrounds it offers a rich variety of ways to streamline your workflow. If I had to guess, I'd say the lack of 'sophisticated' GUI SSH clients for OS X is because the power-users that would use them prefer to leverage the CLI instead.
  • Yeah, I haven't found a GUI ssh client I like as much as the command line. Color me geeky.
    Ditto to the above comments about making a quick shell script that just fires off the appropriate username/password, but that's a slight security risk, keeping your passwords in plain text like that.
    I set up secure keys between all my ssh2 connections, but you might not have that option.
  • Well, I think I would like to use the command line too, if only I can iron out these few wrinkles and make it quicker and easier to connect to my servers.
    TCPKeepAlive: I have tried this option but it is not working for me. I have tried it via command line as such:
    ssh -o TCPKeepAlive=yes server.domain.com
    as well as placing it in /etc/ssh_config under 'Host *' But either way, the session is still dropped after a bit of inactivity.
    Alias: I have also put a few aliases in /etc/profile that allow me to reduce this:
    ssh -l barney -o TCPKeepAlive=yes host.domain.com
    to this:
    host
    but this still leaves me needing to enter the password everytime. (I know a petty grievance) which is more typing than I'd like to have to do. Is there no way to pass that via config files or command line?
    Thanks!
    Zeeple
  • Quote:

    Originally posted by Zeeple
    ...the session is still dropped after a bit of inactivity.


    I understand, that with other ssh clients (especially the one you wrote about) your sessions do stay open? In other words - is this an issue only from your Mac?
    Quote:


    but this still leaves me needing to enter the password everytime. (I know a petty grievance) which is more typing than I'd like to have to do. Is there no way to pass that via config files or command line?



    It is possible to establish trust through host keys as well as authenticate through a personal ssh key. This second method is probably better. You would have to create a key with ssh-keygen, place it on the hosts in appropriate files etc, then use ssh-agent to keep it for you while your OS X session is open allowing password-less login onto other hosts.
    However, I actually think that having to enter a password when logging in is a good thing. A little inconvenience that actually improves security.
  • Yep, this is only a problem when I use the Mac. But I think it is not an inherent difference in Operating Systems so much as it was a feature of a really good SSH client that *happened* to be written for Windows. This is the client, btw, that I am referring to:
    http://www.vandyke.com/products/securecrt/
  • Except that I've never seen that problem on my Mac... my guess is that it happens to be something about the ssh server on the other end.
  • JellyfiSSH is a simple bookmark manager for connecting to *NIX boxes like BSD/Linux etc via Telnet or SSH 1 or 2. You can set preferences for each bookmark including the terminal colours, fonts, window size, transparency and default login. Version 4 introduces grouping which allows you to collect similar bookmarks into groups for better management - especially for large numbers of bookmarks.