2011-10-02 116 views
2

的Python/C原始套接字操作我目前正在寫使用Django,阿帕奇mod_wsgi的,它提供了一些FreeBSD的服務器管理和配置功能,包括常用的防火牆操作的Web應用程序,和。使用Django,mod_wsgi的,阿帕奇

我的Python/C庫使用原始套接字與防火牆進行互動,並以根用戶身份運行時,工作完全正常,但原始套接字操作只允許根。

在這一點上,我能想到的唯一的事情是安裝和使用sudo明確允許www用戶訪問/ sbin/ipfw,這是不理想的,因爲我寧願使用我的原始套接字庫操作比一個子進程調用。

我想另一種選擇是編寫(本地域套接字)或使用以root身份運行並處理這些請求的現有作業系統(Celery?)。

或許有一些WSGI守護模式掛羊頭賣狗肉,我不知道的?我確信這個問題以前曾遇到過。有關處理這個問題的最佳方法的任何建議?

回答

1

使用芹菜或運行作爲根一些其它後端服務。以root身份運行Web應用程序進程是一個等待發生的安全問題。這就是爲什麼mod_wsgi阻止你以root身份運行守護進程。當然,你可以破解的代碼禁用排斥,但我不是告訴你該怎麼做。

+0

我同意,當然也沒有任何意圖以root身份運行apache/mod_wsgi ..這就是爲什麼我在這裏。芹菜似乎對這一項操作有點矯枉過正,但對於未來實施中的其他任務來說,它可能會有用。 – kwl34

相關問題