ccf1cd57ca
- What I did Added support for secure upgrade. - How I did it During sonic_installer install, added secure upgrade image verification. HLD can be found in the following PR: sonic-net/SONiC#1024 - Why I did it Feature is used to allow image was not modified since built from vendor. During installation, image can be verified with a signature attached to it. - How I did it Feature includes image signing during build (in sonic buildimage repo) and verification during image install (in sonic-utilities). - How to verify it In order for image verification - image must be signed - need to provide signing key and certificate (paths in SECURE_UPGRADE_DEV_SIGNING_KEY and SECURE_UPGRADE_DEV_SIGNING_CERT in rules/config) during build , and during image install, need to enable secure boot flag in bios, and signing_certificate should be available in bios. - Feature dependencies In order for this feature to work smoothly, need to have secure boot feature implemented as well. The Secure boot feature will be merged in the near future.
12 lines
292 B
Bash
Executable File
12 lines
292 B
Bash
Executable File
cert_file=$1
|
|
key_file=$2
|
|
image_to_sign=$3
|
|
cms_sig_out=$4
|
|
openssl cms -sign -nosmimecap -signer ${cert_file} -inkey ${key_file} -binary -in $image_to_sign -outform pem -out ${cms_sig_out} || {
|
|
echo "$?: CMS sign error"
|
|
sudo rm -rf ${cms_sig_out}
|
|
exit 1
|
|
}
|
|
echo "CMS sign OK"
|
|
exit 0
|