InfoGrab Docs

커스텀 빌드 코드 서명

요약

코드 서명은 커스텀 Mattermost 빌드의 진위성과 무결성을 보장하는 필수 프로세스입니다. 각 운영 체제의 애플리케이션 서명 가이드라인과 모범 사례를 반드시 준수하세요.

코드 서명은 커스텀 Mattermost 빌드의 진위성과 무결성을 보장하는 필수 프로세스입니다. 이 가이드에서는 Windows, Mac, Linux 운영 체제에서 자체 인증서를 사용하여 빌드에 코드 서명하는 방법을 설명합니다.

Important

각 운영 체제의 애플리케이션 서명 가이드라인과 모범 사례를 반드시 준수하세요.

사전 요구 사항#

  1. 코드 서명 인증서: 인증 기관(CA)에서 인증서를 발급받거나, 적합한 경우 자체 서명 인증서를 사용합니다.
  2. SignTool: Windows SDK의 일부로 제공됩니다.
  1. GPG 키: GPG 키가 없는 경우 새로 생성합니다.
  2. GnuPG: 설치되어 있지 않은 경우 GnuPG 를 설치합니다.
  1. Developer ID Application 인증서: Apple에서 발급받습니다. Apple Developer 계정이 필요합니다.
  2. Xcode: Xcode 가 설치되어 있는지 확인합니다.

절차#

  1. SignTool 설치: Windows SDK를 설치하여 SignTool 유틸리티에 접근합니다.
  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</code></pre>
<div class="tabs-container" data-tabs><div class="tabs-nav"><button class="tab-button active" data-tab-index="0">Mac</button>
  1. 코드 서명 인증서 발급: Apple Developer 계정에서 Developer ID Application 인증서를 생성하고 다운로드합니다.
  2. 인증서 가져오기: 인증서를 더블 클릭하여 키체인에 가져옵니다.
  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</code></pre>
<h2 id="요약">요약</h2>

<ul><li><strong>Windows</strong>: Windows SDK의 <code>SignTool</code> 과 가져온 코드 서명 인증서를 사용합니다.
  • Mac: Xcode의 codesignspctl 도구와 Apple Developer ID 인증서를 사용합니다.
  • Linux: GPG 키 생성/서명에는 GnuPG, .deb 패키지에는 dpkg-sig, .rpm 패키지에는 rpmsign 을 사용합니다.
  • 커스텀 빌드 코드 서명

    원문 보기
    요약

    코드 서명은 커스텀 Mattermost 빌드의 진위성과 무결성을 보장하는 필수 프로세스입니다. 각 운영 체제의 애플리케이션 서명 가이드라인과 모범 사례를 반드시 준수하세요.

    코드 서명은 커스텀 Mattermost 빌드의 진위성과 무결성을 보장하는 필수 프로세스입니다. 이 가이드에서는 Windows, Mac, Linux 운영 체제에서 자체 인증서를 사용하여 빌드에 코드 서명하는 방법을 설명합니다.

    Important

    각 운영 체제의 애플리케이션 서명 가이드라인과 모범 사례를 반드시 준수하세요.

    사전 요구 사항#

    1. 코드 서명 인증서: 인증 기관(CA)에서 인증서를 발급받거나, 적합한 경우 자체 서명 인증서를 사용합니다.
    2. SignTool: Windows SDK의 일부로 제공됩니다.
    1. GPG 키: GPG 키가 없는 경우 새로 생성합니다.
    2. GnuPG: 설치되어 있지 않은 경우 GnuPG 를 설치합니다.
    1. Developer ID Application 인증서: Apple에서 발급받습니다. Apple Developer 계정이 필요합니다.
    2. Xcode: Xcode 가 설치되어 있는지 확인합니다.

    절차#

    1. SignTool 설치: Windows SDK를 설치하여 SignTool 유틸리티에 접근합니다.
    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</code></pre>
    <div class="tabs-container" data-tabs><div class="tabs-nav"><button class="tab-button active" data-tab-index="0">Mac</button>
    1. 코드 서명 인증서 발급: Apple Developer 계정에서 Developer ID Application 인증서를 생성하고 다운로드합니다.
    2. 인증서 가져오기: 인증서를 더블 클릭하여 키체인에 가져옵니다.
    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</code></pre>
    <h2 id="요약">요약</h2>
    
    <ul><li><strong>Windows</strong>: Windows SDK의 <code>SignTool</code> 과 가져온 코드 서명 인증서를 사용합니다.
  • Mac: Xcode의 codesignspctl 도구와 Apple Developer ID 인증서를 사용합니다.
  • Linux: GPG 키 생성/서명에는 GnuPG, .deb 패키지에는 dpkg-sig, .rpm 패키지에는 rpmsign 을 사용합니다.