haproxy 和 socat sudo

Did*_*den 4 sudo haproxy

我创建了一个测试用户,并希望限制这个“测试”用户通过 visudo 只运行以下命令。

echo "show stat" | socat stdio /var/run/haproxy.sock
Run Code Online (Sandbox Code Playgroud)

视觉

test    ALL=(root)NOPASSWD:/usr/bin/socat stdio /var/run/haproxy.sock
Run Code Online (Sandbox Code Playgroud)

ls -lat /var/run/haproxy.sock

srwxr-xr-x 1 munin haproxy 0 May 22 22:32 /var/run/haproxy.sock
Run Code Online (Sandbox Code Playgroud)

我运行了以下命令

test#sudo echo "show stat" | socat stdio /var/run/haproxy.sock
Run Code Online (Sandbox Code Playgroud)

错误信息

2013/05/22 23:13:14 socat[21289] E connect(3, AF=1 "/var/run/haproxy.sock", 23): Permission denied
Run Code Online (Sandbox Code Playgroud)

我可以知道 visudo 中哪些配置不正确吗

Flu*_*lup 7

echo作为运行root,但socat并非如此。试试这个:

echo "show stat" | sudo socat stdio /var/run/haproxy.sock
Run Code Online (Sandbox Code Playgroud)