получить ssh-пароль в macOS> = 10.13 - PullRequest
0 голосов
/ 22 мая 2018

Это работает в macOS < 10.13 через командную строку:

$ security find-generic-password -s "SSH" -a "/Users/<user>/.ssh/id_rsa" 

Или используя этот go фрагмент (используя https://github.com/keybase/go-keychain):

usr, _ := user.Current()
dir := usr.HomeDir
keyPath, err := filepath.Abs(filepath.Join(dir, ".ssh/id_rsa"))
if err != nil {
        log.Fatal(err)
}
keyPassword, err := GetGenericPassword("SSH", keyPath, "", "")
if err != nil {
        log.Fatal(err)
}
fmt.Printf("keyPassword = %s\n", keyPassword)

В macOSВысокая Сьерра, это было изменено, не работает через командную строку и не может заставить его работать, пытаясь это:

keyPassword, err := keychain.GetGenericPassword("OpenSSH", keyPath, "SSH: "+keyPath, "com.apple.ssh.passphrases")
if err != nil {
        log.Fatal(err)
}
fmt.Printf("keyPassword = %s\n", keyPassword)

Я финансирую этот пост, может быть связано: https://apple.stackexchange.com/a/268175/104123.

Есть идеи, возможно ли это в последних версиях macOs?

...