Docs Menu
Docs Home
/
MongoDB 매뉴얼
/ /

MongoDB 패키지의 무결성 확인

이 페이지의 내용

  • Linux/macOS 패키지 확인
  • Windows 패키지 확인

MongoDB 릴리스 팀은 모든 소프트웨어 패키지의 디지털 서명을 통해 특정 MongoDB 패키지가 유효하고 변경되지 않은 MongoDB 릴리스임을 증명합니다. MongoDB를 설치하기 전에 제공된 PGP 서명 또는 SHA-256 체크섬을 사용하여 패키지의 유효성을 검증합니다.

PGP 서명은 변조를 방지하기 위해 파일의 신뢰성과 무결성을 모두 검사하여 가장 강력한 보증을 제공합니다.

암호화 체크섬은 네트워크 전송 오류를 방지하기 위해 파일 무결성만 검증합니다.

MongoDB는 각 릴리스 브랜치에 다른 PGP 키를 사용합니다. 각 릴리스 브랜치에 대한 공개 키 파일은 키 서버에서 텍스트 .asc 및 바이너리 .pub 형식으로 다운로드할 수 있습니다.

1

사용자 환경에 따라 MongoDB 다운로드 센터에서 바이너리를 다운로드합니다.

예를 들어 셸을 통해 macOS에 6.0.17 릴리스를 다운로드하려면 다음 명령을 실행합니다.

curl -LO https://fastdl.mongodb.org/osx/mongodb-macos-x86_64-6.0.17.tgz
2
curl -LO https://fastdl.mongodb.org/osx/mongodb-macos-x86_64-6.0.17.tgz.sig
3

MongoDB 6.0 공개 키를 다운로드하여 가져오지 않은 경우 다음 명령을 실행합니다.

curl -LO https://pgp.mongodb.com/server-6.0.17.asc
gpg --import server-6.0.17.asc

PGP는 이 응답을 반환해야 합니다.

gpg: key 4B7C549A058F8B6B: "MongoDB 6.0 Release Signing Key <packaging@mongodb.com>" imported
gpg: Total number processed: 1
gpg: imported: 1
4

다음 명령을 실행합니다.

gpg --verify mongodb-macos-x86_64-6.0.17.tgz.sig mongodb-macos-x86_64-6.0.17.tgz

GPG는 이 응답을 반환해야 합니다.

gpg: Signature made Wed Jun 5 03:17:20 2019 EDT
gpg: using RSA key 4B7C549A058F8B6B
gpg: Good signature from "MongoDB 6.0 Release Signing Key <packaging@mongodb.com>" [unknown]

패키지가 올바르게 서명되었지만 현재 로컬 trustdb의 서명 키를 신뢰하지 않는 경우 gpg가 아래 메시지도 반환합니다.

gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: E162 F504 A20C DF15 827F 718D 4B7C 549A 058F 8B6B

다음과 같은 오류 메시지가 나타나면 올바른 공개 키를 가져왔는지 확인합니다.

gpg: Can't check signature: public key not found
1

사용자 환경에 따라 MongoDB 다운로드 센터에서 바이너리를 다운로드합니다.

예를 들어 셸을 통해 macOS에 6.0.17 릴리스를 다운로드하려면 다음 명령을 입력합니다.

curl -LO https://fastdl.mongodb.org/osx/mongodb-macos-x86_64-6.0.17.tgz
2
curl -LO https://fastdl.mongodb.org/osx/mongodb-macos-x86_64-6.0.17.tgz.sha256
3

패키지 파일의 체크섬을 계산합니다.

shasum -c mongodb-macos-x86_64-6.0.17.tgz.sha256

체크섬이 다운로드한 패키지와 일치하는 경우 다음을 반환합니다.

mongodb-macos-x86_64-6.0.17.tgz: OK

이렇게 하면 SHA256 키와 비교하여 MongoDB 바이너리가 확인됩니다.

1

MongoDB .msi 설치 관리자를 다운로드합니다. 예를 들어, MongoDB Community Edition의 최신 버전을 다운로드하려면 다음을 실행합니다.

MongoDB Community 다운로드 센터

  1. Version 드롭다운 메뉴에서 6.0.17 (current release)을(를) 선택합니다.

  2. Platform 드롭다운 메뉴에서 Windows를 선택합니다.

  3. Package 드롭다운 메뉴에서 msi를 선택합니다.

  4. Download를 클릭하고 파일을 다운로드 폴더에 저장합니다.

2

MongoDB 버전에 대한 공개 서명 파일을 받습니다.

예를 들어, MongoDB Community Edition 최신 버전의 SHA256 서명은 다음과 같습니다.

  1. https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-6.0.17-signed.msi.sha256에서 콘텐츠를 복사합니다.

  2. 다운로드 폴더의 mongodb-windows-x86_64-6.0.17-signed.msi.sha256 파일에 콘텐츠를 저장합니다.

3

서명 파일을 MongoDB 바이너리 파일의 해시와 비교하려면 다음 Powershell 스크립트를 호출합니다.

$sigHash = (Get-Content $Env:HomePath\Downloads\mongodb-windows-x86_64-6.0.17-signed.msi.sha256 | Out-String).SubString(0,64).ToUpper(); `
$fileHash = (Get-FileHash $Env:HomePath\Downloads\mongodb-windows-x86_64-6.0.17-signed.msi).Hash.Trim(); `
echo $sigHash; echo $fileHash; `
$sigHash -eq $fileHash
C777DF7816BB8C9A760FDEA782113949408B6F39D72BE29A2551FA51E2FE0473
C777DF7816BB8C9A760FDEA782113949408B6F39D72BE29A2551FA51E2FE0473
True

이 명령은 세 줄을 출력합니다.

  • MongoDB에서 직접 다운로드한 SHA256 해시입니다.

  • MongoDB에서 다운로드한 MongoDB 바이너리에서 계산한 SHA256 해시입니다.

  • 해시 일치 여부에 따른 True 또는 False 결과

해시가 일치하면 MongoDB 바이너리가 확인된 것입니다.

돌아가기

샤딩된 클러스터