I am currently improving my deployment process (I work at a web development agency, and manage and develop 10 or so different sites).
I use a desktop machine, a local (virtual) development server with SVN repo on, and have a separate dedicated live server.
To deploy, I currently SSH (using PuTTY with key and passphrase) into the local devserver, run a script which exports from SVN, gzips, SCP to live server, then unpacks, set permissions etc. I don’t currently use an SSH key on live server, so I have to enter the SSH pass for the live server whenever I deploy.
How would you use SSH keys in this setup? Should I use keys with passphrases to improve security? Without passphrases to improve ease of deployment? Or only use a passphrase for the dev or dedicated machine?
Should I limit SSH to only with key on the live server?
I should certainly start using Pageant locally, but is there anything like this for linux to linux ssh? Any guidance appreciated!