저는 Arch Linux에서 KDE를 사용하고 있으며 위에서 언급한 대로 ssh-agent 에뮬레이션 모드에서 gpg-agent를 실행하려고 합니다.여기.
~/.config/environment.d/80_gpg_agent.conf
env 파일을 만들었습니다.시스템 환경 생성기:
PINENTRY=pinentry-qt
SSH_AUTH_SOCK=${XDG_RUNTIME_DIR}/gnupg/S.gpg-agent.ssh
언급된 생성기가 이를 허용하지 않기 때문에 설정하지 않았지만 SSH_AGENT_PID
어쨌든 설정해서는 안 됩니다(그리고 그렇지 않습니다).
시스템을 부팅하고 TTY에 로그인하면 올바른 값 SSH_AUTH_SOCK
(에서 systemctl --user show-environment
)을 얻습니다.
그런 다음 KDE 세션에 로그인하지 않으면 올바른 SSH_AUTH_SOCK 값을 얻습니다.
SSH_AUTH_SOCK=/run/user/1000/gnupg/S.gpg-agent.ssh
KDE 세션(Wayland 또는 X11)에 로그인하면 이 값이 무엇인가에 의해 덮어쓰여진 것을 볼 수 있습니다:
SSH_AUTH_SOCK=/run/user/1000/ssh-agent.socket
값은 일반적으로 설정되는 표준 값과 같습니다.SSH 에이전트하지만 ssh-agent가 자동으로 시작되도록 하는 단위 파일이 없습니다.
지금까지 다음 사항을 확인했습니다.
SSH_AUTH_SOCK
, 또는 설정할 코드 가 없습니다.bashrc
..profile
/etc/bash.bashrc
/etc/profile
/etc/profile.d/*
- gpg-agent에 설정한 환경 변수
/etc/environment
내부 또는 외부에 환경 변수가 없습니다.~/.config/environment.d/*
- ssh-agent가 내장된 keepassxc를 사용하지만 자동 시작에 추가하지 않았고 ssh-agent가 비활성화되었습니다.
그렇다면 문제는 이 설정이 어디에 있으며 내 환경을 덮어쓰지 못하게 하려면 어떻게 해야 합니까?
답변1
(더 이상 사용되지 않는) 모듈을 사용하여 문제가 ~/.pam_environment
발생한 것 같습니다 pam_env
.
~/.pam_environment가 덮어쓰여진 것을 발견했습니다.SSH_AUTH_SOCK=${XDG_RUNTIME_DIR}/ssh-agent.socket
더 이상 사용되지 않는 것으로 표시되어 있으므로 사용될 수도 있다는 생각조차 하지 못했습니다.