If you are working with a lot of remote ssh hosts it becomes hard to remember all that host specific information: username, ip address, identity file, non-standard port or local/remote port forwarding.
ssh_config to rescue. Here is a sample to give you an idea (file
~/.ssh/config):
Compression yes
IdentityFile ~/.ssh/id_rsa
LogLevel ERROR
Port 22
Host h1
HostName 192.168.91.57
User master
IdentityFile ~/.ssh/h1.pem
Host db1
HostName usca45d1.example.com
User pg
LocalForward 5432 127.0.0.1:5432
The above configuration let me access those hosts simply by name, e.g.:
ssh h1
scp schema.sql db1:~/