안녕하세요. 주식회사 서버몬 입니다.
Docker 기반 애플리케이션의 보안은 이미지 관리에서 시작됩니다.
Docker Scout는 이미지 취약점 진단, 보안 정책 검증, 그리고 조직 기반 컴플라이언스 적용까지 지원하는 강력한 보안 관리 도구입니다.
이번 콘텐츠에서는 Docker Scout의 설치 과정과 활용 방법에 대해 자세히 알아보겠습니다.
Docker Scout 란?
Docker Scout는 컨테이너 이미지의 보안 취약점과 소프트웨어 구성 요소를 분석하여, 소프트웨어 공급망의 보안 강화를 지원하는 Docker 공식 솔루션입니다.
주요 기능
- 이미지 취약점 분석: 컨테이너 이미지 내 모든 패키지와 라이브러리를 분석하여 취약점을 탐지하고 심각도별로 분류합니다.
- 소프트웨어 구성요소 목록(SBOM) 생성: 이미지 내 소프트웨어 구성요소 목록을 자동으로 생성해, 패키지와 버전을 투명하게 관리합니다.
- 취약점 해결 가이드: 발견된 취약점에 대해 업그레이드가 필요한 패키지 버전과 해결 방법을 제시합니다.
- 정책 및 컴플라이언스 관리: 조직별 보안 정책을 설정하고, 배포 전 정책 준수를 자동으로 검사합니다.
- 다양한 연동 환경: Docker Desktop, Docker Hub, CLI, 대시보드 등 다양한 환경과 CI/CD 파이프라인, 외부 레지스트리와 연동 가능합니다
설치 및 환경 준비
1. Docker Scout 설치
Docker Scout는 Docker CLI와 통합되는 별도 커맨드라인 도구입니다.
다음 명령어로 설치할 수 있으며, 설치 후 docker scout 명령어가 활성화됩니다.
curl -fsSL https://raw.githubusercontent.com/docker/scout-cli/main/install.sh -o install-scout.sh
sh install-scout.sh
설치 스크립트는 GitHub 공식 저장소에서 제공됩니다.
Scout 기능을 검증할 수 있는 공식 데모 애플리케이션을 GitHub에서 클론합니다.
git clone https://github.com/docker/scout-demo-service.git
cd scout-demo-service
해당 애플리케이션은 Node.js 기반이며, express 패키지를 사용하여 보안 취약점 테스트에 적합합니다.
2. 사설 인증서 적용 (옵션)
사내망, VPN, 프록시 환경 등에서 사설 인증서를 사용하는 경우가 많습니다.
인증서를 추가하지 않는 경우 아래 사진과같은 에러가 발생합니다.
ERROR: failed to solve: process "/bin/sh -c apk add --no-cache nodejs" did not complete successfully: exit code: 1
이때는 Docker 컨테이너에 인증서를 수동으로 추가해줘야 curl 등의 보안 통신이 정상 작동합니다.
FROM alpine:3.14@sha256:eb3e4e175ba6d212ba1d6e04fc0782916c08e1c9d7b45892e9796141b1d379ae
ENV BLUEBIRD_WARNINGS=0 \
NODE_ENV=production \
NODE_NO_WARNINGS=1 \
NPM_CONFIG_LOGLEVEL=warn \
SUPPRESS_NO_CONFIG_WARNING=true
#인증서 추가#
COPY 인증서 /usr/local/share/ca-certificates/인증서
RUN cat /usr/local/share/ca-certificates/인증서 >> /etc/ssl/certs/ca-certificates.crt && \
apk --no-cache add \
curl
RUN apk add --no-cache \
nodejs
COPY package.json ./
RUN apk add --no-cache npm \
&& npm i --no-optional \
&& npm cache clean --force \
&& apk del npm
COPY . /app
CMD ["node","/app/app.js"]
EXPOSE 3000
Alpine 기반 이미지이므로 apk 명령어를 사용합니다.
3. Docker 이미지 빌드 및 Docker Hub 푸시
Docker Hub에 계정을 생성한 후, 데모 이미지를 빌드하고 업로드합니다.
Scout는 Docker Hub와 연동하여 보안 분석을 진행합니다.
docker build --push -t servermon/scout-demo:v1 .
--push 플래그는 빌드 후 자동으로 Docker Hub에 업로드합니다.
추후 Scout 분석을 위해 반드시 퍼블릭 또는 등록된 리포지토리에 있어야 합니다.
Docker Scout 활용
5. Docker Scout 계정 등록 및 리포지토리 연동
Docker Scout는 Docker ID 기반으로 조직과 리포지토리를 관리합니다.
다음 명령어로 계정을 등록하고, 이미지를 등록합니다.
# Docker Scout에 계정 등록
docker scout enroll servermon
# 특정 리포지토리 활성화
docker scout repo enable --org servermon servermon/scout-demo
등록 후 해당 리포지토리의 이미지들은 Scout에서 보안 스캔 대상이 됩니다.
6. 이미지 취약점 스캔 (패키지 단위)
Docker 이미지 내 의존성 패키지에 대한 취약점을 분석합니다.
docker scout cves --only-package express
Scout는 CVE DB와 연동해 패키지 단위로 취약점을 정리하며, 심각도 및 권고 사항을 함께 제공합니다.
7. 취약점 수정 및 이미지 재빌드
확인된 취약점을 바탕으로 package.json 등에서 버전을 상향 조정합니다.
이후 새 버전으로 이미지를 빌드하고 다시 푸시합니다.
# 예시: express 버전 업그레이드
vim package.json
# express: "^4.17.1"
express: "^4.20.0"
docker build --push -t servermon/scout-demo:v2 .
# 수정 후 다시 취약점 스캔
docker scout cves --only-package express
최신 버전으로 반영되면 대부분의 알려진 취약점이 제거되며, 이를 통해 보안 정책을 준수할 수 있게 됩니다.
8. 조직 보안 정책 확인
조직 기준으로 어떤 정책이 적용되고 있는지 확인할 수 있습니다.
이는 Scout 웹 콘솔과도 연동됩니다.
docker scout config organization servermon
조직 단위 설정은 정책 평가 기준과 경고 임계값을 설정할 수 있습니다.
9. 보안 규정 준수 여부 확인 (Quickview)
이미지의 보안 상태를 한눈에 요약하여 보여주는 명령어입니다.
docker scout quickview
Docker Scout은 다음 세 가지 상태로 이미지를 평가합니다:
✓ : 규정 준수 | ! : 보안 정책 위반 | ? : 메타데이터 부족 (평가 불가)
주로 CI/CD 파이프라인에서 규정 미준수 이미지를 자동 차단하는 데 활용됩니다.
10. 심각한 취약점만 필터링
대규모 이미지나 외부 의존성이 많은 경우, 심각도 기반 필터링이 유용합니다.
예: Critical 등급의 취약점만 조회
docker scout cves --format only-packages --only-vuln-packages \
--only-severity critical postgres:13.1
postgres:13.1 등 공개 이미지에도 사용 가능하며, 외부 컴포넌트에 대한 보안 분석에도 활용할 수 있습니다.
마무리
Docker Scout을 활용하면 이미지 보안 관리의 효율성을 극대화할 수 있습니다.
단순히 취약점을 진단하는 것에 그치지 않고, 조직의 보안 정책에 맞는 규정을 자동으로 적용하고 CI/CD 파이프라인에 통합할 수 있습니다.
- 사전 예방적 보안: 이미지를 배포하기 전에 잠재적인 보안 위협을 사전에 발견하고 해결할 수 있습니다.
- 정책 기반 보안 관리: Docker Scout은 보안 정책을 준수하며, 조직의 요구사항에 맞는 이미지를 유지하도록 돕습니다.
- 자동화된 보안 점검: 자동화된 보안 점검 체계를 통해, 개발 및 배포 과정에서 보안 점검을 자동화하여 일관성과 효율성을 제공합니다.
이 과정은 모든 보안 관리를 자동화하는 데 필요한 강력한 도구로 자리잡을 수 있습니다.
Docker Scout을 사용하면 개발과 운영 환경에서 보안 사고를 최소화하고, 규정 준수를 효율적으로 달성할 수 있습니다.
1U서버 / 2U서버 / AI서버 / alyac / APC / APC UPS / backup / carepack / centos / chakramax / cuda / DAS / DB / DB서버 / defog / DEFOG랙 / dell5820 / dell5820t / dell7920 / dellpoweredge / dellr240 / dellr340 / dellr350 / dellr450 / dellr540 / dellr630 / dellr640 / dellr740 / dellr750 / dellserver / dellt40 / dellt440 / dellt5820 / dell서버 / DELL서버CPU / DELL서버RAID컨트롤러 / DELL서버SAS하드디스크 / DELL서버가격비교 / DELL서버가격비교견적 / DELL서버견적 / DELL서버구매 / DELL서버디스크교체 / DELL서버메모리 / dell서버서버몬 / DELL서버펌웨어 / DELL서버하드디스크구매 / dell옵션 / dell워크스테이션 / dl20 / dl20gen10 / dl20gen11 / dl360 / dl360gen10 / dl360gen11 / dl380 / dl380g10 / dl380gen10 / dl380gen11 / ECC메모리 / EDFOG랙가격 / embedded / est security / ESTSOFT / FIRMWARE / GPU / gpu서버 / gpu타워형서버 / greenlake / HA솔루션 / HP GPU / hp hdd / hpdl20 / HPDL20Gen10 / hpdl360 / hpdl360gen10 / hpdl380 / hpdl380g10 / HPDL380Gen10 / HPE / HPE GPU / hpe hdd / hpe rok / HPE Service Pack for Proliant / HPE SPP / hpe ssa / hpedl20 / hpedl20gen10 / hpedl360gen10 / hpe서버 / HPE서버CPU / HPE서버RAID컨트롤러 / HPE서버SAS하드디스크 / HPE서버가격비교 / HPE서버가격비교견적 / HPE서버견적 / HPE서버구매 / HPE서버드라이버설치 / HPE서버디스크교체 / HPE서버메모리 / HPE서버비용 / hpe서버소음 / HPE서버펌웨어 / HPE서버하드디스크구매 / hpe옵션 / hpe정품 / hpgen10 / hpml30 / hpserver / hpz2 / hpz4 / hpz4g4 / hpz6g4 / hpz8g4 / hp마이크로서버 / hp서버 / hp서버cto / hp서버pc / HP서버메모리 / hp서버소음 / hp서버컴퓨터 / HP서버파워 / HP서버펌웨어 / HP서버하드디스크 / hp옵션 / hp워크스테이션 / hp정품 / hp프로라이언트 / HYPER BACKUP / ibm서버 / ilo / Intelligent Provisioning / internetdisk / KVM / KVM 기술지원비(비용) / KVM 설치비 / L2스위치 / L3스위치 / LENONO서버SAS하드디스크 / lenovop620 / lenovor650 / LENOVO서버 / LENOVO서버CPU / LENOVO서버RAID컨트롤러 / LENOVO서버가격비교 / LENOVO서버가격비교견적 / LENOVO서버견적 / LENOVO서버구매 / LENOVO서버디스크교체 / LENOVO서버메모리 / LENOVO서버하드디스크구매 / LENOVO펌웨어업데이트 / Linux / ML30 / ml30gen10 / ml30gen11 / ML350GEN10 / ml350gen11 / ML360 / MS CSP / MSSQL / MSSQL 기술지원비(비용) / MSSQL 설치비 / MYSQL / MySQL 기술지원비(비용) / MySQL 설치비 / NAS / NVIDIA / Office 365 / oneview / orange / OS설치 / PA-410 / PA-440 / paloalto / poweredger740 / poweredger750 / precision5820 / QUADRO / r240 / r250 / r340 / r360 / r440 / r550 / r650 / r660 / r740 / r750xs / r760 / r760xs / RAID / redhat / RHEL설치 / RMS랙 / rocky / s100i / securedisk / server / serverpc / smart storage administrator / SPP / sql server / sr250 / sr650 / SYNOLOGY / SYNOLOGY나스 / t150 / t360 / UPS / UPS기술지원 / UPS납품 / UPS설치 / V3 / veeam / vroc / windows server / Windows서버설치 / XEON서버 / z8g4 / 가상서버 / 가성비서버 / 기술지원비(비용) / 나스기술지원 / 나스설치지원 / 네트워크스위치 / 네트워크장비 / 더블테이크 / 데이터베이스 / 델5820 / 델서버 / 델서버비용 / 델서버펌웨어업데이트 / 델옵션 / 델워크스테이션 / 델컴퓨터워크스테이션 / 디포그 / 디포그랙 / 디포그랙가격 / 딥러닝 / 딥러닝pc / 딥러닝서버 / 랙 / 랙(RACK) 기술지원비(비용) / 랙(RACK) 설치비 / 랙납품설치 / 랙설치 / 레노버p620 / 레노버서버 / 레노버워크스테이션 / 레노보서버 / 레노보서버펌웨어 / 레드헷설치 / 레이드 / 레이드구성 / 록키리눅스 / 리눅스 / 리눅스 기술지원비(비용) / 리눅스 설치비 / 리눅스서버 / 리눅스서버설치 / 리눅스서버트러블슈팅 / 리눅스트러블슈팅 / 문서보안 / 문서중앙화 / 미니서버 / 미니서버랙 / 미니서버렉 / 미디어서버 / 방화벽 / 방화벽 기술지원비(비용) / 방화벽 설치비 / 방화벽엔지니어 / 백업 / 백업 기술지원비(비용) / 백업 서버 / 백업서비스 / 백업솔루션 / 보안솔루션 / 보안솔루션구매 / 보안솔루션설치 / 보안툴 / 빔백업 / 샤크라맥스 / 서버 / 서버 기술지원비(비용) / 서 버 랙마운트비용 / 서버 설치비 / 서버 장애조치비용 / 서버CPU / 서버MEMORY / 서버OS설치 / 서버pc / 서버가격 / 서버가속기 / 서버견적 / 서버교체 / 서버구매 / 서버구입 / 서버구축 / 서버기술지원 / 서버납품 / 서버디스크장애처리 / 서버랙 / 서버렉 / 서버렉마운트 / 서버메모리 / 서버 몬 / 서버몬기술지원 / 서버백업 / 서버보안 / 서버부품 / 서버엔지니어 / 서버옵션 / 서버용GPU / 서버용PC / 서버용그래픽카드 / 서버용메모리 / 서버 / 컴퓨터 / 서버용하드디스크 / 서버재고 / 서버컴 / 서버컴퓨터 / 서버트러블슈팅 / 서버판매 / 서버하드 / 서버호스팅 / 스위치 / 스위치 기술지원비(비용) / 스위치 설치비 / 스토리지 / 스토리지 기술지원비(비용) / 스토리지 랙마운트비용 / 스토리지 설치비 / 스토리지 장애조치비용 / 스토리지납품설치 / 스토리지서버 / 시놀로지DS918 / 시놀로지HyperBackup / 시놀로지나스 / 시놀로지나스백업 / 시놀로지하이퍼백업 / 시큐어디스크 / 안랩 / 알약 / 앱서버 / 오피스 365 / 우분투설치 / 워크스테이션 / 워크스테이션pc / 워크스테이션컴퓨터 / 윈도우서버 / 윈도우서버2016 / 윈도우서버2019 / 윈도우서버2022 / 윈도우서버설치 / 윈도우서버컴퓨터 / 윈도우서버트러블슈팅 / 윈도우즈 기술지원비(비용) / 윈도우즈 설치비 / 이스트소프트 / 이스트 시큐리티 / 이중화솔루션 / 이중화솔루션구매 / 이중화솔루션설치 / 인터넷디스크 / 임베디드 / 저가서버 / 저렴한서버 / 정품서버 / 정품서버옵션 / 제온서버 / 젠서버 / 중고서버 / 중고워크스테이션 / 카보나이트 / 카스퍼스키 / 컴퓨터서버 / 케어팩 / 타워서버 / 타워형서버 / 팔로알토 / 페도라설치 / 프로라이언트
'설치 및 기술 자료 > Linux' 카테고리의 다른 글
[Linux] Wazuh 설치 및 agent 연동 (0) | 2025.04.24 |
---|---|
[Linux] Rocky 9.5 - VNC서버 설치 및 원격 연결 (0) | 2025.04.10 |
[Linux] Podman 을 이용한 컨테이너 이미지 실행 및 oracle database 구성 (0) | 2025.04.01 |
[Linux] Zammad 설치 및 이메일 연결 (0) | 2025.03.24 |
[Linux] OSQuery로 시스템 모니터링하기 (0) | 2025.03.21 |
댓글