m0n0wall: IPsec und Netz-zu-Netz-Verbindung

In Anlehnung an den Artikel IPCop: IPsec und Netz-zu-Netz-Verbindung wird nachfolgend das Vorgehen für die Konfiguration einer Netz-zu-Netz-Verbindung mit IPsec für die auf FreeBSD-basierende Firewall m0n0wall beschrieben.

Voraussetzungen

An beiden Standorten muss ein nicht überlappendes IP-Netz bestehen. Beispiel:

Standort A: 192.168.1.0/255.255.255.0
Standort B: 192.168.2.0/255.255.255.0

Netz-zu-Netz-IPsec-VPN mit pre-shared Key

Die nachfolgend beschriebenen Schritte sind an beiden Standorten durchzuführen. Lediglich die IP-Subnetze müssen gegeneinander getauscht werden.

  • An m0n0wall anmelden.
  • “VPN – IPsec” anklicken.
  • “Enable IPsec” aktivieren und auf “Save” klicken.
  • Auf das “+”-Symbol klicken.
  • Bei “Remote subnet” das IP-Netz des entfernten Standorts eingeben.
  • Bei “Remote gateway” die statische öffentliche IP-Adresse des entfernten Standorts eingeben.
  • Bei “Pre-shared Key” einen Schlüssel eingeben.
  • Auf “Save” klicken.
  • Auf “Apply changes” klicken.
  • Unter “Diagnositcs – IPsec” kann man den Verbindungsstatus sehen.

Netz-zu-Netz-IPsec-VPN mit Zertifikaten

Im Gegensatz zu IPCop bietet m0n0wall keine Möglichkeit die Zertifikate mit Bordmitteln zu erstellen, so das auf externe Werkzeuge zurückgegriffen werden muss. Für diesen Artikel wurde das Plattform-unabhängige XCA verwendet. Dieses Programm ermöglicht sowohl auf BSD, Linux, Mac und Windows den einfachen Aufbau und Verwaltung einer Zertifizierungsstelle (Certificate Authority).

Zertifizierungsstelle einrichten

  • XCA herunterladen, installieren und ausführen.
  • “Datei – Neue Datenbank” anklicken.
  • Einen Speicherort und Dateinamen für die neue Datenbank eingeben.
  • Ein Passwort für die Datenbank eingeben.
  • Auf der Registerkarte “Private Schlüssel” “Neuer Schlüssel” anklicken.
  • Einen Namen, z.B. “VPN-CA-Key”, eingeben und auf “Erstellen” klicken.
  • Auf der Registerkarte “Zertifikate” “Neues Zertifikat” anklicken.
  • Auf der Registerkarte “Inhaber” die Felder “Interner Name” und “Common Name” z.B. mit “VPN-CA” ausfüllen. Die anderen Felder sind ebenfalls auszufüllen.
  • Auf der Registerkarte “Erweiterungen” den Typ auf “Certificate Authority” konfigurieren und “Subject Key Identifier” aktivieren.
  • Auf der Registerkarte “Key usage” “Certificate Sign” auswählen und auf “OK” klicken.

Zertifikate für die Standort-Router erstellen und exportieren

  • Auf der Registerkarte “Zertifikate” “Neues Zertifikat” anklicken.
  • Im Abschnitt “Unterschreiben” “Verwende dieses Zertifikat zum Unterschreiben” das zuvor erstellte CA-Zertifikat auswählen.
  • Auf der Registerkarte “Inhaber” die Felder “Interner Name” und “Common Name” mit dem Routernamen ausfüllen. Alle anderen Felder ebenfalls ausfüllen.
  • Im Abschnitt “Privater Schlüssel” auf “Erstelle einen neuen Schlüssel” klicken. Die Vorgaben können übernommen werden.
  • Auf der Registerkarte “Erweiterungen” als Typ “End Instanz” auswählen und “Subject Key Identifier” aktivieren.
  • Im Feld “subject alternative name” muss die statische öffentliche IP-Adresse des jeweiligen Standorts im Format “IP:IP-ADRESSE” eingegeben werden. Anschliessend auf “OK” klicken.
  • Auf der Registerkarte “Zertifikate” das jeweilige Router-Zertifikat auswählen und auf “Export” klicken.
  • Einen Speicherort und Namen angeben und als Format “PEM Cert + key” auswählen.

Dieser Vorgang muss für alle Standort-Router wiederholt werden, in diesem Beispiel zwei Mal.

IPsec-VPN-Verbindung einrichten

  • An m0n0wall anmelden.
  • “VPN – IPsec” anklicken.
  • “Enable IPsec” aktivieren und auf “Save” klicken.
  • Auf das “+”-Symbol klicken.
  • Bei “Remote subnet” das IP-Netz des entfernten Standorts eingeben.
  • Bei “Remote gateway” die statische öffentliche IP-Adresse des entfernten Standorts eingeben.
  • Bei “Authentication method” “RSA signature” auswählen.
  • Nun die Zertifikat-Datei für den betreffenden Standort-Router mit einem Text-Editor öffnen.
  • Den Inhalt von “BEGIN CERTIFICATE” bis “END CERTIFICATE” kopieren und im Feld “Certificate” einfügen.
  • Den Inhalt von “BEGIN RSA PRIVATE KEY” bis “END RSA PRIVATE KEY” kopieren und in das Feld “Key” einfügen.
  • Im Feld “Peer certificate” muss der Inhalt von “BEGIN CERTIFICATE” bis “END CERTIFICATE” des entfernten Standort-Routers eingefügt werden.
  • Abschliessend auf “Save” und dann auf “Apply changes” klicken.

Troubleshooting

War zuerst IPsec mit pre-shared Key im Einsatz und wurde auf IPsec mit Zertifikaten umgestellt, kann es vorkommen, das der Verbindungsaufbau zunächst scheitert. In einem solchen Fall hilft das Neustarten der m0n0wall-Router auf beiden Seiten.

(Quelle: http://doc.m0n0.ch/handbook/ipsec-rsa-auth.html)

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert