오프라인 환경
오프라인 보안 스캔 및 취약점 해결.
Note 오프라인 환경을 구성하려면 구매 전에 클라우드 라이선스 옵트아웃 예외 를 받아야 합니다. 자세한 내용은 GitLab 영업 담당자에게 문의합니다. 인터넷에 연결되지 않은 상태에서도 대부분의 GitLab 보안 스캐너를 실행할 수 있습니다. 이 문서는 오프라인 환경에서 Secure 카테고리(즉, 스캐너 유형)를 운영하는 방법을 설명합니다. 이 지침은 보안이 적용되었거나, 방화벽 정책과 같은 보안 정책이 있거나, 그 밖의 이유로 인터넷 전체에 접근하지 못하는 GitLab Self-Managed 인스턴스에도 적용됩니다. GitLab은 이러한 환경을 오프라인 환경 이라고 부릅니다. 흔히 쓰이는 다른 명칭은 다음과 같습니다. 에어갭 환경 제한된 연결 환경 근거리 통신망(LAN) 환경 인트라넷 환경 이러한 환경에는 인터넷 접근을 막거나 제한하는 물리적 장벽이나 보안 정책(예: 방화벽)이 있습니다. 이 지침은 물리적으로 분리된 네트워크를 대상으로 하지만, 앞서 언급한 다른 사례에도 적용할 수 있습니다. 오프라인 환경 정의 # 오프라인 환경에서 GitLab 인스턴스는 로컬 네트워크로 통신할 수 있으나 인터넷 접근이 없거나 매우 제한된 하나 이상의 서버와 서비스로 구성될 수 있습니다. GitLab 인스턴스와 이를 뒷받침하는 인프라(예: 사설 Maven 리포지터리)의 모든 요소는 로컬 네트워크 연결로 접근할 수 있다고 가정합니다. 인터넷에서 오는 모든 파일은 물리 매체(USB 드라이브, 하드 드라이브, 기록 가능한 DVD 등)를 통해 들어와야 한다고 가정합니다. 오프라인 스캐너 사용 # GitLab 스캐너는 보통 최신 시그니처, 규칙, 패치 세트를 내려받기 위해 인터넷에 연결합니다. 로컬 네트워크에서 사용할 수 있는 리소스로 도구가 올바르게 동작하도록 구성하려면 몇 가지 추가 단계가 필요합니다. 컨테이너 레지스트리 및 패키지 리포지터리 # 큰 틀에서 보안 분석기는 Docker 이미지로 제공되며 여러 패키지 리포지터리를 활용할 수 있습니다. 인터넷에 연결된 GitLab 설치에서 job을 실행하면, GitLab은 GitLab.com에서 호스팅하는 컨테이너 레지스트리를 확인해 이 Docker 이미지의 최신 버전을 사용하고 있는지 검사하며, 필요한 의존성을 설치하기 위해 패키지 리포지터리에 연결하기도 합니다. 오프라인 환경에서는 GitLab.com에 질의하지 않도록 이러한 검사를 비활성화해야 합니다. GitLab.com 레지스트리와 리포지터리를 사용할 수 없으므로, 각 스캐너가 내부에서 호스팅하는 다른 레지스트리를 참조하도록 수정하거나 개별 스캐너 이미지에 접근할 수 있게 해야 합니다. 또한 npm, yarn, Ruby gem처럼 GitLab.com에서 호스팅하지 않는 일반 패키지 리포지터리에 애플리케이션이 접근할 수 있어야 합니다. 이러한 리포지터리의 패키지는 네트워크에 일시적으로 연결하거나, 오프라인 네트워크 안에 패키지를 미러링해 확보할 수 있습니다. 취약점과 상호 작용 # 취약점이 발견되면 해당 취약점을 처리할 수 있습니다. 자세한 내용은 취약점 해