SSH를 통해 시작할 때 데몬이 실행되지 않음

SSH를 통해 시작할 때 데몬이 실행되지 않음

SSH를 통해 원격으로 rngd 데몬을 시작하려고 합니다. 불행히도 컴퓨터에 로그인할 때까지는 작동하지 않는 것 같습니다. 내가 사용하는 명령은 다음과 같습니다

ssh -n -o StrictHostKeyChecking=no -i ... user@host "sudo rngd \
       -r /dev/urandom -o /dev/random -t 10"`

전화를 걸면 cat /proc/sys/kernel/random/entropy_avail매우 낮은 값(약 150)이 나오므로 rngd가 실행되고 있지 않은 것 같습니다. 그런데 박스에 로그인하면 몇 초 정도 기다려서 풀이 꽉 찼는지(3000초) 확인합니다.

답변1

귀하는 우리에게 많은 정보(예: 어떤 OS에서?)를 제공하지 않았지만, 제 생각에는 그렇게 하면 안 된다고 생각합니다.

Linux를 사용하고 있다고 가정 /dev/urandom하고/dev/random 연결됨. /dev/random무작위 비트가 있을 때만 제공하고 /dev/urandom동일한 무작위 비트 풀을 사용하되 /dev/random해당 비트를 무한정 확장하세요.

귀하의 명령은 확장된 의사 난수 비트를 /dev/random다시 /dev/random.

답변2

내 실수는 '대신에 "를 사용한 것입니다. 내가 아는 한, ""를 사용하면 로컬 시스템에서 ssh 명령을 실행할 때 쉘이 해당 문자열을 해석하게 됩니다. 원격 시스템에 무엇이 전달되는지 잘 모르겠습니다. ''일 수 있습니다. 명령의 결과로 인해 쉘은 변경되지 않은 문자열을 전달하게 됩니다.

ssh -n -o StrictHostKeyChecking=no -i ... user@host 'sudo rngd \
       -r /dev/urandom -o /dev/random -t 10'

일하다. 그러나 나는 다른 길을 가기로 결정했고 우리는 haveged:

ssh -n -o StrictHostKeyChecking=no -i ... user@host 'sudo apt-get \
        install haveged'

그것이 완료되어야 할 전부입니다. 를 설치하고 haveged시작한 다음 부팅 시 시작되도록 항목을 추가합니다.

관련 정보