前言
Harbor 除了本身提供的 Image 管理服務,管理者也能另外安裝 Trivy(Image 安全掃描) 套件,讓管理者不需要另外安裝與介接,可以於 Harbor 內直接使用 Image 掃描功能。本篇文章將簡單說明安裝 Trivy 套件與如何使用,如有錯誤或任何建議,請各位先進不吝提出。
2.11 版本僅支援 Trivy,chartmuseum 與 notary 已經移除。
如何安裝 Trivy
如果你有印象,我們在 Open Source Registry - Harbor 介紹與安裝 這篇文章中曾提到透過 ./install.sh 指令安裝並啟動 Harbor。如果要安裝 Trivy 服務,只需要在指令後面加上 --with-trivy即可安裝。
sudo ./install.sh --with-trivy
安裝完成後,請記得重啟 Harbor 服務
如何使用 Trivy 進行 Image Scan
Step 1. 安裝完 Trivy,登入到 Harbor,此時您會發現掃描器安裝完成的提示訊息
除此之外,你也能在審查服務確認掃描器狀態。如果有安裝其他掃描器,你也能做預設設定。
Step 2. 隨意勾選 Project 內的 Image artifact,點選開始掃描按鈕後,即開始掃描
注意 1: 掃描工作期間無法進行 Pull 等 Image 操作,需注意避免影響 Production
注意 2: 掃描工作相當耗費資源,應避免用於頻繁存取 Image 的 Harbor,或於離峰時間執行
Step 3. 排入掃描工作、完成後即可檢視掃描日誌
Step 4. 點選 Artifact 後,即可以看見掃瞄出的 image 相關弱點
Step 5. 如果有特殊情境需要做 bypass,管理者可以在設定內找到 CVE 白名單。一旦設定白名單後,其弱點就會被略過。
後記
Harbor 提供 Trivy 掃瞄功能相當方便,但如同文中所提到,掃描期間該 image 是無法進行相關操作,且掃描工作相當耗費資源,使用上需要謹慎評估。下列是一些最佳實踐。
1. 掃描、開發與維運所使用的 Harbor 應該分開,集中在同一座會有效能問題
2. 最佳掃描時間在於新推送 Image 時與離峰時間進行批次掃描
3. 實務上,掃描完成後應盡快推送 Image 至下一個階段,避免後續工作因批次掃描或額外的拉取時間造成效能問題。
0 留言