Haproxy

haproxy 和 socat sudo

  • September 17, 2019

我創建了一個測試使用者,並希望限制這個“測試”使用者只能通過 visudo 執行以下命令。

echo "show stat" | socat stdio /var/run/haproxy.sock

視覺

test    ALL=(root)NOPASSWD:/usr/bin/socat stdio /var/run/haproxy.sock

ls -lat /var/run/haproxy.sock

srwxr-xr-x 1 munin haproxy 0 May 22 22:32 /var/run/haproxy.sock

我執行了以下命令

test#sudo echo "show stat" | socat stdio /var/run/haproxy.sock

錯誤資訊

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

我可以知道 visudo 中的配置錯誤嗎

在您的管道中,只有 echo 以提升的權限執行,我相信您在 socat 之前需要一個 sudo。

echo執行為,rootsocat不是。試試這個:

echo "show stat" | sudo socat stdio /var/run/haproxy.sock

引用自:https://serverfault.com/questions/509934