SSH를 수행할 때 키링에서 더 이상 비밀번호를 묻는 메시지가 표시되지 않습니다.

SSH를 수행할 때 키링에서 더 이상 비밀번호를 묻는 메시지가 표시되지 않습니다.

나는 전체 그놈 세션에 대한 키링 잠금을 해제하기 위해 암호를 묻는 메시지를 표시하고 나중에 더 이상 키링 암호를 입력할 필요가 없다는 것을 기억합니다 (이것이 우분투에 있는지 확실하지 않습니다). 또는 다른 배포판).ssh [email protected]ssh

하지만 요즘에는 터미널에서 매번 키링 비밀번호를 묻곤 합니다. 이는 SSH 키를 사용하는 목적을 상실합니다.ssh [email protected]

나는 확인했다

$ cat /etc/pam.d/lightdm | grep keyring
auth    optional        pam_gnome_keyring.so
session optional        pam_gnome_keyring.so auto_start

괜찮아 보이는데, 그리고

$ pgrep keyring
1784 gnome-keyring-d

따라서 키링 데몬은 살아 있습니다.

마침내 SSH_AUTH_SOCK 변수(및 GNOME_KEYRING_Control, GPG_AGENT_INFO 및 GNOME_KEYRING_PID)가 제대로 설정되지 않은 것을 발견했습니다. 이 변수를 설정하는 올바른 방법은 무엇이며 내 환경에서는 왜 설정되지 않습니까(즉, 기본 설치에서 설정하면 안 됩니까)?

.bashrc에서 설정할 수 있을 것 같지만 변수는 bash 세션에서만 정의되지만 ssh에는 괜찮지만 GUI 앱이 키링을 사용하려면 다른 환경 변수가 필요하다고 생각합니다.

답변1

Arch Wiki에서 다음을 찾았습니다.https://wiki.archlinux.org/index.php/GNOME_Keyring

gnome-keyring-daemon -s기본적으로 특정 키링 값을 얻기 위해 실행한 다음 .bashrc에 다음을 추가합니다.

SSH_AUTH_SOCK=`netstat -xl | grep -o '/run/user/yourusername/keyring-xxxxxxx.*/ssh$'`
[ -z "$SSH_AUTH_SOCK" ] || export SSH_AUTH_SOCK

그러면 ssh가 키링 GUI를 통해 비밀번호를 묻게 됩니다.

답변2

저는 주로 Ubuntu 워크스테이션과 제가 작업하는 모든 웹사이트가 있는 다른 Ubuntu 웹 서버 사이에서 ssh를 많이 사용합니다. 귀하와 동일한 증상이 나타난 적이 있는데, 터미널을 실행하는 방식에 문제가 있는 것으로 나타났습니다. 특정 명령줄을 전달하고 싶었기 때문에 gnome-terminal을 실행하기 위한 사용자 정의 바로가기를 만들었습니다. 하지만 xterm을 실행해도 같은 문제가 있었던 것 같습니다.

내장된 단축키(Alt-Ctrl-T) 또는 메뉴에서 터미널을 실행하면 올바르게 작동하고 비밀번호를 묻는 GUI 대화 상자가 표시되지만 사용자 정의 단축키에서 실행하면 항상 터미널 자체에서 물었지만 기억하지 못했습니다.

답변3

나에게도 이런 문제가 있었다. 갑자기 나타났습니다. 동일한 도메인에 대해 저장된(아마도 잘못된)(SFTP) 로그인 비밀번호로 인해 발생한 것으로 보입니다.

해결책

(Gnome 키링)을 열고 Password and Keys비밀번호를 삭제하십시오 (Ubuntu 키링 아래에 있음)

Paasword 및 키 창

재부팅하면 모든 것이 정상이었습니다.

export | grep SOCK

이제 다시 반환되었습니다: SSH_AUTH_SOCK=/run/user/yourusername/keyring-xxxxxxx.*/ssh

관련 정보