Wie "entropy" neu eingeben?

TobiasM

Active Member
Hallo allerseits,

auf meinem neu aufgesetzten Server(chen) habe ich den dummen Fehler gemacht, nach der Installation den Zufallsgenerator nicht ganz richtig zu initialisieren.

Nach dem ersten Neustart kam die Aufforderung eine Seite voll was-auch-immer einzugeben und mit <RETURN> zu bestätigen, damit der Zufallsgenerator einen äh.. guten Start hat. Ich war bei ungefähr einem drittel der Seite, dann habe ich ausversehen die Returntaste erwischt.

Im Handbuch finde ich nichts, in /etc/rc.d gibt's zwar ein Skript mit dem vielversprechenden Namen "initrandom", aber da steht nichts von wegen Tastatureingaben drin, und auch google will nicht so richtig.

Kann mir vielleicht hier jemand sagen, wie ich das am sinnvollsten (also *ohne* Neuinstallation) wieder geradebiege?

Danke und ciao, Tobias


(EDIT: Und wenn ich tatsächlich nur _direkt_ in die entropy-Datei irgendwelchen Blödsinn hineinschreiben muss, beiße ich in die Tischkante.)
 
Die Antwort ist in '/etc/rc.d/sshd ' zu finden:
Code:
user_reseed()
{
        (
        seeded=`sysctl -n kern.random.sys.seeded 2>/dev/null`
        if [ "${seeded}" != "" ] ; then
                warn "Setting entropy source to blocking mode."
                echo "===================================================="
                echo "Type a full screenful of random junk to unblock"
                echo "it and remember to finish with <enter>. This will"
                echo "timeout in ${timeout} seconds, but waiting for"
                echo "the timeout without typing junk may make the"
                echo "entropy source deliver predictable output."
                echo ""
                echo "Just hit <enter> for fast+insecure startup."
                echo "===================================================="
                sysctl kern.random.sys.seeded=0 2>/dev/null
                read -t ${timeout} junk
                echo "${junk}" `sysctl -a` `date` > /dev/random
        fi
        )
}

...

Es reicht das Verzeichnis '/etc/ssh' mit den SSH-Schlüsseln zu löschen und anschliessend mit
Code:
$ sudo sh /etc/rc.d/sshd restart
das Script neu aufzurufen.
 
Bin mir da nicht sicher, mein Tip wäre gewesen, das entropy-file zu löschen (standardmässig "/entropy", oder was auch immer in rc.conf unter "entropy-file=''" eingestellt ist).
 
Danke, die Methode von Lars hat wunderbar funktioniert. Da hätte ich auch mal selbst drauf kommen können, in dieser Datei nachzuschauen. Oder mit grep nach "seed" suchen :-/ .. naja, hinterher ist man immer schlauer.

Ciao, Tobias
 
Ist aber recht unnoetig, was du da vor hast. Die Eingabe, welche ein Mensch ueber die Tastatur macht haben eine eher miserable Entropie.

Der PRNG wird normalerweise auch ueber die Interrupts gefuettert, also einfach mal 'find /' oder 2-3 Minuten Netzverkehr und du solltest brauchbare Entropie haben.
 
Dann sollte ich wohl die Schlüssel einfach mal neu generieren lassen, denn mittlerweile hat der genug Arbeit gehabt, um brauchbare Entropie zu bekommen. Danke für den Hinweis, ich hatte das Problem wohl etwas zu schnell abgehakt.
 
Zurück
Oben