2011-04-29 27 views
0

我有一個webserver,它會經常產生一個乳膠解釋器(用python編寫)。這個解釋器居住在使用jailkit製作的chroot監獄內,所以它必須以root身份啓動。從非根進程運行jailkit

我不希望服務器以root身份運行,也無法setuid bash腳本。我可以編寫一個叫做腳本的setuid c程序,但我很確定會導致嚴重的安全漏洞。

迄今爲止我所提出的最好的方法是以root身份運行一個單獨的web服務器,其唯一的工作是產生解釋器進程。

這樣做的正確方法是什麼?

+0

爲什麼你不能SUID的bash腳本? – 2011-04-29 10:14:22

回答

0

最好的辦法是創建一個非常小的腳本,只需設置環境並調用乳膠解釋器並使該腳本成爲SUID根。

這是最好的,因爲:

  • 的時間最少花費爲根
  • 只是一個單一的腳本必須SUID
  • 小腳本==機率較小做錯事
  • 在運行整個web服務器時,BASH非常安全,而不是。