MacOS Catalina Custom SSH Agent
Posted on
OpenSSH bawaan MacOS Catalina (saat ini) versinya cukup tua dan tidak mendukung ed25519-sk. Salah satu cara agar bisa memakai OpenSSH terbaru adalah dengan menginstall openssh via nix-pkg
nix-env -iA nixpkgs.openssh
Command tersebut akan menambahkan binary terbaru untuk ssh-copy-id
ssh-keyscan
ssh
ssh-agent
sftp
ssh-add
scp
ssh-keygen
sshd
Selanjutnya, kita harus membuat konfigurasi LaunchAgent
vim ~/Library/LaunchAgents/org.nix.ssh-agent.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.homebrew.ssh-agent</string>
<key>ProgramArguments</key>
<array>
<string>/bin/sh</string>
<string>-c</string>
<string>rm -f /Users/sumar/.ssh-agent.sock; exec /Users/sumar/.nix-profile/bin/ssh-agent -D -a /Users/sumar/.ssh-agent.sock</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
launchctl bootstrap gui/$UID ~/Library/LaunchAgents/org.nix.ssh-agent.plist
launchctl list | grep ssh
Kemudian export PATH SSH_AUTH_SOCK dari ssh agent tersebut
export SSH_AUTH_SOCK=/Users/sumar/.ssh-agent.sock
Dari sini kita bisa juga kombo dengan KeepassXC, Preference > SSH Agent. Kolom SSH_AUTH_SOCK override diisi dengan /Users/sumar/.ssh-agent.sock
ssh-add -l
256 SHA256:<redacted> main_key (ED25519-SK)