How to use the SSH Config Generator
- 1. Describe the main hostAlias, address, user, port and key file.
- 2. Add more hostsOne line each, like github github.com or db deploy@10.0.1.5:2222.
- 3. Save the configAdd it to ~/.ssh/config and chmod 600 the file.
Worked example
The defaults create two hosts. Host prod-web points at 203.0.113.20 as user deploy with IdentityFile ~/.ssh/id_ed25519 and IdentitiesOnly yes, so SSH offers only that key. The second line, github github.com, becomes a Host github entry for github.com; because it is GitHub, the user is set to git automatically. Both get ServerAliveInterval 60 and ServerAliveCountMax 3, which keep idle sessions from being dropped by routers.
After saving, ssh prod-web replaces ssh -i ~/.ssh/id_ed25519 deploy@203.0.113.20, and the alias also works with scp, rsync and Git remotes.
Bastions, keys and safety
- ProxyJump connects through a bastion host. Set it to the alias of the bastion and SSH hops through it automatically.
- Port is written only when it is not 22.
- ed25519 keys are short, fast and recommended for new keys. Create one with ssh-keygen -t ed25519.
- File permissions: SSH refuses to use a config or key that others can read, so use chmod 600 for both and 700 for ~/.ssh.
Keep one config file per machine rather than copying keys between laptops; each device should have its own key. The tool writes text only and never asks for or handles private keys. Work out those permission numbers with the chmod calculator, and check which subnet a server is in with the CIDR calculator.
Frequently asked questions
Where is the SSH config file on Windows?
In C:\Users\YourName\.ssh\config for the built-in OpenSSH client. The same syntax works.
Can one alias match many servers?
Yes. Host patterns such as Host *.internal apply settings to every matching name.
Is the SSH Config Generator free?
Yes, the SSH Config Generator is free. The first time you generate your first config, you are asked for your name and WhatsApp number once. After that, this and every other Uncodemy tool opens straight away without the form.