W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
能力機(jī)制(Capability)是 Linux 內(nèi)核一個(gè)強(qiáng)大的特性,可以提供細(xì)粒度的權(quán)限訪問控制。 Linux 內(nèi)核自 2.2 版本起就支持能力機(jī)制,它將權(quán)限劃分為更加細(xì)粒度的操作能力,既可以作用在進(jìn)程上,也可以作用在文件上。
例如,一個(gè) Web 服務(wù)進(jìn)程只需要綁定一個(gè)低于 1024 的端口的權(quán)限,并不需要 root 權(quán)限。那么它只需要被授權(quán) net_bind_service
能力即可。此外,還有很多其他的類似能力來避免進(jìn)程獲取 root 權(quán)限。
默認(rèn)情況下,Docker 啟動(dòng)的容器被嚴(yán)格限制只允許使用內(nèi)核的一部分能力。
使用能力機(jī)制對(duì)加強(qiáng) Docker 容器的安全有很多好處。通常,在服務(wù)器上會(huì)運(yùn)行一堆需要特權(quán)權(quán)限的進(jìn)程,包括有 ssh、cron、syslogd、硬件管理工具模塊(例如負(fù)載模塊)、網(wǎng)絡(luò)配置工具等等。容器跟這些進(jìn)程是不同的,因?yàn)閹缀跛械奶貦?quán)進(jìn)程都由容器以外的支持系統(tǒng)來進(jìn)行管理。
從上面的例子可以看出,大部分情況下,容器并不需要“真正的” root 權(quán)限,容器只需要少數(shù)的能力即可。為了加強(qiáng)安全,容器可以禁用一些沒必要的權(quán)限。
這樣,就算攻擊者在容器中取得了 root 權(quán)限,也不能獲得本地主機(jī)的較高權(quán)限,能進(jìn)行的破壞也有限。
默認(rèn)情況下,Docker采用 白名單 機(jī)制,禁用 必需功能 之外的其它權(quán)限。 當(dāng)然,用戶也可以根據(jù)自身需求來為 Docker 容器啟用額外的權(quán)限。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: