2023學(xué)年完整公開課版Docker的安全防護_第1頁
2023學(xué)年完整公開課版Docker的安全防護_第2頁
2023學(xué)年完整公開課版Docker的安全防護_第3頁
2023學(xué)年完整公開課版Docker的安全防護_第4頁
2023學(xué)年完整公開課版Docker的安全防護_第5頁
已閱讀5頁,還剩28頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

Docker的安全防護目錄更新Docker到最新版本2不使用不安全的鏡像倉庫啟用實時恢復(fù)設(shè)置docker.service文件的權(quán)限設(shè)置/etc/docker目錄權(quán)限目錄3設(shè)置daemon.json文件權(quán)限SSH不在容器中運行設(shè)置docker.socket文件權(quán)限容器使用可信的基礎(chǔ)鏡像容器中不安裝沒有必要的軟件包一、更新Docker到最新4(1)安全出發(fā)點:通過及時了解Docker更新,Docker軟件中的漏洞可以得到修復(fù)。攻擊者可能會嘗試獲得訪問或者提升權(quán)限時利用已知漏洞。不安裝常規(guī)的Docker更新可能會讓現(xiàn)有的Docker軟件受到攻擊??赡軙?dǎo)致提升權(quán)限,未經(jīng)授權(quán)的訪問或者其他安全漏洞。所以需要跟蹤新版本并根據(jù)需要進行更新。5(2)影響:對Docker版本更新進行風(fēng)險評估,了解它們可能會如何影響Docker操作。請注意,有些使用Docker的第三方產(chǎn)品可能給需要支持較老版本的Docker。此圖來源網(wǎng)絡(luò)一、更新Docker到最新6(3)了解Docker更新日志:參考鏈接:/install//docker/docker-ce/releases/tag/v18.09.6一、更新Docker到最新7(1)安全出發(fā)點:一個安全的鏡像倉庫建議使用TLS(安全傳輸層協(xié)議用于在兩個通信應(yīng)用程序之間提供保密性和數(shù)據(jù)完整性。)在/etc/docker/certs.d/<registry-name>/目錄下,將鏡像倉庫的CA證書副本放置在Docker主機上。不安全的鏡像倉庫是沒有有效的鏡像倉庫證書或不使用TLS的鏡像倉庫。不應(yīng)該在生產(chǎn)環(huán)境中使用任何不安全的鏡像倉庫。不安全的鏡像倉庫中的鏡像可能會被篡改,從而導(dǎo)致生產(chǎn)系統(tǒng)可能受到損害。二、不使用不安全的鏡像倉庫8(2)審計方法:執(zhí)行以下命令,了解是否使用不安全的倉庫:

ps–ef|grepdockerd確?!?-insecure-registry”參數(shù)不存在此圖來源網(wǎng)絡(luò)二、不使用不安全的鏡像倉庫9(1)安全出發(fā)點:默認情況下,當(dāng)Docker守護程序終止時,它會關(guān)閉正在運行的容器。從DockerEngine1.12開始,您可以配置守護程序,以便在守護程序變得不可用時容器保持運行。此功能稱為實時還原。實時還原選項有助于減少因守護程序崩潰,計劃中斷或升級而導(dǎo)致的容器停機時間。Windows容器不支持實時還原,但它適用于在DockerDesktopforWindows上運行的Linux容器。三、啟用實時恢復(fù)10(2.1)開啟實時恢復(fù):有兩種方法可以啟用實時還原設(shè)置,以便在守護程序不可用時保持容器處于活動狀態(tài)。只能執(zhí)行以下操作之一。(1)將配置添加到守護程序配置文件。在Linux上,默認為/etc/docker/daemon.json。在適用于Mac的DockerDesktop或適用于Windows的DockerDesktop上,從任務(wù)欄中選擇Docker圖標(biāo),然后單擊首選項->守護程序->高級。使用以下JSON啟用live-restore。三、啟用實時恢復(fù)11(2.2)開啟實時恢復(fù):重新啟動Docker守護程序。在Linux上,您可以通過重新加載Docker守護程序來避免重新啟動(并避免容器的任何停機時間)。如果使用systemd,請使用該命令systemctlreloaddocker。否則,向進程發(fā)送SIGHUP信號dockerd。(2)如果您愿意,可以dockerd使用--live-restore標(biāo)志手動啟動該過程。建議不要使用此方法,因為它不會設(shè)置systemd啟動Docker進程時或其他進程管理器將使用的環(huán)境。這可能會導(dǎo)致意外行為。三、啟用實時恢復(fù)12(3)升級期間實時恢復(fù):實時還原支持保持容器在Docker守護程序升級中運行,但這僅限于修補程序版本,不支持次要或主要守護程序升級。如果在升級期間跳過版本,則守護程序可能無法恢復(fù)與容器的連接。如果守護程序無法恢復(fù)連接,則無法管理正在運行的容器,您必須手動停止它們。(4)重啟后實時恢復(fù):如果守護程序選項(例如橋接IP地址和圖形驅(qū)動程序)未更改,則實時還原選項僅用于還原容器。如果這些守護程序級別配置選項中的任何一個已更改,則實時還原可能不起作用,您可能需要手動停止容器。三、啟用實時恢復(fù)13(5)實時還原對運行容器的影響:如果守護程序長時間處于關(guān)閉狀態(tài),則運行容器可能會填滿守護程序通常讀取的FIFO日志。完整日志會阻止容器記錄更多數(shù)據(jù)。默認緩沖區(qū)大小為64K。如果緩沖區(qū)已填滿,則必須重新啟動Docker守護程序才能刷新它們。三、啟用實時恢復(fù)14(1)安全出發(fā)點:“docker.service”文件包含可能改變Docker守護進程行為的敏感參數(shù)。因此,它應(yīng)該由“root”擁有和歸屬,以保證文件的完整性?!癲ocker.service”文件包含可能改變Docker守護進程行為的敏感參數(shù)。因此,除“root”之外的任何其他用戶不應(yīng)該保留文件的完整性。四、設(shè)置docker.service文件的權(quán)限15(2)權(quán)限簡單說明:了解用數(shù)字表示的屬性的含義:0表示沒有權(quán)限,1表示可執(zhí)行權(quán)限,2表示可寫權(quán)限,4表示可讀權(quán)限四、設(shè)置docker.service文件的權(quán)限16(3)設(shè)置docker.service文件所有權(quán)的審計方法:步驟1:找出文件位置:systemctlshow–pFragmentPathdocker.service步驟2:如果文件不存在,此建議不適用。如果該文件存在,請使用正確的文件路徑執(zhí)行以下命令,以驗證文件是由root擁有還是屬于群組。stat–c%U:%G/path/docker.sercive|grep–vroot:root(path為查找到的實際路徑)步驟3:上述命令不應(yīng)該返回任何內(nèi)容,若不是root所有權(quán),那么執(zhí)行以下命令:

chownroot:root/path/docker.service四、設(shè)置docker.service文件的權(quán)限17(4)設(shè)置docker.service文件權(quán)限為644審計方法:步驟1:找出文件位置:systemctlshow–pFragmentPathdocker.service步驟2:如果文件不存在,此建議不適用。如果該文件存在,請使用正確的文件路徑執(zhí)行以下命令,以驗證文件權(quán)限是否設(shè)置為644或者更多限制。

stat–c%a/path/docker.service步驟3:上述命令返回值為644,若不是返回644,那么執(zhí)行以下命令:

chmod644/path/docker.service四、設(shè)置docker.service文件的權(quán)限18(1)安全出發(fā)點:除了各種敏感文件之外,“/etc/docker”目錄還包含證書和秘鑰。因此,它應(yīng)該由“root”擁有和歸組來維護目錄的完整性?!?etc/docker”目錄除了各種敏感文件外還包含證書和秘鑰。因此,它只能由“root”寫入以維護目錄的完整性。五、設(shè)置/etc/docker目錄的權(quán)限19(2)設(shè)置/etc/docker目錄所有權(quán)審計方法:步驟1:請使用以下命令,以驗證目錄是由root擁有和歸屬。

stat–c%U:%G/etc/docker|grep–vroot:root步驟2:上述命令不應(yīng)該返回任何內(nèi)容,若不是root所有權(quán),那么執(zhí)行以下命令:

chownroot:root/etc/docker五、設(shè)置/etc/docker目錄的權(quán)限20(3)設(shè)置/etc/docker目錄權(quán)限為755審計方法:步驟1:請使用以下命令,以驗證目錄權(quán)限是否設(shè)置為755或者更多限制。

stat–c%a/etc/docker步驟2:上述命令返回值為755,若不是返回755,那么執(zhí)行以下命令:

chmod755/etc/docker五、設(shè)置/etc/docker目錄的權(quán)限21(1)安全出發(fā)點:“docker.socket”文件包含可能改變Docker遠程API行為的敏感參數(shù)。因此,它應(yīng)該擁有“root”權(quán)限,以保證文件的完整性?!癲ocker.socket”文件包含可能改變Docker守護進程行為的敏感參數(shù)。因此,除“root”之外的任何其他用戶不應(yīng)該保留文件的完整性。六、設(shè)置docker.socket文件的權(quán)限22(2)docker.socket文件的所有權(quán)審計方法:步驟1:找出文件位置:systemctlshow–pFragmentPathdocker.socket步驟2:如果文件不存在,此建議不適用。如果該文件存在,請使用正確的文件路徑執(zhí)行以下命令,以驗證文件是由root擁有還是屬于群組。

stat–c%U:%G/path/docker.socket|grep–vroot:root步驟3:上述命令不應(yīng)該返回任何內(nèi)容,若不是root所有權(quán),那么執(zhí)行以下命令:

chownroot:root/path/docker.socket六、設(shè)置docker.socket文件的權(quán)限23(3)設(shè)置docker.socket文件權(quán)限為644審計方法:步驟1:找出文件位置:systemctlshow–pFragmentPathdocker.socket步驟2:如果文件不存在,此建議不適用。如果該文件存在,請使用正確的文件路徑執(zhí)行以下命令,以驗證文件權(quán)限是否設(shè)置為644或者更多限制。

stat–c%a/path/docker.socket步驟3:上述命令返回值為644,若不是返回644,那么執(zhí)行以下命令:

chmod644/path/docker.socket六、設(shè)置docker.socket文件的權(quán)限24(1)安全出發(fā)點:“daemon.json”文件包含可能會改變docker守護程序行為的敏感參數(shù),因此,它應(yīng)該由“root”擁有,以維護文件的完整性?!癲aemon.json”文件包含可能會改變docker守護程序行為的敏感參數(shù),因此,只能通過root來保存文件的完整性。七、設(shè)置daemon.json文件的權(quán)限25(2)設(shè)置daemon.json文件所有權(quán)審計方法:步驟1:請使用以下命令,以驗證文件是由root擁有和分組擁有的。

stat–c%U:%G/etc/docker/daemon.json|grep–vroot:root步驟2:上述命令不應(yīng)該返回任何內(nèi)容,若不是root所有權(quán),那么執(zhí)行以下命令:

chownroot:root/etc/docker/daemon.json七、設(shè)置daemon.json文件的權(quán)限26(3)設(shè)置daemon.json文件權(quán)限為644審計方法:步驟1:請使用以下命令,以驗證文件權(quán)限是否設(shè)置為644或者更多限制。

stat–c%a/etc/docker/daemon.json

步驟2:上述命令返回值為644,若不是返回644,那么執(zhí)行以下命令:

chmod644/etc/docker/daemon.json

七、設(shè)置daemon.json文件的權(quán)限27(1)安全出發(fā)點:在容器內(nèi)運行SSH會增加安全管理的復(fù)雜性難以管理SSH服務(wù)器的訪問策略和安全合規(guī)性難以管理各種容器的秘鑰和密碼難以管理SSH服務(wù)器的安全升級可以不使用SSH的情況下對容器進行shell訪問,避免增加不必要的安全管理的復(fù)雜性八、SSH不在容器中運行28(2)審計方法:步驟1:通過執(zhí)行以下命令列出所有運行的容器實例

dockerps–quiet步驟2:對于每個容器實例,執(zhí)行以下命令:

Dockerexec$INSTANCE_IDps–el步驟3:確保沒有SSH服務(wù),若有,從容器中先卸載SSH服務(wù)器,并使用nsenter或者是dockerexec或者是dockerattach與容器實例進行交互。八、SSH不在容器中運行九、容器使用可信的基礎(chǔ)鏡像29(1)安全出發(fā)點官方存儲庫是由Docker社區(qū)或者供應(yīng)商優(yōu)化的Docker鏡像。可能還存在其他不安全的公共存儲庫有的容器鏡像不是從頭開始編寫的,有些會被他人篡改所以我們在從Docker和第三方獲取容器鏡像時,需要謹慎使用。30(2)審計方法:第1步:檢查Docker主機上的Docker鏡像,使用以下命令:dockerimages這將列

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論