If you're willing to spend $20 to avoid typing in the code, this looks promising: <a href="http://www.yubico.com/yubikey" rel="nofollow">http://www.yubico.com/yubikey</a>
One thing the article did not really answer was why this is necessary - why is it necessary? I thought that public and private keys were a pretty secure way to SSH into a machine.
I could see where this could get annoying for those who create many separate SSH sessions. What would be the best way to require two-factor authentication only if a user is connecting from a new IP address?
interesting, but two factor ssh authentication can be achieved mucheasier than this: encrypted ssh keys. Something you have (the private key) and something you know (the password to the private key).