Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/lukas-zronek/ssh-askpass-mac

A macOS front-end of ssh-askpass with keychain support
https://github.com/lukas-zronek/ssh-askpass-mac

keychain macos openssh ssh ssh-askpass

Last synced: about 2 months ago
JSON representation

A macOS front-end of ssh-askpass with keychain support

Awesome Lists containing this project

README

        

# ssh-askpass-mac

_ssh-askpass-mac_ is a graphical passphrase dialog for [OpenSSH](https://www.openssh.com) on macOS, which can store the passphrase of a private key in the [keychain](https://support.apple.com/guide/mac-help/use-keychains-to-store-passwords-mchlf375f392/mac). It is intended to be called by the OpenSSH client programs and not invoked directly.

![screenshot](https://github.com/lukas-zronek/screenshots/blob/master/ssh-askpass-mac/passphrase-v3.png "Screenshot of ssh-askpass-mac")

It can also be used as a confirmation dialog when adding the private key to the [ssh-agent](https://man.openbsd.org/ssh-agent.1) with [ssh-add -c](https://man.openbsd.org/ssh-add.1) (recommended):

![screenshot](https://github.com/lukas-zronek/screenshots/blob/master/ssh-askpass-mac/confirmation-v3.png "Screenshot of ssh-askpass-mac")

ssh-askpass-mac was inspired by [ksshaskpass](https://github.com/KDE/ksshaskpass) and should behave like the keychain support prior to macOS Sierra.

## Demo

![](https://github.com/lukas-zronek/screenshots/blob/master/ssh-askpass-mac/passphrase-demo-v3.webp "Demo of ssh-askpass-mac")

## Installation

- Download and unzip the latest version from the [release page](https://github.com/lukas-zronek/ssh-askpass-mac/releases).
- Drag and drop _ssh-askpass.app_ into the Applications folder.
- Control-click the app icon, then choose Open from the menu.
- Click Open to permently add the app as an exception to your security settings.
- Open a terminal app and run:
```
ln -s /Applications/ssh-askpass.app/Contents/Resources/at.zronek.lukas.ssh-askpass.plist ~/Library/LaunchAgents/ && launchctl load -w ~/Library/LaunchAgents/at.zronek.lukas.ssh-askpass.plist
```
- Restart the terminal app

## Building

**Install Xcode**

Building requires Xcode 9 or newer. You can obtain the latest version of Xcode from the [Mac App Store](https://itunes.apple.com/us/app/xcode/id497799835)

**Download**

Open a terminal and run:
```
git clone https://github.com/lukas-zronek/ssh-askpass-mac.git
```

**Compile**
```
cd ssh-askpass-mac
```

```
xcodebuild
```

**Install**

```
mv build/Release/ssh-askpass.app /Applications/
ln -s /Applications/ssh-askpass.app/Contents/Resources/at.zronek.lukas.ssh-askpass.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/at.zronek.lukas.ssh-askpass.plist
```

Than restart the Terminal app.

On macOS < 12 (Monterey) or OpenSSH < 8.4 add the following line to the startup file of your shell (~/.bash_profile (bash) or ~/.zprofile (zsh)):

```
ssh-add()
{
command ssh-add $@