커스텀 빌드 코드 서명
Mattermost v12.0요약
코드 서명은 커스텀 Mattermost 빌드의 진위성과 무결성을 보장하는 필수 프로세스입니다. 각 운영 체제의 애플리케이션 서명 가이드라인과 모범 사례를 반드시 준수하세요. SignTool 설치: Windows SDK를 설치하여 SignTool 유틸리티에 접근합니다.
사용 가능 플랜: Entry, Professional, Enterprise, Enterprise Advanced
코드 서명은 커스텀 Mattermost 빌드의 진위성과 무결성을 보장하는 필수 프로세스입니다. 이 가이드에서는 Windows, Mac, Linux 운영 체제에서 자체 인증서를 사용하여 빌드에 코드 서명하는 방법을 설명합니다.
각 운영 체제의 애플리케이션 서명 가이드라인과 모범 사례를 반드시 준수하세요.
사전 요구 사항#
- 코드 서명 인증서: 인증 기관(CA)에서 인증서를 발급받거나, 적합한 경우 자체 서명 인증서를 사용합니다.
- SignTool: Windows SDK의 일부로 제공됩니다.
- GPG 키: GPG 키가 없는 경우 새로 생성합니다.
- GnuPG: 설치되어 있지 않은 경우 GnuPG를 설치합니다.
- Developer ID Application 인증서: Apple에서 발급받습니다. Apple Developer 계정이 필요합니다.
- Xcode: Xcode가 설치되어 있는지 확인합니다.
절차#
-
SignTool 설치: Windows SDK를 설치하여
SignTool유틸리티에 접근합니다. -
코드 서명 인증서 발급: CA를 통해 인증서(
.pfx파일)를 구매하거나 생성합니다. -
인증서 가져오기:
.pfx파일을 열어 Windows 인증서 저장소에 가져옵니다. -
실행 파일 서명
- 관리자 권한으로 명령 프롬프트를 엽니다.
SignTool을 사용하여 실행 파일에 서명합니다:
signtool sign /v /s "My" /sha1 <cert hash> /fd SHA256 /tr http://timestamp.digicert.com /td SHA256 <path-to-your-executable>
-
GPG 키 생성 또는 가져오기: GPG 키가 없는 경우 새로 생성합니다:
gpg --full-generate-key또는 기존 GPG 키가 있는 경우 가져옵니다:
gpg --import /path/to/your-key.asc -
패키지 서명: Debian 패키지 서명에는
dpkg-sig를 사용합니다:dpkg-sig --sign builder your-package.debRPM 패키지 서명에는
rpmsign을 사용합니다:rpmsign --addsign your-package.rpm -
서명 확인:
.deb패키지의 서명을 확인합니다:dpkg-sig --verify your-package.deb.rpm패키지의 서명을 확인합니다:rpm --checksig your-package.rpm
-
코드 서명 인증서 발급: Apple Developer 계정에서
Developer ID Application인증서를 생성하고 다운로드합니다. -
인증서 가져오기: 인증서를 더블 클릭하여 키체인에 가져옵니다.
-
애플리케이션 서명: Xcode의
codesign도구를 사용하여 애플리케이션에 서명합니다:codesign --deep --force --verify --verbose --sign "Developer ID Application: Your Name (TeamID)" /path/to/your.app -
[선택 사항] 서명 확인: 모든 것이 올바르게 서명되었는지 서명을 확인합니다:
spctl --assess --verbose=4 /path/to/your.app codesign -dv --verbose=4 /path/to/your.app
요약#
- Windows: Windows SDK의
SignTool과 가져온 코드 서명 인증서를 사용합니다. - Mac: Xcode의
codesign및spctl도구와 Apple Developer ID 인증서를 사용합니다. - Linux: GPG 키 생성/서명에는
GnuPG,.deb패키지에는dpkg-sig,.rpm패키지에는rpmsign을 사용합니다.