Skip to content
~/ssh-config-generator
$

SSH Config Generator

Visually build your ~/.ssh/config file — add host entries, configure jump hosts and tunnels, then copy the generated config.

Quick-Add Templates

Host Entries

Generated ~/.ssh/config

Host example

SSH Config Reference

DirectiveDescriptionExample
HostAlias for the connectionmyserver
HostNameActual hostname or IP192.168.1.100
UserLogin usernamedeploy
PortSSH port (default: 22)2222
IdentityFilePath to private key~/.ssh/id_ed25519
ProxyJumpJump through another hostbastion
ProxyCommandCommand to connect to hostssh -W %h:%p bastion
ForwardAgentForward SSH agentyes
LocalForwardLocal port forwarding8080 localhost:80
RemoteForwardRemote port forwarding9090 localhost:3000
ServerAliveIntervalKeep-alive interval (seconds)60
ServerAliveCountMaxMax keep-alive failures3
StrictHostKeyCheckingHost key verificationask
CompressionEnable compressionyes
LogLevelLogging verbosityINFO

What is ~/.ssh/config?

The SSH config file (~/.ssh/config) lets you define connection shortcuts for remote servers. Instead of typing long ssh commands with usernames, ports, and identity files every time, you define a host alias once and connect with a simple ssh myserver.

How to use this generator

Add host entries with the visual form — set the hostname, user, port, identity file, and advanced options like ProxyJump for bastion hosts or LocalForward for SSH tunnels. The tool outputs a properly formatted config block you can paste directly into your ~/.ssh/config file.

Why use an SSH config file?

An SSH config file eliminates repetitive typing, prevents connection errors from mistyped flags, and keeps complex multi-hop setups organized. It is especially valuable when managing multiple servers across different environments like staging, production, and CI.