"서명 된"deb 패키지를 어떻게 작성합니까


답변:


5

Ubuntu / Debian 시스템의 패키지 서명은 다소 지저분합니다. 이론적으로 deb 패키지에 서명하면 패키지를받은 사람이 패키지에 서명 한 후 패키지가 수정되지 않았 음을 확인할 수 있습니다. 실제로 서명 확인은 설정하기가 매우 어렵고 기본적으로 비활성화되어 있습니다. 사용자가 로컬에서 여러 설정을 수행하지 않으면 패키지가 설치 될 때 서명을 확인하지 않습니다.

패키지에 서명하기 위해 debsigs 또는 dpkg-sig를 사용할 수 있습니다. 서명은 서로 호환되지 않으므로 사용자가 서명을 확인하기 위해 수신 측에서 적절한 도구를 사용하고 있는지 확인해야합니다.

dpkg-sig는 사용자와 사용자 모두에게 사용하기 쉽지만 debsigs는 Ubuntu 및 Debian에서 기본적으로 지원되지 않는 도구입니다 (기본적으로 비활성화되어 있음).

소스 패키지 (.dsc 파일), 바이너리 패키지 (.deb) 및 APT 패키지 리포지토리 자체 서명 및 확인에 대한 모든 기술적 세부 정보가 포함 된 블로그 게시물을 작성했습니다 : http://blog.packagecloud.io/eng/2014/ 10 / 28 / howto-gpg-sign-verify-deb-packages-apt-repositories /


바이너리 .deb 패키지는 .changes 파일에도 포함될 수 있으며 데비안 / 우분투 공식 패키징 체인에 속할 수 있습니다. 이 답변과 링크 된 블로그 게시물에는 생략되어 있습니다.
arand

1

데비안 / 우분투에서 패키지 서명은 일반적으로 .changes 파일을 통해 수행됩니다. 패키지를 빌드 할 때 .changes 파일로 끝나는 경향이 있으며 빌드 결과 (소스 및 / 또는 이진 패키지) 및 해당 체크섬을 나열합니다. 패키지에 서명 할 때 일반적으로 서명하는 파일입니다 (따라서 체크섬을 통한 패키지 무결성).

.changes 파일에 서명하는 가장 간단한 방법은 debsign

debsign hello_1.0_amd64.changes

gnupg 키 체인에 기본 키가 있고 and 및 스위치 를 실행 dpkg-buildpackage하거나 사용 debuild하지 않고 자동으로 발생합니다 .-us-uc

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.