
xauth
GUI 프로그램이 SSH를 통해 모든 사용자로 실행될 수 있도록 사용자 간 쿠키 전달을 설정하려고 합니다 . /etc/pam.d/su
합계 에 다음 줄을 추가했습니다 /etc/pam.d/sudo
.
session optional pam_xauth.so
그러나 GUI 프로그램 실행은 여전히 root
실패합니다.
pi@raspberrypi:~ $ echo $DISPLAY
localhost:10.0
pi@raspberrypi:~ $ xauth list
raspberrypi/unix:12 MIT-MAGIC-COOKIE-1 XXX
raspberrypi/unix:11 MIT-MAGIC-COOKIE-1 XXX
raspberrypi/unix:0 MIT-MAGIC-COOKIE-1 XXX
raspberrypi/unix:10 MIT-MAGIC-COOKIE-1 XXX
pi@raspberrypi:~ $ leafpad
# leafpad window opens
pi@raspberrypi:~ $ sudo su
root@raspberrypi:/home/pi# echo $DISPLAY
localhost:10.0
root@raspberrypi:/home/pi# xauth list
xauth: file /root/.Xauthority does not exist
root@raspberrypi:/home/pi# leafpad
PuTTY X11 proxy: Unsupported authorisation protocol
leafpad: Cannot open display:
root@raspberrypi:/home/pi# touch /root/.Xauthority
root@raspberrypi:/home/pi# xauth add $(xauth -f ~pi/.Xauthority list | tail -1)
root@raspberrypi:/home/pi# leafpad
# leafpad window opens
어떤 사용자에 대해서도 ~/.xauth/import
/files가 없습니다. ~/.xauth/export
저는 SSH 클라이언트에서 PuTTY+Xming을 실행하고 있습니다(상관없습니다). 나는 나를 위해 pam_xauth
창조하기 를 고대하고 있었지만 /root/.Xauthority
그런 일은 일어나지 않았습니다. 이유를 아시나요?
답변1
2018년 이후 상황이 바뀌었는지는 잘 모르겠지만, 이제 2021년 Debian Bullseye에서는 질문에 설명된 구성 변경 사항이 제대로 작동하고 있습니다.pam_xauth
만들다$XAUTHORITY
이 파일을 가리키도록 쿠키가 설정된 임시 파일입니다 .
문제는 다음과 관련이 있을 수 있습니다.이 GitHub 문제통화 정보 setuid()
(사용자 ID 설정) sudo
작동하는 버전은 다음과 같습니다.1.9.4.