사용자 정의 빌드 코드 서명#

plans-img 모든 플랜 에서 사용 가능

deployment-img 자체 호스팅 배포

코드 서명은 사용자 정의 Mattermost 빌드의 진위성과 무결성을 보장하기 위한 필수적인 프로세스입니다. 이 가이드는 Windows, Mac, Linux용 자체 인증서를 사용하여 빌드에 코드 서명하는 방법에 대한 단계를 제공합니다.

중요

애플리케이션 서명을 위해 각 운영 체제의 지침과 모범 사례를 따르세요.

사전 요구사항#

  1. 코드 서명 인증서: 인증 기관(CA)에서 인증서를 획득하거나 적절한 경우 자체 서명 인증서를 사용하세요.

  2. SignTool: Windows SDK의 일부로 제공됩니다.

  1. GPG 키: 없는 경우 GPG 키를 생성하세요.

  2. GnuPG: 설치되어 있지 않은 경우 GnuPG 를 설치하세요.

  1. Developer ID Application 인증서: Apple에서 획득하세요. Apple Developer 계정이 필요합니다.

  2. Xcode: Xcode 가 설치되어 있는지 확인하세요.

프로세스#

  1. SignTool 설치

    SignTool 유틸리티에 접근하려면 Windows SDK를 설치하세요.

  2. 코드 서명 인증서 획득

    CA를 통해 인증서(.pfx 파일)를 구매하거나 생성하세요.

  3. 인증서 가져오기

    .pfx 파일을 열고 Windows 인증서 저장소로 가져오세요.

  4. 실행 파일 서명

    • 관리자 권한으로 명령 프롬프트를 열세요.

    • SignTool 을 사용하여 실행 파일에 서명하세요:

    signtool sign /v /s "My" /sha1 <cert hash> /fd SHA256 /tr http://timestamp.digicert.com /td SHA256 <path-to-your-executable>
    
  1. GPG 키 생성 또는 가져오기

    GPG 키가 없는 경우 생성하세요:

    gpg --full-generate-key
    

    기존 GPG 키가 있는 경우 가져오세요:

    gpg --import /path/to/your-key.asc
    
  2. 패키지 서명

    Debian 패키지에 서명하려면 dpkg-sig 를 사용하세요:

    dpkg-sig --sign builder your-package.deb
    

    RPM 패키지에 서명하려면 rpmsign 을 사용하세요:

    rpmsign --addsign your-package.rpm
    
  3. 서명 확인

    .deb 패키지의 서명을 확인하세요:

    dpkg-sig --verify your-package.deb
    

    .rpm 패키지의 서명을 확인하세요:

    rpm --checksig your-package.rpm
    
  1. 코드 서명 인증서 획득

    Apple Developer 계정에서 Developer ID Application 인증서를 생성하고 다운로드하세요.

  2. 인증서 가져오기

    인증서를 더블클릭하여 Keychain으로 가져오세요.

  3. 애플리케이션 서명

    애플리케이션에 서명하려면 Xcode의 codesign 도구를 사용하세요:

    codesign --deep --force --verify --verbose --sign "Developer ID Application: Your Name (TeamID)" /path/to/your.app
    
  4. [선택사항] 서명 확인

    모든 것이 올바르게 서명되었는지 확인하세요:

    spctl --assess --verbose=4 /path/to/your.app
    codesign -dv --verbose=4 /path/to/your.app
    

요약#

  • Windows: 가져온 코드 서명 인증서와 함께 Windows SDK의 SignTool 을 사용하세요.

  • Mac: Apple Developer ID 인증서와 함께 Xcode의 codesignspctl 도구를 사용하세요.

  • Linux: GPG 키로 생성/서명하려면 GnuPG 를, .deb 패키지에는 dpkg-sig 를, .rpm 패키지에는 rpmsign 을 사용하세요.