2012-07-03 116 views
0

在Linux中:如何只允許sudo指定路徑?

我想限制用戶只能在指定的路徑上執行sudo。

須藤文件模式的工作原理上的/ home /克羅梅/ REVA

但須藤文件模式失敗了的/ home /克羅梅

謝謝!

+0

我在visudo上找不到這樣的部分,也許我錯過了 – wei

+0

你到底想要什麼?因爲Krome是一個目錄....所以你必須使用sudo chmod -R/home/Krome ???或別的什麼 – shobhit

回答

0

我不認爲這是可能的,我很確定這是不合理的。

chmod將在/home/Krome內工作,如果它是用戶的主文件夾。

我認爲你需要一個普通用戶(沒有sudo),其他所有東西都可以通過將該用戶添加到組中並將一些文件夾共享到這些組來管理。

0

添加到/etc/sudoers類似下面的一行:

%users ALL = NOPASSWD: /bin/chmod [ugoa][-+=][rwxXst] /home/Krome/* 

它基本上說,所有小組成員users可以象徵性的模式上的任何下/home/Krome/路徑調用sudo chmod

有關更多詳細信息,請參閱man sudo

+0

謝謝,我會嘗試在我身邊。並在這裏反饋 – wei

+0

@ maxim-yegorushkin不會像'''sudo chmod 777/home/Krome/tmpfile/root'''讓我chmod'''/ root'''?如果是這樣,那是一個很大的安全漏洞。 – alexandernst

1

限制用戶或進程在一定路徑可以chroot完成 - 這裏的問題是,chroot$PATH的命令和動態加載的對象將不再是可訪問的,所以你需要一個靜態鏈接外殼,它執行chroot以及內置的命令,用戶將能夠發出命令。