8
Bearbeitungen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 8: | Zeile 8: | ||
Ein VPN besteht aus: | Ein VPN besteht aus: | ||
* Einem ''Server'', der den Zugang zum virtuellen Netz kontrolliert und das Routing zwischen den Clients und Nicht-VPN-Netzen regelt, | * Einem '''Server''', der den Zugang zum virtuellen Netz kontrolliert und das Routing zwischen den Clients und Nicht-VPN-Netzen regelt, | ||
* Mehreren ''Clients'', die durch einen VPN-Tunnel mit dem Server kommunizieren. Mit Umweg über den Server ist so auch eine Client-zu-Client-Kommunikation möglich, sofern die Routing-Regeln des Servers dies zulassen. | * Mehreren '''Clients''', die durch einen VPN-Tunnel mit dem Server kommunizieren. Mit Umweg über den Server ist so auch eine Client-zu-Client-Kommunikation möglich, sofern die Routing-Regeln des Servers dies zulassen. | ||
Im üblichen Aufbau von OpenVPN-Netzen melden sich die Clients über ein SSL-Zertifikat am Server an, wobei der CN (''Canonical Name'') des Zertifikates verwendet wird, um die korrekte Netzwerk-Konfiguration des Client zu bestimmen. Dies setzt voraus, daß jeder Client ein individuelles Zertifikat erhält. ''Wenn die Clients nur ins Internet wollen, wäre ein Cert für alle und ein DHCP-Pool besser. Todo: Rausfinden, wie das geht.'' | |||
== Einrichtung == | == Einrichtung == | ||
Für ein einfaches Client / Server-Setup wird benötigt: | Für ein einfaches Client / Server-Setup wird benötigt: | ||
* SSL-Zertifikate für alle Beteiligten. Um die kostengünstig (umsonst) und einfach zu erhalten, sei eine Anmeldung bei [http://cacert.org CaCert] empfohlen. | * SSL-Zertifikate für alle Beteiligten. Um die kostengünstig (umsonst) und einfach zu erhalten, sei eine Anmeldung bei [http://cacert.org CaCert] empfohlen. | ||
* Ein Netzwerkplan für das VPN, um folgende Fragen zu klären: | * Ein Netzwerkplan für das VPN, um folgende Fragen zu klären (''Melle, bitte ergänzen''): | ||
** Welche LAN-Adressen (nach RFC 1918) sollen verwendet werden? ''TBD | ** Welche LAN-Adressen (nach RFC 1918) sollen verwendet werden? ''TBD: Ausnahmeregeln für Windoze verstehen und erklären.'' | ||
** Wer darf mit wem kommunizieren? Welches Routing und welche Firewall-Regeln werden dazu auf dem Server benötigt? | ** Wer darf mit wem kommunizieren? Welches Routing und welche Firewall-Regeln werden dazu auf dem Server benötigt? | ||
** Welche Namen haben die VPN-Clients? | |||
=== SSL-Certs === | === SSL-Certs === | ||
Um ein Cert zu erstellen, wird ein Key benötigt. Mit OpenSSL geht das so: | Um ein Cert zu erstellen, wird ein Key benötigt. Mit OpenSSL geht das so: | ||
openssl genrsa -out vpn.key 2048 | openssl genrsa -out vpn.key 2048 | ||
Anschließend wird für jeden Client und den Server ein CSR benötigt: | Anschließend wird für jeden Client und den Server ein CSR (''Certificate Signing Request'') benötigt: | ||
openssl req -new -key vpn.key -out client.csr | openssl req -new -key vpn.key -out client.csr | ||
Es folgt ein Frage-und-Antwort-Spiel. Dabei ist die einzig wichtige Frage: <code>Common Name (eg, YOUR name)</code>. Dort den jeweiligen Rechnernamen eintragen, z.B. <code>client001.vpn.freifunk-potsdam.de</code>. | |||
Die CSRs klebt man der Reihe nach in das Eingabefeld bei [http://www.cacert.org/ CaCert] (unter <tt>Server Certificates</tt> → <tt>New</tt>). Postwendend erhält man ein halbwegs glaubwürdiges Zertifikat. Außerdem braucht man noch das [http://www.cacert.org/certs/root.crt Root-Cert] von CACert. | |||
=== Server-Config === | === Server-Config === |
Bearbeitungen