커널 빌드 시 임베디드 장치에 대한 커널 매개변수를 설정했지만 부트로더에서 추가 매개변수를 전달하여 이러한 매개변수를 재정의할 수 있습니다.
전달된 인수를 무시하는 커널을 구축하는 방법이 있습니까?
내가 이것을 원하는 이유는 두 가지입니다.
첫째, 업데이트 배포를 용이하게 하려면 커널 콘텐츠를 커널 "패키지"로 격리하는 것이 가장 좋습니다. 우리는 현재 initramfs를 사용하지 않지만 (커널에 내장된 경우) 들어오는 인수를 쉽게 필터링할 수 있는 지점이 될 수 있다고 생각합니다.
둘째, 보안 전략의 또 다른 계층입니다. 기존 커널에 바이너리 패치를 수행하거나 맞춤형 마더보드를 성공적으로 부팅할 수 있는 새 커널을 구축하는 것은 Secure Boot Chain을 사용하면 큰 장애물이 될 수 있습니다.
답변1
그런 구성은 말이 안 되기 때문에 존재하지 않는다고 생각합니다. 커널에 인수를 전달하지 않으려면 전달하는 명령줄 인수가 변경되지 않도록 부트로더를 잠그세요.
부트로더는 로드할 커널을 결정하므로 커널의 매개변수 변경을 방지해도 보안이 추가되지 않습니다. 일부 시스템에서 부팅되는 커널을 구축하는 것은 쉬운 작업이 아닙니다.
보안 부팅 체인이 있는 경우 커널을 교체할 수 없지만 물론 부팅 체인 보호에는 커널 매개변수 보호도 포함됩니다. 이는 커널이 아닌 부트로더의 보안 속성입니다.
initramfs에서는 커널 매개변수를 설정할 수 없습니다(물론 커널이 부팅된 후 런타임에 설정할 수 있는 매개변수는 제외). 너무 늦었어. 일부 커널 매개변수를 설정해야 한다면 부트로더에서 설정해야 합니다. 이것이 바로 그 작업입니다. 패키징 측면에서는 아무런 이점이 없습니다. 부트로더를 별도로 패키징하고 부트로더에서 일부 매개변수를 조정하고 싶지 않은 경우 명령에서 커널을 차단하지 않고 커널 바이너리에 올바른 기본값을 설정할 수 있습니다. 전화로 보험 적용을 수락하십시오.