This Homebrew tap provides various SSH-related tools and utilities for macOS.
Library for macOS Yubikey support for SSH with FIDO2 security keys. This enables hardware-based SSH authentication using FIDO2/WebAuthn security keys.
Installation:
brew install michaelroosz/ssh/libsk-libfido2Post-installation: Run the following command to complete setup:
sudo install-libsk-libfido2This installs the library, writes the launch agent and loads it into your GUI login session.
Alternative: Use the automated cask installer (recommended):
brew install michaelroosz/ssh/libsk-libfido2-installPassphrase dialog for OpenSSH, from MichaelRoosz/ssh-askpass — a fork of theseal/ssh-askpass (ISC licensed). It is packaged here so the other formulae in this tap can ship bottles: Homebrew refuses to bottle a formula whose dependencies are unbottled, and the original tap publishes none.
Installation:
brew install michaelroosz/ssh/ssh-askpassThis formula installs only the ssh-askpass binary. The original also
shipped a launch agent that ran launchctl setenv SSH_ASKPASS, which is exactly
what this tap's own com.mroosz.ssh_env_vars agent does — running both would
mean two agents writing the same session variable. As a result
brew services start ssh-askpass is not supported here; if you relied on it,
keep using theseal/ssh-askpass instead.
Getting SSH_ASKPASS set for your session. Because this formula no longer
ships a launch agent, nothing points SSH_ASKPASS at the binary on its own.
This tap's com.mroosz.ssh_env_vars agent does that — it runs
launchctl setenv at login for SSH_ASKPASS, SSH_ASKPASS_REQUIRE and
SSH_SK_PROVIDER, so terminals and GUI apps started afterwards inherit them.
Install it with the cask:
brew install michaelroosz/ssh/libsk-libfido2-installor, if you prefer the formula:
brew install michaelroosz/ssh/libsk-libfido2
sudo install-libsk-libfido2Check that it took effect (log out and back in first, if you just installed it):
launchctl getenv SSH_ASKPASSIf you would rather not run the agent at all, set the variables yourself in your shell profile instead. Note this only covers shells, not GUI applications:
export SSH_ASKPASS="$(brew --prefix)/bin/ssh-askpass"
export SSH_ASKPASS_REQUIRE=forceAlready using theseal/ssh-askpass? The binary is identical (same upstream
tag, same tarball checksum) and the formula name matches, so both share one
Cellar entry: an existing install already satisfies the formulae here and is not
replaced.
Once you are on this version you can drop the original tap, so brew no longer
has two formulae with the same name:
brew untap theseal/ssh-askpassUntil you do, plain brew install ssh-askpass is ambiguous — use the fully
qualified michaelroosz/ssh/ssh-askpass.
SSH tunnel management tool implemented with xbar for easy GUI management of SSH tunnels.
Installation:
brew install michaelroosz/ssh/ssh-tunnel-managerSource: https://github.com/MichaelRoosz/ssh-tunnel-manager
Non-interactive SSH password authentication tool with a custom fix for the ControlPersist SSH feature.
Installation:
brew install michaelroosz/ssh/sshpassSource: https://sourceforge.net/projects/sshpass/
Automated installer for libsk-libfido2 that handles all configuration automatically.
Installation:
brew install michaelroosz/ssh/libsk-libfido2-installThis cask automatically:
- Installs the libsk-libfido2 library
- Configures environment variables
- Sets up launch agents
- Updates shell configuration
Uninstalling the cask reverses all of it:
brew uninstall --cask michaelroosz/ssh/libsk-libfido2-installNote that sudo install-libsk-libfido2 (the formula route) writes the same
system files, but brew uninstall michaelroosz/ssh/libsk-libfido2 only removes
the formula. To clean up afterwards, remove these by hand:
sudo launchctl bootout "gui/$(id -u)/com.mroosz.ssh_env_vars"
sudo rm /Library/LaunchAgents/com.mroosz.ssh_env_vars.plist
sudo rm /usr/local/lib/libsk-libfido2.dyliband delete the SSH_SK_PROVIDER line from your ~/.zshrc.
First, add this tap to your Homebrew:
brew tap michaelroosz/sshThen install any of the available tools using the installation commands above.