很多時(shí)候,線上環(huán)境的lnmp都不用root來跑。比如nginx單建一個(gè)用戶,mysql單建一個(gè)。代碼文件甚至是nobody用戶。不是很明白,網(wǎng)上也沒相關(guān)的解釋,只告訴你怎么個(gè)原因?有大神給講解講解嗎!
2 回答
www說
TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超8個(gè)贊
安全性考慮。你會發(fā)現(xiàn)Linux的服務(wù)幾乎都不用root身份運(yùn)行,極少有服務(wù)需要root身份的。
設(shè)想如果你的php程序使用root運(yùn)行,萬一你的程序有漏洞,被拿到了web shell,那么黑客將直接擁有root權(quán)限進(jìn)入你的系統(tǒng),想想看這是一件多么可怕的事情。所以你會發(fā)現(xiàn)Linux中對外暴露的服務(wù)幾乎都不用root。
對于Nginx,Apache這種需要bind權(quán)限端口的程序來說,它們的做法是使用root運(yùn)行進(jìn)程,bind端口,fork進(jìn)程以低權(quán)限賬戶(如Nginx)提供服務(wù),你仔細(xì)看看Nginx的進(jìn)程樹就會發(fā)現(xiàn)了
ibeautiful
TA貢獻(xiàn)1993條經(jīng)驗(yàn) 獲得超6個(gè)贊
為了安全。
往深講那就是為什么unix,linux 哪怕是 windows 都有不同的用戶權(quán)限。
- 2 回答
- 0 關(guān)注
- 1173 瀏覽
添加回答
舉報(bào)
0/150
提交
取消
