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
signature.asc
Description: Digital signature
-- Discuss mailing list [email protected] https://lists.funkfeuer.at/mailman/listinfo/discuss
