Verbindung über openvpn auf entf. Server

SuperS04

Neuer User
Mitglied seit
28 Dez 2008
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Hallo,

ich habe ein Problem eine Verbindung auf einen entfernten Server herzustellen.

Fritz!Box mit freetz 1.0.1 7141 -> 192.168.5.1
entf. Server -> 10.8.0.1

Die Zertifikate habe ich unter Einstellungen eingespielt.

Meine Einstellungen unter openvpn im Freetz Menü...

Modus: Client, Tunnel
Server und ggf. Port: xyz.de 1194
Authentifizierungsmethode: Zertifikate
Cipher: Blowfish, TLS-Authentifizierung aktiviert
Optionen vom Server empfangen (nur mit Zertifikaten) aktiviert
auch IP-Adresse vom Server empfangen aktiviert
Keepalive aktiviert
LZO aktiviert

Für mich sieht es so aus, als würde es eigentlich funktionieren,
aber ich kann mir von dem Server die Daten nicht holen.

Route gibt folgendes aus:

[Edit frank_m24: Bitte benutzt CODE Tags für solche Ausgaben.]
Code:
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.8.0.1        10.8.0.49       255.255.255.255 UGH   0      0        0 tun0
192.168.180.1   *               255.255.255.255 UH    2      0        0 dsl
10.8.0.49       *               255.255.255.255 UH    0      0        0 tun0
192.168.180.2   *               255.255.255.255 UH    2      0        0 dsl
192.168.5.0     *               255.255.255.0   U     0      0        0 lan
169.254.0.0     *               255.255.0.0     U     0      0        0 lan
default         *               0.0.0.0         U     2      0        0 dsl
/var/mod/root #


/var/mod/root # cat /var/tmp/debug_openvpn.out
Sun Dec 28 12:00:16 2008 OpenVPN 2.1_rc13 mipsel-linux [SSL] [LZO2] [EPOLL] built on Dec 25 2008
Sun Dec 28 12:00:16 2008 WARNING: file '/tmp/flash/box.key' is group or others accessible
Sun Dec 28 12:00:16 2008 Control Channel Authentication: using '/tmp/flash/static.key' as a OpenVPN static key file
Sun Dec 28 12:00:16 2008 Outgoing Control Channel Authentication: Using 160 bit message hash 'SHA1' for HMAC authentication
Sun Dec 28 12:00:16 2008 Incoming Control Channel Authentication: Using 160 bit message hash 'SHA1' for HMAC authentication
Sun Dec 28 12:00:16 2008 LZO compression initialized
Sun Dec 28 12:00:16 2008 Control Channel MTU parms [ L:1542 D:166 EF:66 EB:0 ET:0 EL:0 ]
Sun Dec 28 12:00:16 2008 Data Channel MTU parms [ L:1542 D:1450 EF:42 EB:135 ET:0 EL:0 AF:3/1 ]
Sun Dec 28 12:00:16 2008 Socket Buffers: R=[110592->131072] S=[110592->131072]
Sun Dec 28 12:00:16 2008 UDPv4 link local: [undef]
Sun Dec 28 12:00:16 2008 UDPv4 link remote: xx.xx.xx.xx:1194
Sun Dec 28 12:00:16 2008 TLS: Initial packet from xx.xx.xx.xx:1194, sid=xxxxxxxx xxxxxxxx
Sun Dec 28 12:00:17 2008 VERIFY OK: depth=1, xxxxx
Sun Dec 28 12:00:17 2008 VERIFY OK: nsCertType=SERVER
Sun Dec 28 12:00:17 2008 VERIFY OK: depth=0, xxx
Sun Dec 28 12:00:18 2008 Data Channel Encrypt: Cipher 'BF-CBC' initialized with 128 bit key
Sun Dec 28 12:00:18 2008 Data Channel Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Sun Dec 28 12:00:18 2008 Data Channel Decrypt: Cipher 'BF-CBC' initialized with 128 bit key
Sun Dec 28 12:00:18 2008 Data Channel Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Sun Dec 28 12:00:18 2008 Control Channel: TLSv1, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHA, 1024 bit RSA
Sun Dec 28 12:00:18 2008 [xxxxxx] Peer Connection Initiated with xx.xx.xx.xx::1194
Sun Dec 28 12:00:19 2008 SENT CONTROL [xxxxx]: 'PUSH_REQUEST' (status=1)
Sun Dec 28 12:00:19 2008 PUSH: Received control message: 'PUSH_REPLY,route 10.8.0.1,topology net30,ping 10,ping-restart 120,ifconfig 10.8.0.50 10.8.0.49'
Sun Dec 28 12:00:19 2008 OPTIONS IMPORT: timers and/or timeouts modified
Sun Dec 28 12:00:19 2008 OPTIONS IMPORT: --ifconfig/up options modified
Sun Dec 28 12:00:19 2008 OPTIONS IMPORT: route options modified
Sun Dec 28 12:00:19 2008 TUN/TAP device tun0 opened
Sun Dec 28 12:00:19 2008 TUN/TAP TX queue length set to 100
Sun Dec 28 12:00:19 2008 /sbin/ifconfig tun0 10.8.0.50 pointopoint 10.8.0.49 mtu 1500
Sun Dec 28 12:00:19 2008 /sbin/route add -net 10.8.0.1 netmask 255.255.255.255 gw 10.8.0.49
Sun Dec 28 12:00:19 2008 Initialization Sequence Completed

Kann jemand helfen?
Danke.

VG
Jens
 
Wie sieht denn die Server-Config aus?

Stimmen z.B. bei "tls-auth" der Key und auch die "Richtung"? Die GUI nutzt für den Client:
Code:
tls-auth /tmp/flash/static.key 1

Beim Server müsste dementsprechend stehen
Code:
tls-auth <[I]/Pfad/zem/key/[/I]>static.key 0

Ist ein Ping auf den Server (10.8.0.1) möglich? Kommst du ggf. auch an das Logfile beim Server?

Jörg
 
Mir wurde nur die Konfig mitgeteilt..

client
dev tun
proto udp
remote xyz.de 1194
resolv-retry infinite
nobind
group nogroup
persist-key
persist-tun
ca xyz-ca.crt
cert xyz.crt
key xyz.key
tls-auth xyz-ta.key 1
comp-lzo
verb 3

Wie ich inzwischen erfahren habe, ist wohl ein Ping auf den Server nicht möglich.
Ich möchte mir Daten am Port 20248 auf den 10.8.0.1 abholen.

Ein Bekannter meinte jetzt, dass die Pakete den Weg wahrscheinlich nicht zurück finden, aber die Verbindung eigentlich steht.

Er meinte ich solle das was mit iptables machen??

Hat jemand damit Erfahrung?

VG
 
Soll denn die Box selbst die Daten holen? Oder versuchst du das von einem PC "hinter" der Box? Letzteres wird so nicht gehen, aber du könntest dann ja auch die VPN-Verbindung direkt auf dem PC starten...

Jörg
 
Die DBOX soll sich die Daten holen.

Für die DBOX selbst habe ich noch kein openvpn gefunden, sonst hätte ich darauf installiert.
Das hätte das ganze vereinfacht.
 
Du benötigtest dafür dann iptables auf der fritzbox, um auf das tun zu "natten".

Oder du versuchst mal das anhängenden Binary ;-), was ich mal mit openwrt für Powerpc statisch gebaut habe:

Code:
# per ftp openvpn und tun.o nach /tmp auf der dbox bringen
# dann auf der dbox (nur zum Testen)
cd /tmp
chmod +x openvpn
./openvpn --genkey --secret /tmp/key
insmod -f /tmp/tun.o
echo -e "dev tun\nsecret /tmp/key" > ovpn.cfg
./openvpn ovpn.cfg

Ergab bei mir (die Funktion habe ich nicht getestet...)
Code:
/tmp # ./openvpn ovpn.cfg 
Thu Jan  1 01:27:23 1970 OpenVPN 2.1_rc13 powerpc-linux [SSL] [LZO2] [EPOLL] built on Jan  2 2009
Thu Jan  1 01:27:23 1970 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.
Thu Jan  1 01:27:23 1970 WARNING: file '/tmp/key' is group or others accessible
Thu Jan  1 01:27:23 1970 TUN/TAP device tun0 opened
Thu Jan  1 01:27:23 1970 UDPv4 link local (bound): [undef]:1194
Thu Jan  1 01:27:23 1970 UDPv4 link remote: [undef]
Thu Jan  1 01:27:28 1970 event_wait : Interrupted system call (code=4)
Thu Jan  1 01:27:28 1970 SIGINT[hard,] received, process exiting

Jörg



PS: Gebaut wurde es so, falls es interessiert:
Im Openwrt PPC40x und schonmal openssl-libs ausgesucht. "make" baut dann erstmal die passende Toolchain für uns ;-)
Code:
PATH=/home/joerg/openwrt/trunk/staging_dir/toolchain-powerpc_gcc3.4.6/bin/:$PATH


# Alle sourcen aus dem Freetz kopiert, dann sind sie ggf schon gepatched ;-)
# openssl hatten wir ja schon bauen lassen 

# fehlt noch lzo2 
./configure --enable-shared --enable-static  --disable-asm --disable-libtool-lock  --build=i386-linux-gnu --target=powerpc-linux --host=powerpc-linux  CC="powerpc-linux-uclibc-gcc" CFLAGS="-Os -pipe   -L/home/joerg/openwrt/trunk/staging_dir/toolchain-powerpc_gcc3.4.6/lib/ "
make clean
make

# und dann natürlich openvpn (rc_13):

./configure --sysconfdir=/tmp/openvpn --enable-lzo --disable-shared --enable-static  --disable-debug --disable-plugins  --disable-management --disable-pkcs11 --disable-socks --disable-http --enable-password-save --enable-small --with-ssl-headers=../openssl-0.9.8i/include/  --with-ssl-lib=../openssl-0.9.8i/  --with-lzo-headers=../lzo-2.02/include/  --with-lzo-lib=../lzo-2.02/src/.libs/  --build=i386-linux-gnu -target=powerpc-linux --host=powerpc-linux  CC="powerpc-linux-uclibc-gcc" CFLAGS="-Os -pipe   -L/home/joerg/openwrt/trunk/staging_dir/toolchain-powerpc_gcc3.4.6/lib/ "
make clean
make

# und (auf die Schnelle zum statischen bauen):

powerpc-linux-uclibc-gcc  -Os -pipe -Wa,--trap -Wl,-rpath-link,/home/joerg/openwrt/trunk/staging_dir/toolchain-powerpc_gcc3.4.6/lib/   -L../openssl-0.9.8i/  -L../lzo-2.02/src/.libs/ -static -o openvpn  base64.o buffer.o crypto.o dhcp.o error.o event.o fdmisc.o forward.o fragment.o gremlin.o helper.o lladdr.o init.o interval.o list.o lzo.o manage.o mbuf.o misc.o mroute.o mss.o mtcp.o mtu.o mudp.o multi.o ntlm.o occ.o pkcs11.o openvpn.o options.o otime.o packet_id.o perf.o pf.o ping.o plugin.o pool.o proto.o proxy.o ieproxy.o ps.o push.o reliable.o route.o schedule.o session_id.o shaper.o sig.o socket.o socks.o ssl.o status.o thread.o tun.o win32.o cryptoapi.o  -lssl -lcrypto -ldl -llzo2

powerpc-linux-strip openvpn
 

Anhänge

  • openvpn_2.1_rc13_dbox2_static.tgz
    467.8 KB · Aufrufe: 63
Zuletzt bearbeitet:
Danke, habe es mal getestet und sieht gar nicht so schlecht aus, bis auf ein warning bezgl. der Kernel Version.

/tmp # ./openvpn --genkey --secret /tmp/key
/tmp # insmod -f /tmp/tun.o
insmod: warning: kernel-module version mismatch
/tmp/tun.o was compiled for kernel version 2.4.36.2-dbox2
while this kernel is version 2.4.36.6-dbox2
/tmp # echo -e "dev tun\nsecret /tmp/key" > ovpn.cfg
/tmp # ./openvpn ovpn.cfg
Sat Jan 3 16:54:52 2009 OpenVPN 2.1_rc13 powerpc-linux [SSL] [LZO2] [EPOLL] built on Jan 2 2009
Sat Jan 3 16:54:52 2009 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.
Sat Jan 3 16:54:52 2009 TUN/TAP device tun0 opened
Sat Jan 3 16:54:52 2009 UDPv4 link local (bound): [undef]:1194
Sat Jan 3 16:54:52 2009 UDPv4 link remote: [undef]

Das mit dem Kernel ist doch nicht weiter wild, oder?

VG
Jens
 
So habe jetzt mal mit der originalen Config probiert und den Zertifikaten und es funktioniert. :D

Manchmal wäre es ja ganz einfach, wenn man mehr Ahnung hätte.;)

Tausend Dank.:groesste:
 
Hier mal ein aktuelleres Binary (2.1.4). So gebaut:
Code:
# zuvor "make menuconfig" mit Wahl von
# Target: PPC 40x
# liblzo , zlib, openssl (z.B. indem man OpenVPN wählt ;-))
#
# dann im openwrt Ordner
OWRT=$(pwd)
PATH=${OWRT}/staging_dir/toolchain-powerpc_gcc-4.4.5_uClibc-0.9.32/bin/:$PATH
tar xvzf ~/freetz-trunk-new/dl/openvpn-2.1.4.tar.gz
cd openvpn-2.1.4/
patch -p0 < ~/freetz-trunk/make/openvpn/patches/*.patch
AR=powerpc-openwrt-linux-uclibc-ar AS="powerpc-openwrt-linux-uclibc-gcc -c -Os -pipe -funit-at-a-time -mcpu=405 -fhonour-copts -msoft-float" LD=powerpc-openwrt-linux-uclibc-ld NM=powerpc-openwrt-linux-uclibc-nm CC="powerpc-openwrt-linux-uclibc-gcc" GCC="powerpc-openwrt-linux-uclibc-gcc" CXX="powerpc-openwrt-linux-uclibc-g++" RANLIB=powerpc-openwrt-linux-uclibc-ranlib STRIP=powerpc-openwrt-linux-uclibc-strip OBJCOPY=powerpc-openwrt-linux-uclibc-objcopy OBJDUMP=powerpc-openwrt-linux-uclibc-objdump SIZE=powerpc-openwrt-linux-uclibc-size CFLAGS="-Os -pipe -funit-at-a-time -mcpu=405 -fhonour-copts -msoft-float " CXXFLAGS="-Os -pipe -funit-at-a-time -mcpu=405 -fhonour-copts -msoft-float " CPPFLAGS="-I${OWRT}/staging_dir/target-powerpc_uClibc-0.9.32/usr/include -I${OWRT}/staging_dir/target-powerpc_uClibc-0.9.32/include -I${OWRT}/staging_dir/toolchain-powerpc_gcc-4.4.5_uClibc-0.9.32/usr/include -I${OWRT}/staging_dir/toolchain-powerpc_gcc-4.4.5_uClibc-0.9.32/include " LDFLAGS="-static -L${OWRT}/staging_dir/target-powerpc_uClibc-0.9.32/usr/lib -L${OWRT}/staging_dir/target-powerpc_uClibc-0.9.32/lib -L${OWRT}/staging_dir/toolchain-powerpc_gcc-4.4.5_uClibc-0.9.32/usr/lib -L${OWRT}/staging_dir/toolchain-powerpc_gcc-4.4.5_uClibc-0.9.32/lib" LIBS="-lssl -lcrypto -llzo2 -ldl" ./configure --target=powerpc-openwrt-linux --host=powerpc-openwrt-linux --build=x86_64-linux-gnu  --sysconfdir=/tmp/openvpn --enable-lzo --disable-shared --enable-static  --disable-debug --disable-plugins  --enable-management --disable-pkcs11 --disable-socks --disable-http --enable-password-save --enable-small  
#
# bauen
#
make
#
# und "strippen"
#
powerpc-openwrt-linux-strip openvpn
 

Anhänge

  • openvpn_dbox.gz
    530.6 KB · Aufrufe: 12
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.