[Problem] Fritz!Box 7170 & 3270, OpenVPN, keine Verbindung

chrisse111179

Neuer User
Mitglied seit
3 Feb 2011
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Hallo,

ich versuche gerade die zwei Fritzboxen so zu konfigurieren dass ich von zu Hause auf unser Firmennetzwerk zugreifen kann.

Dank einiger Anleitungen im Internet und guter Tipps hier im Forum habe ich auch auf beiden Boxen openVPN ans laufen gebracht.

Allerding kann ich kein Gerät im Firmennetzwerk anpingen.

Hier mal die debug.cfg der Box die ich als Server eingerichtet habe:
PHP:
# # # # # # # # # Start des telnet-daemons 
/usr/sbin/telnetd -l /sbin/ar7login

# # # # # # # # # Installation FTP-Server
cd /var/tmp
wget http://***************/fritzbox/7270/bftpd.conf
wget http://***************/fritzbox/7270/bftpd
chmod +x bftpd 
chmod 777 bftpd.conf

# Hier den Usernamen und den Passwort-Hash für den FTP-Server eintragen 
echo "ftpuser:***********:0:0:root:/:null" >> /var/tmp/passwd
/var/tmp/bftpd -d -c /var/tmp/bftpd.conf

# set hostname to fritz.box
hostname fritz.box

# Tun-Device anlegen:
mknod /var/tmp/tun c 10 200

# load VPN-Server (OpenVPN)
  
  
# change dir
cd /var/tmp

# write 'secret.key' to file
cat > /var/tmp/secret.key << 'ENDSECRETKEY'
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
Hier steht natürlich mein Schlüssel
-----END OpenVPN Static key V1-----
  
ENDSECRETKEY

# write 'server.ovpn' to file
cat > /var/tmp/server.ovpn << 'END-SERVER-OVPN'
#
dev tun0
dev-node /var/tmp/tun
ifconfig 192.168.200.2 192.168.200.1
tun-mtu 1500
float
mssfix
  
#Pfad zum Key File
secret /var/tmp/secret.key
  
#Protokoll auf TCP und Port 1194
proto tcp-server
port 1194
  
#Protokollierung auf 4
verb 4
  
#Routen setzen, bei route Subnetz des Clients eintragen
route 192.168.176.0 255.255.255.0
  
#Verbindung erhalten
ping 15
ping-restart 120
  
END-SERVER-OVPN

# Programmdatei nachladen
wget http://www.*************/openvpn/openvpn
  
# ausführbar machen
chmod +x /var/tmp/openvpn
chmod 0600 /var/tmp/server.ovpn
chmod 0600 /var/tmp/secret.key

# change dir
cd /var/tmp
  
# OpenVPN als Daemon starten
./openvpn --config ./server.ovpn &

Hier die debug.cfg der Clientbox:
PHP:
while !(ping -c 1 www.********.de do
sleep 7
done

hostname fritz.box

mknod /var/tmp/tun c 10 200

cd /var/tmp

cat > /var/tmp/secret.key << 'ENDSECRETKEY'
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
Hier steht der gleiche Schlüssel wie beim Server
-----END OpenVPN Static key V1-----

ENDSECRETKEY


cat > /var/tmp/client.ovpn << 'END-CLIENT-OVPN'
ifconfig 192.168.200.1 192.168.200.2
dev tun
dev-node /var/tmp/tun
tun-mtu 1500
mssfix
persist-tun
persist-key

remote *********.dyndns.org

secret /var/tmp/secret.key

proto tcp-client
port 1194

ping 15

ping-restart 120

resolv-retry 60

verb 4

daemon

route 192.168.177.0 255.255.255.0

END-CLIENT-OVPN

cd /var/tmp

wget http://www.**************.de/openvpn/openvpn

chmod +x /var/tmp/openvpn
chmod 0600 /var/tmp/client.ovpn
chmod 0600 /var/tmp/secret.key

./openvpn --config ./client.ovpn &

Außerdem habe ich in der ar7.cfg der Serverbox mit
PHP:
                       forwardrules = "tcp 0.0.0.0:21 0.0.0.0:21 0", 
                                       "tcp 0.0.0.0:1194 192.168.177.1:1194 0 # OpenVPN";
einen Port geöffnet.

Ich vermute dass ich entweder den Port nicht richtig geöffnet habe oder irgendwas bei der Verteilung der IP-Adressen falsch gemacht habe.
Für Hilfe wäre ich echt dankbar!

Grüße,
Christian
 
Zuletzt bearbeitet:
Erstmal: Die Weiterleitung in den forwardrules sollte auf das Ziel 0.0.0.0 gehen ("tcp 0.0.0.0:1194 0.0.0.0:1194)

Um dann die Verbindung zu Testen solltest du aus dem "Client-Netz" erstmal versuchen, die IP-Adresse der FB im "Firmennetz" zu erreichen. Ist denn die FB im "Firmennetz" das Default-Gateway? Nur dann kann die FB das "Heimnetz" mit dem Firmennetz verbinden; analog muss die Client-FB im Heimnetz das DG sein (oder in den Netzen muss vom DG eine Route für das Netz auf die entsprechende lokale FB zeigen).

Jörg
 
Hallo,

erstmal vielen Dank für Deine Antwort!

Ich habe in der Zwischenzeit das ganze nochmal nach dieser Anleitung gemacht und es funktioniert!
Das einzige Problem ist dass mir manchmal die Verbindung wegbricht. Vermutlich liegt das aber an dyndns.org. Wir bekommen nächste Woche eine feste IP, dann wird sich zeigen ob es an dyndns.org oder an mir liegt. :)

Grüße,
Christian
 
Gerne ;-)
Noch ein paar Tipps:
- Falls die oben angegebenen Daten "echt" sind, solltest du die noch "raus-xx-en" (Beitrag bearbeiten).
- Falls das TCP Protokoll nicht zwingend ist, solltest du eher UDP für das VPN nutzen, das wird bei OpenVPN ausdrücklich empfohlen und ist meist leistungsfähiger.

Jörg
 
:) ok, besonders clever ist es natürlich nicht alle URL's im Netz offenzulegen!
Gut, die Performance ist tatsächlich nicht so berauschend, muss aber auch dazu sagen dass der Internetanschluß noch aus einer Zeit stammt als Du mit einer Brieftaube schneller mehr Daten verschicken konntest als übers Internet. Aber das ändert sich auch nächste Woche, genau wie die IP.
Ich habe leider keinen Schimmer wie und ob ich UDP nutzen kann, muss wohl noch ein wenig dazu im Netz stöbern!

Chrisse
 
Wenn du nicht weißt, ob/wofür TCP bei dir gerade zwingend ist, kannst du vermutlich UDP nutzen ;-)
Viel Erfolg!
 
Hey,
ich habe nun ein bisschen geforscht, und wenn ich alles richtig verstehe ist UDP die schnellere, aber unsicherere, und TCP die langsamere aber sichere Methode Daten zu übertragen weil der Empfänger merkt ob unterwegs was verlorengeganen ist und es gegebenenfalls wieder anforden kann. Richtig soweit?
Welches Protokoll man nutzt ist also, immer vorausgesetzt ich verstehe alles richtig, abhängig davon für welche Anwendung man es braucht.
In meinem Fall läuft im Firmennetzwerk ein Datenbankserver auf den vom Clientnetzwerk aus zugegriffen werden soll.
Kann ich dann UDP nutzen?

Wenn ja, wie bewerkstellige ich das?
Reicht es wenn ich in der server.ovpn die so aussieht:
PHP:
# Run as daemon
daemon
log logging.log
status status.log

# Device
dev tap0
dev-node /var/tmp/tun
ifconfig 192.168.0.2 255.255.255.0
persist-tun

# TCP-Server, port 1194, bound to virtual adapter (192.168.0.3)
proto tcp-server
local 192.168.0.3
port 1194
mode server
tls-server
client-to-client
comp-lzo
keepalive 10 120

# Certificates
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
persist-key

# verbose level
verb 3
den Eintrag
PHP:
proto tcp-server
in
PHP:
proto udp-server
ändere,
in der client.ovpn den Eintrag
PHP:
proto tcp-client
in
PHP:
proto udp-client
ändere und die Portfreigabe von TCP auf UDP umstelle?

Grüße und einen schönen Sonntag,
Christian
 
Prinzipiell ist die Unterscheidung richtig, TCP ist ein verbindungsorientiertes Protokoll, UDP verbindungslos.
Für den Einsatz im VPN ist UDP besser geeignet, weil es weniger Protokolloverhead hat und für die Router "einfacher" ist.
Die benötigte "Sicherheit" in einer IP-Verbindung, die du erreichen willst, sorgt schon das Protokoll, was du "durch den Tunnel" anwendest. Wenn da in der Kommunikation zum DB-Server tatsächlich mal ein Paket nicht ankommt, wird es von dem "DB-Zugriffsprotokoll", was vermutlich auf TCP basiert, wiederholt usw..
Für das eigentliche VPN ist daher UDP meist die bessere Wahl.

In den Configs ist "UDP" der Standard, so dass der Server ganz ohne Eintrag auskommt, (lösche also einfach "proto tcp-server" das entspricht dann dem Eintrag "proto udp"; und "port 1194" ist als Standard eigentlich sogar auch noch überflüssig). Im Client reicht ein "remote xxx" (also lösche "proto tcp-client ").

Denk aber dran, dass du dann auf der Serverbox die Port-Weiterleitung auf "UDP" ändern (oder die ergänzen) musst, nimm als Ziel immer "0.0.0.0".

Jörg
 
Ok, verstehe!
Ich habe leider erst am Dienstag die Möglichkeit es auszuprobieren. Ich werde aber Feedback geben sobald es soweit ist.
Vielen Dank für Deine Mühe und die ausführlichen Antworten, das ist echt sehr hilfreich! :)

Chrisse
 
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.