에셋 프록시
외부 이미지를 프록시하여 사용자 IP 주소 유출을 방지하는 방법을 설명합니다.
공개용 GitLab 인스턴스를 관리할 때 발생할 수 있는 보안 우려는 이슈 및 코멘트에서 이미지를 참조하여 사용자의 IP 주소를 도용할 수 있는 가능성입니다. 예를 들어 이슈 설명에  를 추가하면 이미지가 외부 서버에서 로드되어 표시됩니다. 그러나 이를 통해 외부 서버가 사용자의 IP 주소를 기록할 수 있습니다. 이를 완화하는 한 가지 방법은 제어하는 서버로 외부 이미지를 프록시하는 것입니다. GitLab은 이슈 및 코멘트에서 외부 이미지/동영상/오디오를 요청할 때 에셋 프록시 서버를 사용하도록 구성할 수 있습니다. 이렇게 하면 악성 이미지가 가져올 때 사용자의 IP 주소를 노출하지 않도록 할 수 있습니다. 현재 동영상, 오디오 프록시를 지원하고 더 구성 가능한 cactus/go-camo 사용을 권장합니다. Camo 서버 설치 # Camo 서버는 프록시 역할을 합니다. 에셋 프록시로 Camo 서버를 설치하려면: go-camo 서버를 배포합니다. cactus/go-camo 빌드 에서 유용한 지침을 찾을 수 있습니다. [!warning] 에셋 프록시 서버는 form-action 'none' (기본 go-camo 헤더와 함께)과 같은 올바른 콘텐츠 보안 정책 헤더를 사용하도록 구성되어야 합니다. GitLab 인스턴스가 실행 중인지 확인하고 프라이빗 API 토큰을 만들었는지 확인합니다. API를 사용하여 GitLab 인스턴스에서 에셋 프록시 설정을 구성합니다. 예를 들어: curl --request "PUT" "https://gitlab.example.com/api/v4/application/settings?\ asset_proxy_enabled=true&\ asset_proxy_url=https://proxy.gitlab.example.com&\ asset_proxy_secret_key=<somekey>" \ --header 'PRIVATE-TOKEN: <my_private_token>' 다음 설정이 지원됩니다: 속성 설명 asset_proxy_enabled 에셋 프록시를 활성화합니다. 활성화된 경우 asset_proxy_url 이 필요합니다. asset_proxy_secret_key 에셋 프록시 서버와의 공유 비밀. asset_proxy_url 에셋 프록시 서버의 URL. asset_proxy_whitelist (더 이상 사용 안 함: 대신 asset_proxy_allowlist 사용) 이 도메인과 일치하는 에셋은 프록시되지 않습니다. 와일드카드 허용. GitLab 설치 URL은 자동으로 허용됩니다. asset_proxy_allowlist 이 도메인과 일치하는 에셋은 프록시되지 않습니다. 와일드카드 허용. GitLab 설치 URL은 자동으로 허용됩니다. 변경 사항을 적용하려면 서버를 재시작합니다. 에셋 프록시의 값을 변경할 때마다 서버를 재시작해야 합니다. Camo 서버 사용 # Camo 서버가 실행 중이고 GitLab 설정을 활성
