로그인하면 crng init가 완료 될 때까지 중단됩니다 약 2 분 동안 정지하기 시작했습니다

Debian Unstable을 실행하는 랩톱에서 LightDM으로 로그인하면 최근 journalctl에 메시지가 표시 될 때까지 약 2 분 동안 정지하기 시작했습니다 kernel: random: crng init done. 키보드가 걸려있는 동안 임의의 키를 누르면 빠르게 로그인합니다 (약 10 초). 이 문제가 발생하기 전에 해결할 수있는 방법이 있습니까?

편집 : 작동 하는 linux-image-4.15.0-3-amd64대신 사용 linux-image-4.16.0-1-amd64하지만 이전 커널을 사용하고 싶지 않습니다.



답변

엔트로피 (랜덤)가 충분하지 않아 커널에서 임의의 데이터를 가져 오려고 시도하는 동안 (예 : 읽기 /dev/urandom또는 호출 getrandom()) 시스템 블록의 일부 구성 요소처럼 보입니다 .

왜 문제가 특정 커널 버전에 의존하는지 또는 시스템의 어떤 구성 요소가 실제로 차단하지만 근본 원인에 관계없이,

실제로 Bigon이 그의 답변 에서 지적했듯이 4.16에서 소개 된 커널 버그 인 것으로 보입니다.

이 버그는이 커밋의 “crng_init> 0″에서 “crng_init> 1″변경으로 인해 발생합니다 :
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/ ? id = 43838a23a05fbd13e47d750d3dfd77001536dd33

이러한 변화 실수 영향은 기존의 상태에도 불구하고, crng_init == 1 개 상태 블록 초기화 및 urandom을 유발하게 처리되는 원인 urandom_read 구체적 부팅시에 비 암호화 요구를 지원하기 위해 :
https://git.kernel.org/pub /scm/linux/kernel/git/torvalds/linux.git/tree/drivers/char/random.c#n1863

43838a23a05f ( “random : fix crng_ready () test”)를 되 돌리면 버그가 수정되지만 (4.16.5-1로 테스트) 보안 문제가 발생할 수 있습니다 (CVE-2018-1108은 43838a23a05f에서 언급). 업스트림에 적합하도록보다 현지화 된 수정 프로그램을 테스트하고 있습니다.

( https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=897572#82 )

…하지만 엔트로피를 더 빨리 사용 haveged하거나 rng-tools수집 하려고 할 수 있습니다 .


답변

커널의 변경 사항 (버그?) : https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=897572

설치를 줄이는 것이 rng-tools5도움이 될 것 같습니다. 이 패키지를 설치하면 강력한 암호화 키 생성에 영향을 미치는지 여부를 알 수 없습니다.

편집 : 분명히 util-linux 2.32를 업데이트하면 문제가 해결됩니다.


답변

다른 커널에서 발생할 수있는 커널 버그입니다.

터미널에서와 apt-get install rng-tools같이 실행 su하면 작동합니다.


답변

rng-tools인텔의 ” 보안 키 ” 와 같이 시스템에서 난수를 하드웨어로 지원하는 경우에만 도움이됩니다 . 이 방법은 아이비 브릿지 와 함께 발명되었습니다 . 1037u 프로세서 (Ivy Bridge 기반)가있는 시스템 은이 하드웨어를 지원 하지 않습니다 . 따라서 rng-tools도움을주지 마십시오.

모래 다리가있는 다른 시스템에서 i3 프로세서 rng-tools가 도움이됩니다. rngd서비스는 엔트로피 대기열을 채우기 위해, 초기 부팅 프로세스에서 시작해야합니다. 우분투 부팅 순서의 경우입니다. 다른 배포판에서 이것이 사실인지 모르겠지만 시작이 rngdsyslog에 기록되어 있음을 알 수 있습니다 .


답변

스왑 파티션을 삭제 한 후에도 발생할 수 있습니다

kernel: random: crng init done스왑 파티션을 삭제 한 후에도 중단 이 발생할 수 있습니다.

스왑 파티션이 삭제되면 구성 파일 /etc/initramfs-tools/conf.d/resume 이 완전히 비어 있거나 읽혀 져야합니다 RESUME=. UUID 번호를 삭제하십시오. RESUME=NONE유효하지 않습니다.

$ sudo vim /etc/initramfs-tools/conf.d/resume

초기 RAM 파일 시스템은 이러한 변경 사항이 적용되도록 업데이트해야합니다.

$ sudo update-initramfs -u


답변

필자의 경우 4.19.0-4-amd64Proxmox VE에서 Debian Buster (커널 ) VM을 실행 중이었습니다.

해결책은 VirtIO RNG 장치를 VM 에 추가하는 것이 었습니다 . Proxmox에서는 VM 구성 파일 을 편집하여이 작업을 수행 합니다 .

필자의 경우 /etc/pve/qemu-server/110.conf다음 줄을 편집 하고 추가했습니다.

args: -device virtio-rng-pci

사용자 공간 도구 (예 : rng-tools또는 haveged)가 필요하지 않았습니다.


답변