SSH technically works the same anywhere, but on Windows without special tooling, using SSH can be cumbersome as the CLI is not very… elegant? Generally, on Windows, people use tools like putty or MRemoteNG (also putty based) to make things neater.
If you’re on Linux, you can use SSH out of the box very cleanly by leveraging the config file to create named hosts.
For example, this verbose command:
ssh -i ~/.ssh/prod-key.pem centos@10.20.30.40
Can be replaced by the following command – and the nice “pgadmin-prod” name even auto-completes. So, if you have 100 servers for different things, you can still find them easily.
ssh pgadmin-prod
This works if you add the following block into your ~/.ssh/config file.
Host pgadmin-prod User centos HostName 10.20.30.40 IdentityFile ~/.ssh/prod-key.pem
Where:
- Host = the user-friendly name I want to use for this connection.
- User = the user I normally have to log in as.
- HostName = the IP address of the target host.
- IdentityFile = the path to the private key used for the connection.
You can have as many named hosts as you like and, again, their names will auto complete after the ssh command – so they’re very easy to use.
This gets even more effective if you combine it with a screen/session management app like tmux or screen. So, I recommend you look into those too if you don’t use them already (tmux is a little more modern if you’re a new to both).
I hope this helps you be a little more efficient, and thanks for reading.