openssl key for drush
By default, Drush runs ssh with the option -o PasswordAuthentication=no, which prohibits username/password access and requires that you use a public/private key pair to access your server.  This is exactly what you want, and in fact, by default, ssh will use the private key that it finds at $HOME/.ssh/id_rsa to authenticate you with remote servers.

If you need to use some other private key, though, you can put this line in your drushrc.php file:

$options['ssh-options'] = '-o PasswordAuthentication=no -i /home/YOURUSERNAME/.ssh/other_id_rsa';


Note that Drush will not automatically evaluate bash shortcuts such as $HOME or ~.  If you do not want to hardcode the path to your home folder, you may look it up with $HOME = drush_server_home();.