공증인 시작하기
Notary는 누구나 임의의 데이터 수집을 신뢰할 수 있는 CNCF 프로젝트입니다. 한 쌍의 개인 키와 공개 키를 사용하여 공증인은 컨테이너 이미지, 소프트웨어 BOM 또는 스캔 결과와 같은 OCI(Open Container Initiative) 호환 레지스트리에 저장된 디지털 아티팩트에 서명하고 확인할 수 있습니다. 일단 서명된 아티팩트는 아티팩트의 무결성에 대한 신뢰를 잃지 않고 여러 OCI 레지스트리에서 승격될 수 있습니다.
Notary를 사용하면 손상된 아티팩트가 환경에 도입될 가능성이 줄어듭니다.
전제 조건
로컬 컨테이너 레지스트리 설정
시작하기 전에 이미지를 내보내고 가져올 컨테이너 레지스트리가 필요합니다.
Distribution은 OCI 배포 사양을 사용하여 컨테이너 이미지 저장을 지원하는 오픈 소스 레지스트리입니다. 공증인 증명에 완벽한 간단하고 안전하며 확장 가능한 개인 레지스트리를 제공합니다.
다음 명령을 실행하여 배포의 로컬 인스턴스를 시작합니다.
docker run -d -p 5000:5000 ghcr.io/oras-project/registry:v0.0.3-alpha
컨테이너 이미지 빌드 및 푸시
배포 레지스트리가 실행되면 다음 단계는 이미지를 빌드하고 여기에 푸시하는 것입니다.
다음 명령을 실행하여 이미지를 빌드하고 레지스트리에 푸시합니다.
docker build -t localhost:5000/net-monitor:v1 https://github.com/wabbit-networks/net-monitor.git#main
NOTE: You can use any Docker image, but if you don't have one in mind feel free to use the
wabbit-networks/net-monitor
image.
표기법 설치
Notary는 CNCF 프로젝트 이름이며 디지털 아티팩트 서명 프로세스를 언급할 때 종종 참조되지만 Notation은 어려운 작업을 수행하는 명령줄 도구입니다. Notation을 설치하려면 다음 명령을 실행하십시오.
릴리스 파일을 다운로드합니다.
curl -Lo notation.tar.gz https://github.com/notaryproject/notation/releases/download/v0.10.0-alpha.3/notation_0.10.0-alpha.3_linux_amd64.tar.gz
바이너리 추출
[ -d ~/bin ] || mkdir ~/bin
tar xvzf notation.tar.gz -C ~/bin notation
PATH 변수에
~/bin
추가export PATH="$HOME/bin:$PATH"
RC release 이후에 일반 패키지 관리자에서 표기법을 사용할 수 있습니다.
인증서 생성
인증서가 없으면 Notation은 새 서명을 만들거나 기존 서명을 확인할 방법이 없습니다. Notation은 기존 인증서 추가를 지원하지만 새로운 로컬 인증서를 생성하는 도우미 명령도 있습니다.
다음 명령을 실행하여 새 로컬 인증서를 생성합니다.
notation cert generate-test --default "wabbit-networks.io"
notation cert genereate-test
명령을 사용하면 서명에 사용할 인증서의 키가 Notation에 자동으로 추가되지만 인증서의 공개 키는 추가되지 않습니다.컨테이너 이미지 서명
컨테이너 이미지와 서명할 인증서가 있으므로 이제 남은 것은 레지스트리에 저장된 컨테이너 이미지에 서명하는 것입니다.
다음 명령을 실행하여 이미지를 노래합니다.
notation sign --plain-http localhost:5000/net-monitor:v1
이미지의 모든 서명을 나열하려면
notation list
명령을 사용하십시오.notation list --plain-http localhost:5000/net-monitor:v1
NOTE:
--plain-http
is used to access the registry with plain HTTP, by passing the need to provide a username and password or other authentication.
서명 확인
notation verify
명령은 이름에서 알 수 있듯이 인증서의 공개 키를 사용하여 OCI 아티팩트를 확인하여 아티팩트가 수정되지 않았는지 확인합니다.확인 명령을 실행하기 전에 인증서의 공개 키를 Notation 구성에 추가해야 합니다.
공개 키를 추가하려면 다음 명령을 실행하십시오.
notation cert add --name "wabbit-networks.io" ~/.config/notation/localkeys/wabbit-networks.io.crt
기본적으로
notation cert genereate-test
명령은 인증서를 ~/.config/notation/localkeys
아래에 저장합니다.그런 다음 다음 명령을 실행하여 컨테이너 이미지를 확인합니다.
notation verify --plain-http localhost:5000/net-monitor:v1
다음 단계
공증인에 대해 자세히 알아보려면 GitHub에서 Notary Project을 확인하세요.
Reference
이 문제에 관하여(공증인 시작하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/azure/getting-started-with-notary-5eea텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)