In unserem Forschungsprojekt mussten wir einen Server „Molly“ bei einem anderen Unternehmen einsetzen. Sie ließen uns einen IPSec-Tunnel zu ihrer Firewall/ihrem Gateway einrichten und von dort werden die Kommunikationen an unseren Server weitergeleitet. Ich habe StrongSwan auf unserem Gateway-Rechner „Dolly“ konfiguriert und das funktioniert ganz gut. Dolly hat eine öffentliche Adresse, sagen wir 1.1.1.1, und eine virtuelle Adresse 10.10.1.1, die für einen Site2Site-Tunnel benötigt wird, der an dieselbe Netzwerkkarte „eth0“ angeschlossen ist. Auf der anderen Seite hat Molly 10.10.2.1. Während ich bei Dolly angemeldet bin, kann ich Molly unter dieser Adresse problemlos anpingen, obwohl das Routing nicht explizit von StrongSwan eingerichtet wurde (das Subnetz 10.10.2.1/24 erscheint nicht in der Routing-Tabelle).
Ich möchte unserem Team Zugriff auf Molly geben. Dolly (unser Gateway) befindet sich in einem großen Netzwerk, also dachte ich daran, ein von Dolly betriebenes VPN zu erstellen, mit dem sich die Teammitglieder verbinden können. Ich habe OpenVPN mit 10.10.1.0/24 als Subnetzadresse konfiguriert. OpenVPN stellt 10.10.1.1 auf seinem „tap0“-Gerät ein, ich kann mich damit verbinden und erhalte 10.10.1.2 auf der Tap-Schnittstelle meines OpenVPN-Clients. Ich kann 10.10.1.1 anpingen.
Ich dachte also, ich könnte einfach (was nicht der Fall war!) eth0 und tap0 auf Dolly unter br0 überbrücken, sodass alle Nachrichten, die das OpenVPN-Netzwerk durchlaufen, für den StrongSwan-Tunnel verfügbar gemacht würden. Wenn jemand im OpenVPN-Subnetz Pakete an 10.10.2.1 senden würde, würden diese auf dem Bridge-Gerät auf Dolly angezeigt und, soweit ich weiß, aufgrund der iptables-Einstellungen von StrongSwan in den Tunnel gezogen werden.
Aber es passiert nichts... Pingen – und alles andere – von einem beliebigen VPN-Mitglied (z. B. 10.10.1.2) ist nicht möglich, es funktioniert nur von Dolly (10.10.1.1). Der Neustart des Tunnels mit der bereits vorhandenen Brücke verläuft reibungslos, ändert aber nichts an der Situation. Ich habe versucht, auf dem Client-Computer (10.10.1.2) eine Routing-Regel hinzuzufügen, die besagt, dass 10.10.1.1 als Gateway zu 10.10.2.0/24 verwendet werden soll, aber aus irgendeinem Grund wird dies abgelehnt („Fehler: entweder „to“ ist doppelt oder „gw“ ist Müll.“).
Ich bin ratlos. Hat es tatsächlich jemand geschafft, diese Art von Konfiguration zu erreichen?
Dank im Voraus!
Szymon