[Gelöst] Fritzbox als VPN Client an IPCop

rev0lutio

Neuer User
Mitglied seit
11 Okt 2005
Beiträge
38
Punkte für Reaktionen
0
Punkte
6
Hallo Leute,

ich versuche nun seit Stunden anhand diverser Forenbeiträge und Howtos eine Fritzbox 7170 als VPN-Client an einen IPCop anzubinden (Net-to-Net).

Ich hänge hauptsächlich an folgender Fehlermeldung:
./openvpn: can't resolve symbol '__uClibc_start_main'

Dabei ist mir nicht ganz klar ob das nun ausschließlich mit der 2.6er Kernel Sache zu tun hat oder ob diese Meldung auch kommt wenn an der Konfiguration was faul ist.

De facto habe ich es noch nicht geschaft openvpn überhaupt zu starten.

Bevor ich jetz noch länger rumsuche, hier meine Konfigs poste und in weiterer Stundenlanger Kleinarbeit beschreibe was ich bisher alles versucht habe, stelle ich erstmal einen einzige Grundsätzliche Frage:

Kann ich eine Fritzbox überhaupt als OpenVPN Client an IPCop (Zerina) anbinden oder geht das nicht?
 
Zuletzt bearbeitet:
Ja, es geht.
Ja, der Fehler liegt nur am unpassenden Binary.
Ja, die Suche wäre der richtige Weg gewesen, um alle diese Fragen zu beantworten (und sogar Beiträge mit Beispielen zur IPCop Anbindung zu finden).
 
Ja, die Suche wäre der richtige Weg gewesen
Das finde ich ein wenig unpassend, denn:

ich versuche nun seit Stunden anhand diverser Forenbeiträge und Howtos ....

Ich habe mehrere Beiträge in verschiedenen Foren durchgelesen und diverse Binarys geaden, anscheinend aber nicht das richtige.
Für einen Link zum richtigen Binary wäre ich dankbar.
Leider konnte ich auch keine Beispiele zur Konfiguration mit IPCop(Zerina) finden. Wohl gleich fehlt es mir möglicherwiße an der korrekten Schreibweiße der Suchbegriffe.
"Fritzbox als VPN Client an IPCop"
"Fritzbox als VPN Client an Zerina"
"Fritzbox 7170 als VPN Client an IPCop"
"Net-to-Net mit Fritzbox und IPCop"
.....
 
Das finde ich ein wenig unpassend, denn ...
Mag sein, aber wenn du mal nach Beiträgen suchst, die ein "... ich habe schon stundenlang gesucht aber nichts gefunden ..." enthalten und dann darin weiter liest, verstehst du sicher eher, dass diese Aussage sich oft als zumindest eine sehr "subjektive Empfindung" herausstellt ;-).
Und noch ein ernst gemeinter Tipp dazu: Manchmal ist eine Google-Suche einfacher oder "erfolgreicher", als die im Forum

Eine Suche nach "can't resolve symbol" (eventuell mit "openvpn") hätte dich erstmal weitergebracht, denn dann hättest du schonmal sicher gewusst, dass das keine "Konfigfehlermeldung" ist und auch ein passendes Binary gefunden ;-) Eine statisch gebaute Version 2.2.0 ist im Anhang.

Wenn das Binary dann läuft, kümmern wir uns um die Konfig...

Jörg
 

Anhänge

  • openvpn_static.gz
    536.9 KB · Aufrufe: 28
Wenn Du mal schaust wann ich den Beitrag erstellt habe wirst Du feststellen das jeder normal sterbliche zu der Zeit im Bett liegt. Von daher lässt da auch die Konzentration nach. Ich denke ich hätte irgendwann, auch noch nach Tagen, die Lösung selbst gefunden. Nur mir läuft die Zeit davon und zu normalen Tageszeiten kann ich da nicht daran arbeiten. Beruflich mache ich nämlich was vollkommen anderes.
Ich habe natürlich auch per Google gesucht und auch nach den von dir genannten Begriffen. Die Flut an Information ist immens, aber uch verwirrend und wiedersprüchlich.

Erstmal danke für das Binary. Diese Version ist mir heute Nacht nicht in die Hände gefallen. Ich werde mich dann am Sonntag wieder drum kümmern und mich dann auch wieder melden.
 
Das Binary habe ich ja auch gerade erst gebaut, weil ich auf die Schnelle nur eine Version 2.1.4 gefunden hatte, und ich mir ja nicht nachsagen lassen wollte, dass es keine aktuelle Version gibt ;-).

Als Konfig sollte dann eigentlich "jede normale" Konfig direkt gehen, die auch auf einem PC oder so als Clientkonfig läuft (im Gegensatz zu einer Lösung mit Freetz, wo du die Konfig ja über eine GUI "nachbaust").

Wichtig ist die Frage, ob es "reicht", wenn sich die Box als Client anmeldet, wenn also der Server in irgendeiner Weise "von die beeinflussbar" ist, um Routing usw. zu setzen.
Sollte das nicht der Fall sein und Geräte hinter der Box Zugriff benötigen, kommst du wohl um iptables auf der Box nicht herum.
 
So,

ich hab das Binary jetzt geladen und es scheint auch lauffähig zu sein. Allerdings scheiterer ich nun an der Konfiguration.
Ich hab jetzt einfach mal ganz lapidar das unveränderte Config File genommen welches IPCop mir ausspuckt.
Nach einem Start von OpenVPN mit
./openvpn --config meineconfig.conf
spuckt die Box folgende Fehler aus:

Sun May 29 17:38:43 2011 OpenVPN 2.2.0 mipsel-linux [SSL] [LZO2] [EPOLL] [MH] [IPv6 payload 20110424-2 (2.2RC2)] built on May 25 2011
Sun May 29 17:38:43 2011 WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info.
Sun May 29 17:38:43 2011 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
Enter Private Key Password:

Ist hier das Passwort der p12 Datei gemeint? Da ich keines vergeben habe bestätige ich einfach nur mit Enter und erhalte folgende weitere Ausgabe:

Sun May 29 17:40:36 2011 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
Sun May 29 17:40:36 2011 OpenSSL ERROR code: 121
Sun May 29 17:40:36 2011 Error: private key password verification failed
Sun May 29 17:40:36 2011 Exiting


Und so sieht die Config aus:

dev tun
tun-mtu 1400
proto udp
port 1395
ifconfig 10.223.224.2 10.223.224.1
remote url.zum.ipcop.de
tls-client
pkcs12 key.p12
route 192.168.10.0 255.255.255.0
keepalive 10 60
cipher BF-CBC
comp-lzo
verb 3
#192.168.15.0/255.255.255.0
 
Und du bist sicher, dass du bei der Erzeugung des "pkcs12" kein PW vergeben hast sondern nur "RETURN" gedrückt hast?

Habe das gerade mal bei mir getestet, erzeuge ich ein "pkcs12" ohne PW, fragt mich das OpenVPN nicht nach einem PW, baue ich das gleiche mit PW, muss ich es eingeben (und ohne PW bekomme ich einen Fehler wie du):

Code:
[email protected]:/var/tmp# 
[email protected]:/var/tmp# openvpn --tls-client --dev tun --ifconfig 10.223.224.2 10.223.224.1 --remote 1.2.3.4 --pkcs12 nopw.p12
Sun May 29 19:39:24 2011 OpenVPN 2.2.0 mipsel-linux [SSL] [LZO2] [EPOLL] [MH] [IPv6 payload 20110424-2 (2.2RC2)] built on May 25 2011
Sun May 29 19:39:24 2011 IMPORTANT: OpenVPN's default port number is now 1194, based on an official port number assignment by IANA.  OpenVPN 2.0-beta16 and earlier used 5000 as the default port.
Sun May 29 19:39:24 2011 WARNING: No server certificate verification method has been enabled.  See http://openvpn.net/howto.html#mitm for more info.
Sun May 29 19:39:24 2011 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
Sun May 29 19:39:25 2011 WARNING: file 'nopw.p12' is group or others accessible
Sun May 29 19:39:25 2011 TUN/TAP device tun0 opened
Sun May 29 19:39:25 2011 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Sun May 29 19:39:25 2011 /sbin/ifconfig tun0 10.223.224.2 pointopoint 10.223.224.1 mtu 1500
Sun May 29 19:39:25 2011 UDPv4 link local (bound): [undef]
Sun May 29 19:39:25 2011 UDPv4 link remote: [AF_INET]1.2.3.4:1194

Sun May 29 19:39:35 2011 event_wait : Interrupted system call (code=4)
Sun May 29 19:39:35 2011 /sbin/ifconfig tun0 0.0.0.0
Sun May 29 19:39:35 2011 SIGINT[hard,] received, process exiting
[email protected]:/var/tmp# 
[email protected]:/var/tmp# 
[email protected]:/var/tmp# openvpn --tls-client --dev tun --ifconfig 10.223.224.2 10.223.224.1 --remote 1.2.3.4 --pkcs12 withpw.p12
Sun May 29 19:39:51 2011 OpenVPN 2.2.0 mipsel-linux [SSL] [LZO2] [EPOLL] [MH] [IPv6 payload 20110424-2 (2.2RC2)] built on May 25 2011
Sun May 29 19:39:51 2011 IMPORTANT: OpenVPN's default port number is now 1194, based on an official port number assignment by IANA.  OpenVPN 2.0-beta16 and earlier used 5000 as the default port.
Sun May 29 19:39:51 2011 WARNING: No server certificate verification method has been enabled.  See http://openvpn.net/howto.html#mitm for more info.
Sun May 29 19:39:51 2011 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
Enter Private Key Password:				[i]## hier einfach RETURN statt des korrekten Passwortes[/i]
Sun May 29 19:39:51 2011 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
Sun May 29 19:39:51 2011 OpenSSL ERROR code: 113
Sun May 29 19:39:51 2011 Error: private key password verification failed
Sun May 29 19:39:51 2011 Exiting
[email protected]:/var/tmp# 
[email protected]:/var/tmp# 
[email protected]:/var/tmp# 
[email protected]:/var/tmp# openvpn --tls-client --dev tun --ifconfig 10.223.224.2 10.223.224.1 --remote 1.2.3.4 --pkcs12 withpw.p12
Sun May 29 19:39:58 2011 OpenVPN 2.2.0 mipsel-linux [SSL] [LZO2] [EPOLL] [MH] [IPv6 payload 20110424-2 (2.2RC2)] built on May 25 2011
Sun May 29 19:39:58 2011 IMPORTANT: OpenVPN's default port number is now 1194, based on an official port number assignment by IANA.  OpenVPN 2.0-beta16 and earlier used 5000 as the default port.
Sun May 29 19:39:58 2011 WARNING: No server certificate verification method has been enabled.  See http://openvpn.net/howto.html#mitm for more info.
Sun May 29 19:39:58 2011 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
Enter Private Key Password:				[i]## hier das korrekte Passwort eingegeben[/i]
Sun May 29 19:40:01 2011 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
Sun May 29 19:40:01 2011 WARNING: file 'withpw.p12' is group or others accessible
Sun May 29 19:40:01 2011 TUN/TAP device tun0 opened
Sun May 29 19:40:01 2011 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Sun May 29 19:40:01 2011 /sbin/ifconfig tun0 10.223.224.2 pointopoint 10.223.224.1 mtu 1500
Sun May 29 19:40:01 2011 UDPv4 link local (bound): [undef]
Sun May 29 19:40:01 2011 UDPv4 link remote: [AF_INET]1.2.3.4:1194
Sun May 29 19:40:12 2011 event_wait : Interrupted system call (code=4)
Sun May 29 19:40:12 2011 /sbin/ifconfig tun0 0.0.0.0
Sun May 29 19:40:12 2011 SIGINT[hard,] received, process exiting
[email protected]:/var/tmp#

EDIT
Ansonsten: Wie wurde das Zertifikat denn übertragen? Kann es daran liegen?
Wenn du so nicht zum Ziel kommst, könntest du das pkcs12-Zertifkat auch noch "auspacken" und Zert und Key einzeln angeben.

Jörg


EDIT2:
Damit du mal auf der Box dein Certifikat testen kannst, ein openssl für die Box:
Code:
[email protected]:/var/tmp# ./openssl pkcs12  -clcerts -nokeys -in nopw.p12 
WARNING: can't open config file: /mod/etc/ssl/openssl.cnf
Enter Import Password:
MAC verified OK
Bag Attributes
    friendlyName: xxxx
    localKeyID: xxxx
subject=xxxx
issuer=xxxx
-----BEGIN CERTIFICATE-----
xxxx
-----END CERTIFICATE-----
[email protected]:/var/tmp#
 

Anhänge

  • openssl_static.gz
    669.3 KB · Aufrufe: 7
Zuletzt bearbeitet:
Gebe ich kein Passwort ein (weil ich hab ja keines vergeben) erscheint:
# ./openssl pkcs12 -clcerts -nokeys -in key.p12
WARNING: can't open config file: /mod/etc/ssl/openssl.cnf
Enter Import Password:
MAC verified OK
Error outputting keys and certificates
5881600:error:060740A0:lib(6):func(116):reason(160):NA:0:
5881600:error:23077073:lib(35):func(119):reason(115):NA:0:
5881600:error:2306A075:lib(35):func(106):reason(117):NA:0:

Tippe ich irgendwas in die Passwort abfrage, kommt:
# ./openssl pkcs12 -clcerts -nokeys -in key.p12
WARNING: can't open config file: /mod/etc/ssl/openssl.cnf
Enter Import Password:
Mac verify error: invalid password?

Übertragen hab ich die Datei mittels wget
 
Zuletzt bearbeitet:
Und geht der Befehl auf einem Pc? Ansonsten versuche die einzelnen Teile oder übertrage die Datei gepackt (dann brauchst du einen Entpacker) oder per USB-Stick...

Jörg
 
Zuletzt bearbeitet:
Irgendwo im Forum hatte ich die Tage einen Beitrag zu einem ähnlichen Problem gelesen. Dummerweiße finde ich den Beitrag nicht mehr, es war allerdings auch kein Lösungsweg beschrieben. Die letzte Antwort war:
Es geht jetzt, es lag an SSL
oder so ähnlich.

Das nur mal am Rande.


So ich heute Abend dazu komme werde ich folgendes probieren:
1. P12 auf einem Linuxrechner mit OpenSSL testen
2. P12 mittels USB STick auf die Box packen und da nochmal testen
3. Key und Zertifikat aus der P12 extrahieren und einzeln verwende

Zu Punkt 3 fehlt mir komplett die Vorgehensweiße, da wäre im Vorfeld ne kurze Beschreibung hilfreich.

Nur um sicherzugehen: Brauch ich auf der Client Box ein Root bzw. Host Zertifikat?
 
Genau mit dem oben angehängten openssl habe ich bei mir auf der Box meine Zertifikate ausgepackt (siehe oben) und auch das angehängte openvpn-Binary nochmal mit "meinem" pkcs12-Zertifikat getestet. Zumindest das sollte also funktionieren. Ich tippe daher auf das Zertifikat (Inhalt oder Übertragung).

Dein P12 muss das CA-Zertifikat, sowie für deinen Client Zertifikat und Schlüssel enthalten, denke ich (siehe auch den "Auspackbefehl" unten).

Zu Punkt 3 etwas von hier (erster Treffer der google Suche ;-)):

Code:
openssl pkcs12 -in cert.p12 -clcerts -nokeys -out /etc/ipsec.d/certs/cert.pem
openssl pkcs12 -in cert.p12 -cacerts -nokeys -out /etc/ipsec.d/cacerts/root.pem
openssl pkcs12 -in cert.p12 -nocerts -out /etc/ipsec.d/private/key.pem

Jörg
 
Zuletzt bearbeitet:
So,

hab die P12 mal auf ner SuSE Kiste getestet. -> Geht!
P12 mitels USB STick auf die Box gepackt -> Geht Nicht!
Was mich dabei stört ist die Aussage:
WARNING: can't open config file: /mod/etc/ssl/openssl.cnf

Ich probier jetzt mal die die Keys zu extrahieren und damit zu starten.
 
Das "WARNING" stört nicht (siehst du ja an meinem Beitrag #8 oben), du willst ja nichts weiter mit openssl tun, als das Zertifikat auspacken...
 
Das "WARNING" stört nicht (siehst du ja an meinem Beitrag #8 oben), du willst ja nichts weiter mit openssl tun, als das Zertifikat auspacken...
OK, ich hab nach einem zusammenhang gesucht.

Ich habe außerdem einen Erfolg zu vermelden.
Nachdem ich das P12 nun zerlegt und die config, die von IPCop zur Verfügung gestellt wird, etwas angepasst habe konnte eine Verbindung initiert wurden. Alle Geräte im Netz der Fritzbox sind nun im Netz des IPCop erreichbar und umgekehrt.#

Ein Problem beim Start habe ich allerdings noch.
Den Key habe ich mittels
openssl pkcs12 -in cert.p12 -nocerts -out /etc/ipsec.d/private/key.pem
erstellt. Dabei hat mich openssl nach einem zu erstellenden Private Key Passwort gefragt welches mind. 4 Zeichen lang sein soll.
Kann man das mittels option unterdrücken, bzw. wie kann ich die Eingabe desselbigen auf der Box mittels debug.cfg automatisieren?

EDIT: Ich konnte die Key Datei davon überzeugen mittels
openssl rsa -in key.pem -out key.pem
sich der Passphrase zu entledigen.

Abschließend ist zu sagen, das Netz läuft wie gewünscht. Danke für die Hilfe!
 
Zuletzt bearbeitet:
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.