Thursday, September 25, 2008

OpenSSH Prelude: Requisite Knowledge

This is a prelude to a series of articles focused on how the sophisticated power of OpenSSH may be harnessed to great advantage with less effort than one might think. Readers already familiar with OpenSSH and passwordless authentication may wish to skip ahead:



OpenSSH: Basic Configuration
OpenSSH: Port Forwarding
OpenSSH: Proxy Connections
OpenSSH: Environmental Override
SSH Coolness ... Even On Windows

I can add little to the vast collection of SSH HowTo's already posted elsewhere[1], a quick Google search will usually yield plentiful information specific even to operating systems, distributions, and software versions. The best inclusive reference is Barrett & Silverman's snail book, and I would especially like to thank Richard E. Silverman for helping me grasp the subtleties of ProxyCommand. For similar reasons, I will not delve deeply into the merits of the various SSH authentication mechanisms; however, some general remarks may help set the stage for this series.

It is likely that if you are using SSH keys on a Linux desktop, your key agent is well integrated with your desktop environment by default, and does an excellent job making SSH2 authentication as unobtrusive as possible; even oppressed Windows users can easily install PuTTY and Pageant to the same end, although I can't say whether all the techniques illustrated will work identically with Windows as I don't touch the stuff myself.

  1. SSH, Encrypted Keys, and Cron is a great example. ^