Step-by-step guides for SSH on macOS
Import ~/.ssh/config into SSHive
Bring your existing OpenSSH config into SSHive — every Host entry becomes a profile in seconds.
Estimated time: 2 minutes
If you've been using SSH on a Mac for years, you have a `~/.ssh/config` packed with Host entries — bastions, production servers, IoT boxes. SSHive can parse it and turn each Host into a profile, including ProxyJump, IdentityFile, Port, User, and HostName directives. The original file stays untouched, so you can keep using `ssh server-name` from any other terminal in parallel.
Step-by-step
- 1
Open the import action — sidebar ⋮ menu, not Settings
At the top of the left sidebar, click the **⋮** ("More actions") button → pick **Import SSH Config**. It is intentionally not in Settings and not in the macOS menu bar — keep that location memorized. SSHive then reads `~/.ssh/config` directly (the macOS sandbox grants read access to that path on first call). - 2
No preview — silent import + a single toast
There is no "here are X profiles, pick which to import" dialog. The click runs the parse synchronously and shows a toast: ✅ `N profile(s) imported` (or ⚠️ `M duplicate(s) skipped` if applicable). Deduplication is done by `host:port:username` — same triple = silent skip, no merge/overwrite modal. - 3
What gets parsed (and what does not)
Mapped one-to-one: `Host` → name, `HostName` → host, `Port` → port, `User` → username, `IdentityFile` → privateKeyPath (auth = privateKey), `ForwardAgent` → agentForward, `LocalForward` → localForwards[], `RemoteForward` → remoteForwards[], `DynamicForward` → socksPort. `ProxyJump` is parsed but the auto-link into the visual Jump Chain may need a manual confirmation — re-pick the bastion in the chain editor if the dropdown shows blank for an imported target. - 4
Read-only — SSHive never writes back to ~/.ssh/config
Sync is **one-way**: import-only. The original file is untouched, so `ssh hostname` from Terminal still works. If you change `~/.ssh/config` later, re-run the import — duplicates will be skipped, only new entries land. Free tier note: imports are subject to the 5-profile cap. If `~/.ssh/config` has 12 hosts and you're on Free, only the first 5 are saved (`ProfileService` truncates at the limit) — upgrade to Pro before importing if you need them all.
Frequently asked questions
Does SSHive modify my ~/.ssh/config?+
No — read-only. The original file is untouched, so `ssh hostname` from Terminal still works. SSHive's profiles are an independent copy. To pick up new edits to `~/.ssh/config`, re-run the import from the sidebar ⋮ menu; duplicates are skipped, only new entries are added.
Can I export SSHive profiles back to ~/.ssh/config?+
Not at the moment — SSHive does not write back to `~/.ssh/config`. Pro users have an encrypted export of their profile bundle for backup and team sharing, but that is a SSHive-format file, not OpenSSH config.
Related SSHive features
Common use cases
A developer SSH workflow built for macOS
Project-based profiles, dev database tunnels, deploy snippets, and AI-assisted server ops via Claude/Cursor.
Manage AWS EC2 instances from your Mac
Connect to public and private EC2 instances with PEM keys, jump hosts, and tunnels — all from one native macOS app.
Step-by-step guides
How to generate and use SSH keys on a Mac
From `ssh-keygen` to passwordless servers in 5 minutes — covers ed25519, ssh-agent, the Apple Keychain, and SSHive integration.
How to use a jump host on a Mac
Visual ProxyJump configuration, agent forwarding, multi-hop chains — without editing ~/.ssh/config every time.
Try SSHive Free for macOS
Get the all-in-one SSH, SFTP, RDP and VNC client for Mac. Free download, no signup required.
Download SSHive Free