I think macOS has changed where/how it stores SSH passphrases in the keychain recently, so it might be related, but I can't use a password either!
This is what I get in the log with my existing rule:
- Code: Select all
2017-08-20 12:59:47.073 HazelHelper[499] Error reading keyfile file://localhost/Users/nicholas/.ssh/id_dsa: Error Domain=NSCocoaErrorDomain Code=260 "The file “id_dsa” couldn’t be opened because there is no such file." UserInfo={NSFilePath=/Users/nicholas/.ssh/id_dsa, NSUnderlyingError=0x610000652690 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}
This refers to an old DSA key which I retired since you're not supposed to use them any more...
If I edit the server and try to specify a password, I get:
Error connecting to [server]
The folder “~” could not be accessed. The operation couldn’t be completed. (NSURLErrorDomain error -1012.)
When I try to specify my SSH key, in addition to the above I get:
- Code: Select all
2017-08-20 13:01:39.470 HazelHelper[499] Unable to retrieve generic password for /Users/nicholas/.ssh/id_rsa for SSH: -25300 - Error Domain=NSOSStatusErrorDomain Code=-25300 "errKCItemNotFound / errSecItemNotFound: / The item cannot be found."
The keychain item is definitely there:
- Code: Select all
% security find-generic-password -a '/Users/nicholas/.ssh/id_rsa'
keychain: "/Users/nicholas/Library/Keychains/login.keychain-db"
version: 512
class: "genp"
attributes:
0x00000007 <blob>="SSH: /Users/nicholas/.ssh/id_rsa"
0x00000008 <blob>=<NULL>
"acct"<blob>="/Users/nicholas/.ssh/id_rsa"
However it looks like the passphrase can't be accessed except by OpenSSH itself (and Keychain Access, though it's somewhat special!):
I'm unclear as to exactly how Hazel is trying to SFTP but these problems seem like they might go away if it just uses the built-in SSH and or ssh-agent... as is, I can't get things to work at all.
Thanks,
—Nicholas