내 OpenBSD 컴퓨터에는 두 명의 일반 사용자("user" 및 "TESTUSER")가 있고 다음 doas 구성이 있습니다.
# cat /etc/doas.conf
permit setenv { DISPLAY=:0 } nopass user /usr/X11R6/bin/xcalc as TESTUSER
#
하지만 "user"(예: "TESTUSER")를 사용하여 "xcalc"를 실행하려고 하면 구문 오류가 발생합니다.
$ id
uid=1000(user) gid=1000(user) groups=1000(user), 0(wheel)
$ doas /usr/X11R6/bin/xcalc
doas: syntax error at line 1
$
질문: 내가 무슨 문법적 오류를 범했나요?
https://man.openbsd.org/cgi-bin/man.cgi/OpenBSD-current/man1/doas.1 https://man.openbsd.org/doas.conf
답변1
귀하의 구성
permit setenv { DISPLAY=:0 } nopass user /usr/X11R6/bin/xcalc as TESTUSER
설명서의 형식을 따르지 않음(구문 오류가 발생하는 곳):
permit|deny [options] identity [as target] [cmd command [args ...]]
이 명령은 마지막에 배치되어야 합니다.
permit setenv { DISPLAY=:0 } nopass user as TESTUSER cmd /usr/X11R6/bin/xcalc
doas
그런 다음 다음 과 같이 전화해야합니다 .
$ doas -u TESTUSER /usr/X11R6/bin/xcalc