Some useful SSH information --------------------------- No password Beware: Passwords are dangerous, but leaving key files unsecured is even worse. (That's why you can add an optional passphrase, which is recommended for root logins) You could also use smartcards or some other non-password input :) Generate private/public key pair combination ssh-keygen -t rsa (or use puttygen and export) Copy ~/.ssh/id_rsa.pub to ~/.ssh/authorized_keys2 on the hosts you want to login to. Make ~/.shh/ accessible and files readable for system using chmod. On your own system make sure the private key is only readable by you. You can copy/paste these commands if you like: chmod 755 ~/.ssh/ chmod 600 id_rsa chmod 644 authorized_keys2 PuTTY Use puttygen.exe to import the generated key and then save it as PuTTY format. Save the key in 'My Documents' folder and encrypt it with NTFS to keep it safe. cipher.exe "%USERPROFILE%\My Documents\*.ppk" In PuTTY, fill in the "SSH/Auth/Private key file" for the connection. You can use the form "user@hostname[:port]" to automatically select the username. Force SSH protocol version 2 otherwise it won't work and your password is cracked within a second. Save the session and open the connection. You can create an Explorer shortcut specifying the session name (Something like 'putty.exe -load "darkfader@myserver"'). If you put it in a toolbar or assign it a hot-key, you can instantly open a console! Problems found: server refused key => forgot to put id_dsa.pub into authorized_keys2 on remote machine. access denied => no idea. probably some incompatibility. Cygwin If you want to start SSH outside of the Cygwin shell, you can set the following environment variables (you can make them global in "My Computer/Advanced/Environment Variables"): PATH=\cygwin\bin;%PATH% (pun in system variables) HOME=/home/darkfader (put in user variables) Apply the settings and open a new command prompt (or enter "ssh host" in the run dialog.) Secure CoPy scp is a secure way to copy files between hosts. So use it! scp files [user@]host[:file] RSync rsync can also use ssh and is used to easily synchronize directories between hosts. For recursion, compress, verbose, copy-time, links and update use: rsync -arzvtlu --stats --progress --exclude-from=exclude --include-from=include -e 'ssh -p 1863' 'darkfader@akusho.xs4all.nl:data/darkfader.net' . rsync -arzvtlu --stats --progress -e ssh msg rafael@raboask1: For a dry-run, use -n option. It might be used for using the --delete option. ssh-agent & ssh-add did't check these out yet... Unusable user shell Not a real good trick, but you if you are trying to login somewhere and immediately get disconnected, you can still use the -N option in ssh. This will bypass interactive login and you can still set some port forwardings to get access to externally blocked ports.