May 24, 2009

PuTTY for OS X? No thanks.

Wait! Before you read this post…
If you still need to use Putty, read our instructions to install Putty on OS X.
Let us know if you have any questions!
We’re here to help!

Many folks coming from the Windows world often ask where they can find the PuTTY client for OS X. While I do not wish to undermine the quality of the client (as it is, quite likely, the best for Windows), there is no such need for it on OS X. Why? This is simple – because all of the functionality that PuTTY offers, such as SSH, Telnet and Serial abilities come bundled with your OS X install. Since OS X is based on UNIX, it comes with a massive array of utilities that can be found across most different UNIX based OS’s and SSH and Telnet is no exception.


Although you won’t find a pretty interface for performing your SSH/Telnet needs, it is nevertheless very simple to do (and without having to be a UNIX enthusiast). So how do you do it? Via the ‘Terminal‘ App, of course!

So let us begin.

In most cases, there are only 3 options that most people require from SSH and they are:

  1. Be able to specify an IP/Hostname
  2. Be able to specify an SSH/Telnet port
  3. Be able to specify a private SSH key

All of the above can be achieved very easily and quickly. First, open the ‘Applications‘ folder (cmd-shift-a from Finder or go to your Disk->Applications). Locate the ‘Terminal’ application and drag it over to your Dock. Once there, click the ‘Terminal’ icon and a prompt will pop up. From here, you are just a few keyboard strikes away from SSH’ing and telnet’ing your way around the internets.

To ‘ssh’ to a host, type ‘ssh username@hostname.com‘. This is rather self-explanatory – ‘ssh‘ is the command which invokes the ‘ssh’ program, ‘username‘ is the user you wish to connect as, and ‘hostname.com‘ is the host you wish to connect to. While there are multiple different syntaxes for ‘ssh’, this is likely the simplest one to remember.

Now that we’ve covered how to ‘ssh‘ to a host, lets specify a port. With no more than a couple of more keystrokes we can achieve just that. Same way as we specified the command before, this time around we just tack on a ‘-p 2222‘ to the end of the command. The ‘-p‘ is a command line option that takes an argument. So, the end result:

And finally, lets discuss how to use a private SSH key when connecting to a server via SSH. As you can probably already tell, this is achieved via a command line option as well. The option in question is ‘-i‘ and the argument that this option takes is the location of the private key. If you are unfamiliar with UNIX then locating the private key via the Terminal might be a bit confusing, but thankfully, the OS X terminal has a nice and simple solution to this.

Assuming your private key file is located on the Desktop, you can simply drag it over ‘on top’ of the Terminal window and the path to the key will be automatically added, saving you a whole lot of typing.

As you can see, you can specify multiple options in the same command!

There are many, many more other things you can accomplish with the ‘ssh’ client, however these subjects are beyond the scope of this quick intro.

And as a final note – the default color scheme for Terminal is rather ugly and many do not know that the Terminal can, in fact, be just as pretty as any other OS X app. To do so – go to Terminal->Preferences->Settings, select the ‘Pro‘ color scheme/theme and press the ‘Default‘ button. Quit the Terminal application and relaunch. You should now see a Terminal just like in the screenshots above :)

Good luck!


Share

Read more from OS X
About the author, Daniel

23 Comments Post a comment
  1. Odessa
    Jul 7 2009

    thanks!

  2. Oct 17 2009

    I don’t know – somebody even ported putty to Linux, so obviously there seems to be a demand for putty on Unixes or Unix-like platforms.

    The thing is, once you got used to putty’s weird copy & paste behaviour (via marking and right-clicking), you simply expect this functionality in telnet and ssh sessions. It’s actually quite handy and easy to use when you work a lot with Cisco routers.

    Furthermore, I can also relatively easy store session-specific profiles in putty.

    Since putty (and WinSCP) are some of my mostly used tools at work – where I use a Windows notebook – why should I switch to using something else when I’m in Linux, FreeBSD or OS X? Isn’t this one of the blessings of Open Source and multi-platform applications that I more or less can use my favorite apps no matter what system I’m using?

    So – yes, please, bring putty to OS X. :-)

    Other than that, you wrote a very nice and helpful article. Thanks for that!

  3. Ed
    Dec 16 2009

    I’d love to see an example of how to use the serial capabilities.

    RE: “Furthermore, I can also relatively easy store session-specific profiles in putty.”

    It is extremely easy to add configurations for ssh as well. Simply edit ~/.ssh/config and add entries with your favorite text editor like so:

    Host myhost
    Hostname myhost.somewhere.net
    Port 2222 (optional)
    User me (optional, if different from your local account)
    Host myotherhost
    Hostname myotherhost.elsewhere.net

    Plus you can specify local / remote forwards, etc. Then you can simply do:

    ssh myhost

    And it’ll look it up in your config with whatever options you’ve specified. You can also have global options by using Host *

  4. Beat
    Feb 27 2010

    Yes! I know JellyfiSSH iTerm and “builtin” ssh. I can work with screen or tmux too. But as System Engineer I have at work sometimes a bunch of open PuTTY sessions. What I miss most is the ability to reconnect or duplicate session with one mouse click. When you are troubleshooting a big network with tons of switches and routers, then You know the benefits of it. And if you have something on the serial console too, it has exact the same Interface. And ad Winfried says: The Cut and Paste behavior is strange. But extreme fast and easy.. PuTTY was for me the most valuable free (MIT Licence) Windows tool ever. It is a pity, that nothing similar is available for OSX

  5. Eric
    Apr 14 2010

    While the built-in terminal is good for 90% of people it’s emulation is lacking in several key areas. Putty bests terminal in completeness of it’s emulation, accuracy of emulation, and surprisingly UTF-8 accuracy. It would be great to see a cocoa native putty derivative some day.

  6. CB
    Jun 18 2010

    One thing putty is nice about is allowing the use of a http proxy to tunnel my ssh connection through. My company forces all ssh traffic through ssh.mycompany.com and putty is the only client I’ve ever seen to allow the use of this. If you know of another, please let me know!

  7. monkster
    Nov 10 2010

    Another cool thing PuTTY does is to allow you to have different look and feel for all your various ssh sessions. When the font and colors are different, it helps if you tend to get disoriented when switching between open sessions.

  8. Nov 27 2010

    I’ve used Linux for years. However recently I started to run Putty under WINE in Linux. Ssh doesn’t let me send keep alives from the client. Putty does, plus I can save and load configs. I’m sold it’s Putty for me and one of my first actions when setting up a new Mac is to get Putty going.

  9. Daniel
    Nov 28 2010

    You are aware that OpenSSH also ships with a client config under every unix based OS?

    botch:~ zee$ grep -i alive /etc/ssh_config
    ServerAliveInterval 240
    botch:~ zee$ uname -a
    Darwin botch.local 10.4.0 Darwin Kernel Version 10.4.0: Fri Apr 23 18:28:53 PDT 2010; root:xnu-1504.7.4~1/RELEASE_I386 i386

  10. bluemonkey
    Nov 30 2010

    you know, iTerm has the same “select is copy” behavior of Putty, which was my fave thing about Putty. you gotta command-v to paste, not right click, but to me that’s just as quick. Also, iTerm has bookmarks, which are fairly similar to stored sessions in Putty. So… for me it works as well as Putty, hopefully others coming here with Putty-withdrawal symptoms will have the same experience as me.

  11. Nov 30 2010

    monkster, Terminal allows you to change colors and fonts too. You can find it easily in the settings.

  12. alt
    Jan 6 2011

    I’m used to using the Alt key in Linux as a replacement for Esc, as in Alt-. instead of Esc . but in Terminal, the Alt key doesn’t work that way, it causes it to generate international characters instead, which I don’t need. Putty does this right on Windows, so I’ll have to give it a try on the Mac.

  13. askh
    Feb 1 2011

    in Snow Leopard default Termianl app provides the same functionality as Putty for Duplicate Session and storing connection presents as following:

    1. In Preferences on Settings page duplicate your favorite setting (Pro for instance) and add desired remote connection command for Startup in Shell subpage (ssh user@server for example) naming this setting (let’s say) ‘MyPro’

    2. Start first terminal session MyPro as Tab, than if you right-click on it’s tab you can select “New Tab with Settings – MyPro” from dropdown menu that will duplicate your session.

    3. Or if you right-click on a tab bar empty space you can do “New Tab->MyPro” from context dropdown menu and open new tab with desired session preset.

    4. For Serial connection use command “screen /dev/tty. 115200″ for example

  14. Bob
    Apr 9 2011

    I use PuTTY to connect to VMS systems where I need the VT100 EDT/TPU keypad mapping. I haven’t been able to get this to work with either Terminal or iTerm.

    If someone can explain how to get everything to work, including the “GOLD” (numlock) key behaving as it does on a VT, I’m interested. Otherwise I still need something else for our new Mac.

  15. Tom
    May 2 2011

    This was clearly written by someone that has never actually tried to use the serial functionality of the OSX terminal and probably has never actually used any sort of serial terminal or serial terminal emulation before. The OSX terminal app is worthless for serial stuff even if it is fine for ssh. Screen is a little better but, still not real terminal emulation. Putty is the best free application by far. There are some better commercial ones though. They are usually expensive as they are usually sold to companies not individuals.

  16. Mark
    May 28 2011

    The problem with this review is that it does not explain how horrible the OS X terminal is. Those of us who have used real X terminals enjoy copy-on-select and paste-on-middle. We like to turn off alternate window switching (or, at least have the option). Putty running on OS X really is a joy.

  17. SO
    Jul 14 2011

    As “Mark” above says, this article misses how bad the behavior of Terminal really is on a regular basis, it is better than the Windows command line interface (by a lot), but it has a lot of annoying quirks and some of them cannot be easily worked around. As some other posters also noted PuTTY was ported to Linux because of popular demand, and it wasn’t the middle click copy option (a unix gui standard for a very long time), it was the very good terminal emulation and the way PuTTY almost always behaves properly, no line overlaps, no odd mouse behavior, the default settings are very good.

  18. MM
    Jul 31 2011

    You guys should try Secure CRT. It can do everything this free ware can do and more. There is a 30day trial for OSX.

  19. Guy
    Nov 12 2011

    MM is correct. I use Secure CRT everyday and although Putty works, Secure CRT is superior when you need to have multiple sessions open and use numerous scripts. But, Putty is a great free app while Secure CRT is a great paid app.

  20. mrsleep
    Jan 19 2012

    Gotta love righteous *nix nerds who can’t see ANY reason why you want might want expanded functionality out of your telnet client.

Trackbacks & Pingbacks

  1. [Tutorial] Install Putty On OS X Leopard - Page 2 - Surpass Web Hosting Forums
  2. How to Install Putty on OS X
  3. Basic Terminal Commands in OS X

Leave a Comment

Note: Make sure you enter the required information where indicated. HTML is allowed. Your email address is Required but, will never be published.

Required
Required, but not shared

Get notified Subscribe to comments