Secure shell

ssh is a useful tool for secure access over the Internet.

Syntax for port forwarding: * ssh -L local_port:remote_address:remote_port username@server.com

(Note that "remote address" might be a local IP, or it could be localhost) HowToGeek

# Getting your keys in place

Putting your SSH keys in the right place can be tricky. There are command line tools to do this stuff securely, but they're a little confusing. These principles can help handle it in a manageable way:

1. Decide whether or not you're going to use a passphrase. Not having to use one is a nice convenience; but, if you want to be secure, you should be cautious about setting up a scenario in which somebody who gains access to one of your devices can get automatic access to another. So, I use a passphrase. And if you're going to use one, DON'T store the passphrase with the key. This is essentially a form of two-factor authentication.

2. Store your public key in Github. Your public key can be known by anyone; that's the whole point. Github is set up to be able to store public keys.

3. Store your private key (but NOT the passphrase) in a password manager that you keep well secured. This gives you the ability to put the private key on a new machine as long as you can get access to your password manager.

# Screen sharing