Skip to content

SSH2FA v1.1.0

Choose a tag to compare

@gasvn gasvn released this 30 Jul 19:50
· 39 commits to main since this release

See and change what SSH2FA has stored

Until now there was no way to look at — let alone change — the credentials SSH2FA
keeps for a host. A server-side password change or a 2FA re-enrolment meant
deleting the host and adding it again.

Every host now has a Password & setup view. Open it by double-clicking a host
row, from its ⋯ menu, or with ⌘K.

  • Connection — see where the alias actually points (server address, username,
    port). Editable for hosts SSH2FA set up; read-only for aliases you defined in
    your own ~/.ssh/config, which it still never rewrites.
  • SSH password — see whether one is stored and reveal it behind Touch ID (or
    your Mac password), or replace it after changing it on the server.
  • Two-factor secret — which account it belongs to, its live code, the setup
    URL on request, and a way to replace it by paste or QR.
  • Test login — verifies the stored credentials with a one-shot login that
    can't reuse an existing connection. The secrets stay in the background helper;
    nothing is pulled into the app to check them.

Revealing a secret always asks for Touch ID / your Mac password, even when the
app lock is off, and every reveal is written to the helper's log.

Fixed: the app could stop reconnecting for good

If the background helper was unreachable for more than about four minutes — a
helper update, a long sleep — the app gave up and never tried again. It sat on
"Reconnecting to the background helper…" with a healthy helper on the other end,
until you quit and reopened it. Recovery is now unbounded: it keeps retrying, and
reconnects on its own within seconds of the helper coming back.

Also: Keychain errors now say what to do about them ("choose Always Allow")
instead of showing raw internal text.

Install

brew install --cask gasvn/tap/ssh2fa \
  && xattr -dr com.apple.quarantine /Applications/SSH2FA.app \
  && open /Applications/SSH2FA.app

Already installed? brew reinstall --cask ssh2fa, or download the DMG below.

The app is signed but not notarized, so macOS quarantines it on first download —
the xattr line above clears that, or use System Settings → Privacy & Security →
"Open Anyway".

Note on updating: the background helper is a new binary, so macOS asks
permission the first time it reads each saved credential. Choose Always Allow
and it won't ask again.

Universal (Apple Silicon + Intel). Requires macOS 26.