[Discuss] [v642] Arbeitsgruppe v642 Treffen
Adi Kriegisch
(spam-protected)
Do Feb 11 12:25:59 CET 2016
Hallo!
>> Eventuell automatisches requesten eines letsencrypt certs, nach dem
>> die initiale Konfig (IP, Nodename) gemacht wurde und eine
>> Funkfeuerverbindung besteht?
>>
> Der python-Client von letsencrypt wird wohl etwas zu groß für die
> Endgeräte sein (~12MB uncompressed).
:-) Stimmt. Zum Glück brauchen wir den auch nicht und könnten den Vorgang
sogar automatisieren. Der Ablauf selbst ist relativ einfach und es
existieren inzwischen auch etliche Shellscripts, die ACME sprechen...
Es gibt aber was die Sicherheit betrifft einige Probleme die leider nicht
alle ganz so einfach lösbar sind:
* An erster Stelle steht die fehlende Entropie. Hier könnten wir -- sofern
es sich vom Platz her ausgeht -- auf haveged setzen.
Zusätzlich könnten wir ein fake-hw-clock package bauen, das periodisch
(1x am Tag zb) die aktuelle Uhrzeit in ein (persistentes) File schreibt.
Beim Systemstart wird dieses File dann verwendet um die Systemzeit zu
setzen.
* Die Erzeugung der diversen Cryptoschlüssel passiert zum denkbar
ungünstigsten Zeitpunkt -- beim ersten Start und der geringsten Entropie.
Eine Möglichkeit das Problem abzufedern wäre bei der "Erstkonfiguration":
Systemzeit per Browser setzen (ohne Userinteraktion) und erst wenn eine
Systemzeit auf dem Router gesetzt ist (die nicht 1.1.1970 ist), die
Cryptokeys erzeugen lassen.
Das setzt aber voraus, daß wir den Ablauf soweit in der Hand haben, daß
die Leute einen Router ganz sicher zuerst einmal "offline" in Betrieb
nehmen und ihr Passwort setzen -- und genau da haben wir ein
Henne-Ei-Problem: ohne Crypto Passwort setzen?! :-)
* Ein anderes großes Problem sind die Crypto-Algorithmen in OpenWRT (ab
15.05; davor ist sowieso obsolet); wir sind auf diesen Geräten darauf
angewiesen, daß wir elliptische Kurven für den Schlüsselaustausch
verwenden. Die Zertifikate sollten natürlich auch eine passende Länge
haben (auf jeden Fall >= 2048bit)
Dropbear scheint bereits Unterstützung für ED25519 zu haben -- im Detail
gehört das natürlich noch getestet. Außerdem sollten wir dafür Sorge
tragen, daß wir 'alte' Key Exchanges/Ciphers/... (Diffie Hellman Group1
und 14, SHA-1, usw.) möglichst deaktivieren. Für die User bedeutet das
aber dann, daß sie (ziemlich sicher) ihr Putty aktualisieren müssen.
Beim Webserver siehts leider schlimmer aus: da gibts nämlich keine
Möglichkeit über die Einstellungen Protokolle, Ciphers, Key Exchanges
u.ä. zu konfigurieren -- das geht nur zur Compile Time. :-/
Naja... Da steht uns wohl noch ein wenig Arbeit ins Haus... ;-)
Glg Adi
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : signature.asc
Dateityp : application/pgp-signature
Dateigröße : 827 bytes
Beschreibung: Digital signature
URL : <http://lists.funkfeuer.at/pipermail/discuss/attachments/20160211/d4e8e6cb/attachment.sig>
Mehr Informationen über die Mailingliste Discuss