Linux

沒有root權限的iwlist掃描

  • March 8, 2019

我正在編寫需要掃描其中一個無線介面的應用程序。過去,我的程序執行時sudo使用(在程式碼中):

iwlist wlanX scan

但現在我想允許在沒有 root 權限的情況下執行程序。/sbin/iwlist如果我更改to的功能會相對安全cap_net_admin+eip嗎?Iwlist只是為了顯示詳細的無線資訊,所以更廣泛地訪問這個命令可能不是很危險,對吧?

您可以進行配置sudo,以便組的成員可以在沒有密碼的情況下執行命令。用於visudo編輯sudoers文件:

# visudo

添加類似於以下內容的內容:

%mygroup ALL = (root) NOPASSWD: iwlist wlanX scan

到文件的底部(mygroup您的組的名稱前面有一個百分號)。

%mygroup您還可以通過更改為 來允許單個使用者執行它myuser,其中myuser是使用者名(注意缺少百分號)。

或者,您可以通過替換%mygroupALL.

使用capabilities允許cap_net_admin所有iwlist命令,而使用sudo如上配置的命令將其限制為僅具有特定選項的一個命令。那必須更安全。

另一個(一般)原因是 configuresudo比 using 更具可移植性capabilites,儘管如果您只是使用 Linux,這在這種情況下無關緊要。

引用自:https://unix.stackexchange.com/questions/169212