From the Terminal
If you're like me you need to login to multiple servers via SSH on a daily basis. For many years when I was younger I typed in the whole IP or hostname of a server everytime I wanted to login to that server. After learning how to use the ssh config file logging into your SSH machine can be cut down to just a few keystrokes.
The SSH config file is always in ~/.ssh/config
Here's a template you can use.
Host alias HostName example.com User user IdentityFile /Users/user/.ssh/mykey_rsa
You can create as many entrees in the file as you like.
- Hostname can be a DNS resolved domain name or an IP address but that is what SSH will try to actually connect to.
- Host is actually just the name of this entry in this case I used "alias".
- User when you type in the SSH command in terminal you can specify a user like normal but if you don't it will use the option you put in
- IdentityFile is an optional setting to specify your private key SSH key.
When I type in ssh alias in the terminal it will simply connect to example.com as user.
Here's an example
Host henryparadiz.com hp Hostname henryparadiz.com User henry IdentityFile /Users/henry/.ssh/personal_rsa
henry@Coder-Laptop:~$ ssh hp Enter passphrase for key '/Users/henry/.ssh/personal_rsa': Welcome to Ubuntu 16.04.4 LTS (GNU/Linux 4.4.0-116-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 23 packages can be updated. 13 updates are security updates. Last login: Mon Apr 16 05:26:15 2018 from 127.0.0.1
Notice how I use the second alias under the host option simply "hp" which allows me to shorten the entire command to just the above. Easy and simply way to speed up your development.