
MacOS High Sierra gpg-agent
대신 사용하고 싶습니다 . ssh-agent
이를 달성하려면 전역적으로 두 가지 환경 변수를 설정해야 합니다.
GPG_TTY=$(tty)
SSH_AUTH_SOCK=${HOME}/.gnupg/S.gpg-agent.ssh
이는 gpg 인증 키와 내 SSH 키에 대한 암호 문구를 저장하는 데 필요합니다.
ssh-agent 통합 기능과 함께 KeePassXC를 사용하기 위해 이런 종류의 설정을 원하므로 내 ssh 키에 대한 모든 임의의 암호 문구가 여기에 저장되고 KeePassXC 데이터베이스가 있을 때 gpg-agent(ssh-agent 대신)에 추가됩니다. 잠금 해제되었습니다. 반면 내 gpg 인증 키의 암호는 기본적으로 gpg-agent에 저장됩니다.
환경 변수를 전역적으로 설정하는 방법을 아는 사람이 있습니까? 내 에서 사용자 전체로 설정하면 ~/.zshrc
KeepassXC는 여전히 gpg-agent와 병렬로 ssh-agent를 시작하고 gpg-agent 대신 시스템의 ssh-agent에 추가합니다.
최종 목표는 ssh-agent를 완전히 비활성화하여 KeePassXC가 이를 시작하지 않고 대신 gpg-agent를 사용하도록 하는 것입니다.
나는 다음을 사용하여 env 변수를 설정하려고 시도했습니다 launchctl setenv
.
$ launchctl setenv SSH_AUTH_SOCK ${HOME}/.gnupg/S.gpg-agent.ssh
$ launchctl getenv SSH_AUTH_SOCK
/Users/drew/.gnupg/S.gpg-agent.ssh
좋아 보이지만 다음과 같습니다.
$ echo $SSH_AUTH_SOCK
/private/tmp/com.apple.launchd.IjNASGcnxM/Listeners
그래서 launchd로 설정된 변수가 무시되는 것 같습니다 ...