OpenVPN-CA: Unterschied zwischen den Versionen

Aus Freifunk Köln, Bonn und Umgebung
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 14: Zeile 14:
* ''Evtl. ist es sinnvoller Nodes über die MAC des bat0-Interfaces zu identifizieren. Ich weiß aber aktuell nicht, wie stabil diese MAC ist - das Zertifikat sollte vom Node so lange benutzt werden, wie auch die Mac benutzt wird. Wird die MAC bei jedem Boot neu generiert, so muss der Node nach jedem Boot ein neues Zertifikat anfordern - kein Problem, aber wir müssen daran denken. Kann sich die MAC jedoch auch zur Laufzeit ändern (weil beispielsweise eine identische MAC von einem anderen Node verwendet wird, müssen wir dies bedenken). Möglich wäre auch, die bat0-MAC in der CA zu hinterlegen, aber weiterhin die MAC des 1. Wlan-Interfaces zu verwenden.'' --[[Benutzer:Yanosz|Yanosz]] 11:16, 19. Jun. 2011 (UTC)
* ''Evtl. ist es sinnvoller Nodes über die MAC des bat0-Interfaces zu identifizieren. Ich weiß aber aktuell nicht, wie stabil diese MAC ist - das Zertifikat sollte vom Node so lange benutzt werden, wie auch die Mac benutzt wird. Wird die MAC bei jedem Boot neu generiert, so muss der Node nach jedem Boot ein neues Zertifikat anfordern - kein Problem, aber wir müssen daran denken. Kann sich die MAC jedoch auch zur Laufzeit ändern (weil beispielsweise eine identische MAC von einem anderen Node verwendet wird, müssen wir dies bedenken). Möglich wäre auch, die bat0-MAC in der CA zu hinterlegen, aber weiterhin die MAC des 1. Wlan-Interfaces zu verwenden.'' --[[Benutzer:Yanosz|Yanosz]] 11:16, 19. Jun. 2011 (UTC)
* ''MAC-Adressen taugen nicht zur Authentifizierung oder zum Filtern - das wollen wir aber auch nicht.''
* ''MAC-Adressen taugen nicht zur Authentifizierung oder zum Filtern - das wollen wir aber auch nicht.''
== Eingesetzte Software ==
* '''easy_rsa''' wurde zum Erstellen der CA verwendet. Zertifikate können nach wie vor darüber ausgetellt werden.
* Die Webschnittstelle ist in '''ff-serv''' (https://github.com/yanosz/ff-serv) umgesetzt. ff-serv nutzt die von easy_rsa erstellten CA-Informationen (cert-file, key-file, serial-file) um Zertifikate zu erstellen. Hierbei wird die OpenSSL-API direkt verwendet, erzeugte Zertifikate werden in einer MySQL-Datenbank abgelegt und werden ''nicht'' im CA-Verzeichnis als Dateien persistiert.

Version vom 19. Juni 2011, 13:29 Uhr

Achtung: Work-in-progress --Yanosz 20:33, 17. Jun. 2011 (UTC)

Motivation

Zum Betrieb des Freifunk-Netzes werden zentrale OpenVPN-Instanzen benötigt, die den Netzwerkverkehr abwickeln (vgl. Netzwerk-Konfiguration). Obwohl der Verkehr nicht verschlüsselt wird, werden auf den Accesspoints Zertifikate benötigt, damit sich die APs am Server anmelden können. Da OpenVPN typischer Weise mit gewöhnlichen SSL-Zertifikaten arbeitet, wird auf Paul eine SSL-CA betrieben, die die Zertifikate für die Accesspoints ausstellt.

Funktionsweise

  1. Jeder AP kann Zeritifikat, Key und CA-Zertifikat über http(s) herunterladen -- Die CA hat eine Webservice-Schnittstelle
  2. Die CA speichert alle erstellten Zertifikate in einer relationalen Datenbank (derzeit MySQL)
  3. Jeder AP wird mit der MAC-Adresse seines 1. Wireless-Lan Interfaces identifiziert. Sie wird als Common-Name (CN) im Zertifikat verwendet. Dies ermöglicht eine (hoffentlich) eindeutige Identifizierung aller Nodes
  4. Über die MAC-Adresse können bei Störungen betroffene Nodes (hoffentlich) identifiziert werden.

Hinweise:

  • Evtl. ist es sinnvoller Nodes über die MAC des bat0-Interfaces zu identifizieren. Ich weiß aber aktuell nicht, wie stabil diese MAC ist - das Zertifikat sollte vom Node so lange benutzt werden, wie auch die Mac benutzt wird. Wird die MAC bei jedem Boot neu generiert, so muss der Node nach jedem Boot ein neues Zertifikat anfordern - kein Problem, aber wir müssen daran denken. Kann sich die MAC jedoch auch zur Laufzeit ändern (weil beispielsweise eine identische MAC von einem anderen Node verwendet wird, müssen wir dies bedenken). Möglich wäre auch, die bat0-MAC in der CA zu hinterlegen, aber weiterhin die MAC des 1. Wlan-Interfaces zu verwenden. --Yanosz 11:16, 19. Jun. 2011 (UTC)
  • MAC-Adressen taugen nicht zur Authentifizierung oder zum Filtern - das wollen wir aber auch nicht.

Eingesetzte Software

  • easy_rsa wurde zum Erstellen der CA verwendet. Zertifikate können nach wie vor darüber ausgetellt werden.
  • Die Webschnittstelle ist in ff-serv (https://github.com/yanosz/ff-serv) umgesetzt. ff-serv nutzt die von easy_rsa erstellten CA-Informationen (cert-file, key-file, serial-file) um Zertifikate zu erstellen. Hierbei wird die OpenSSL-API direkt verwendet, erzeugte Zertifikate werden in einer MySQL-Datenbank abgelegt und werden nicht im CA-Verzeichnis als Dateien persistiert.