h3. Prerequisites:

In order to use Net::SSH, you must be using a supported version of Ruby's OpenSSL module. The version distributed with Ruby 1.8.1 and earlier is not sufficient, and is lacking several features that Net::SSH relies on. If you are using Ruby 1.8.1 (or earlier), you should either upgrade to 1.8.2, or download and install an updated version of the OpenSSL module. You can download a usable snapshot from the "Net::SSH downloads page":http://rubyforge.org/projects/net-ssh.

Furthermore, you must make sure that Ruby's OpenSSL module has been compiled against _at least_ version 0.9.7 of the OpenSSL library. Prior versions lacked functionality that Net::SSH depends on (notably, the 'padding' property of ciphers).

Optionally, you can install the "ruby-termios":http://raa.ruby-lang.org/project/ruby-termios. If you do, then your passwords won't be echoed to the screen when prompting you for the passphrases needed to load your keys (if your keys have passphrases).

h3. Using "RubyGems":http://rubygems.rubyforge.org

If you have "RubyGems":http://rubygems.rubyforge.org installed, installing Net::SSH is simple:

{{{lang=shell,caption=Using Rubygems to install Net::SSH
gem install net-ssh
}}}

You still need to make sure you have a working version of Ruby's OpenSSL module, but other than that, you should be good to go!

h3. Using "rpa-base":http://rpa-base.rubyforge.org

If you have "rpa-base":http://rpa-base.rubyforge.org installed:

{{{lang=shell,caption=Using RPA to install Net::SSH
rpa install net-ssh
}}}

As with the gem install, you still need to make sure you have a working version of Ruby's OpenSSL module, but other than that, you should be good to go!

h3. Doing it the hard way

If you don't have "RubyGems":http://rubygems.rubyforge.org or "rpa-base":http://rpa-base.rubyforge.org, or if you just prefer to install things by hand, you can always go to the "Net::SSH downloads page":http://rubyforge.org/projects/net-ssh and grab the package of your choice: @tar.gz@, @tar.bz2@, or @zip@.

Then, unpack the archive and run the @setup.rb@ script:

{{{lang=shell,caption=Using setup.rb to install Net::SSH
ruby setup.rb config
ruby setup.rb setup
ruby setup.rb install
}}}

