• Der Fragesteller hat diesen Beitrag als gelöst markiert.
  • Geschlossen

VPN Server auf Ubuntu Host internetbox Standard Port probleme

zerg0
Level 1
1 von 23

Hallo Zusammen,

 

Ich hoffe Ihr hattet alle schöne Weihnachten. 

Schliderung der Ausgangslage. 
So sieht das Netzwerk bei mir Zuhause momentan aus.

                          +-------------------------+
               (public IP)|                         |
  {INTERNET}=============={     Router              |
                          |                         |
                          |         LAN switch      |
                          +------------+------------+
                                       | (192.168.0.1)
                                       |
                                       |              +-----------------------+
                                       |              |                       |
                                       |              |        OpenVPN        |  eth0: 192.168.0.10/24
                                       +--------------{eth0    server         |  tun0: 10.8.0.1/24
                                       |              |                       |
                                       |              |           {tun0}      |
                                       |              +-----------------------+
                                       |
                              +--------+-----------+
                              |                    |
                              |  Other LAN clients |
                              |                    |
                              |   192.168.0.0/24   |
                              |   (internal net)   |
                              +--------------------+

Portforwarding (Konfigurierter OpenVPN Port UDP auf OpenVPN Server)

OS auf OpenVPN Server Ubunut 16.04 LTS Server Version (ohne GUI)

Nun möchte ich von extern mit meinem Windows 10 Client mit Installieretem OpenVPN Client auf das Heimnetzwerk zugreifen und mit den Geräten kommunizieren. Zudem sollten die Geräte im LAN noch mit dem Internet Kommunizieren dürfen. 

 

Dafür habe ich folgendes auf dem VPN Server eingerichtet.

 

    # Allow traffic initiated from VPN to access LAN
    iptables -I FORWARD -i tun0 -o eth0 \
         -s 10.8.0.0/24 -d 192.168.0.0/24 \
         -m conntrack --ctstate NEW -j ACCEPT

    # Allow established traffic to pass back and forth
    iptables -I FORWARD -m conntrack --ctstate RELATED,ESTABLISHED \
         -j ACCEPT
    # Masquerade all traffic from VPN clients -- done in the nat table 
    iptables -t nat -I POSTROUTING -o eth0 \
          -s 10.8.0.0/24 -j MASQUERADE

 

Wenn ich mich nun mit dem Windows 10 Client im LAN befinde kann ich den VPN Tunnel zum OpenVPN Server aufbauen und erhalte eine IP Adresse im Bereich 10.8.0.x.
Nun kann ich mit dem Server über ssh kommunizieren. Ob nun die Verbindung über den Tunnel verwendet wird oder über das normale Interface hab ich noch nicht getestet. 
Ich werde wenn nötig, mit Wireshark an den jeweiligen Interfaces Sniffen um genaueres herauszufinden.

 

Jetzt zum eigentlichen Problem. 

Verbinde ich mein Windows 10 Client mit meinem Android Hotspot um ein externes Netzwerk zu simulieren. Gelingt mir zwar der Verbindungsaufbau über VPN. erhalte wieder eine IP Adresse 10.8.0.y.

Doch es wird mir nicht erlaubt mit dem Server über ssh zu kommunizieren.

 

Nun meine Frage. Ist es tatsächlich notwendig an der Swisscom Box die benötigten Ports für ssh rdp smtp etc. zu öffnen um mit meinen Geräten zu kommunizieren. Oder kann ich das mit einer zusätzlichen Firewall Instanz auf dem OpenVPN Server lösen. 

 

Vielen Dank für eure Hilfe

zer0g

 

HILFREICHSTE ANTWORT1

Akzeptierte Lösungen
zerg0
Level 1
21 von 23

Hallo Zusammen

 

Diese Anleitung hat schlussentlich zum gewünschten Ziel geführt.

OpenVPN-Installationsanleitung

 

Danke für die Hilfe, hier noch die konfigurationen welche zum Ziel geführt haben plus einige Zusätze für die key erstellenung.

 

Und nochmals die Zeichnung.

 

                         +-------------------------+
               (public IP)|                         |
  {INTERNET}=============={     IB Swisscom         |
                          |                         |
                          |         LAN switch      |
                          +------------+------------+
                                       | (192.168.1.1)
                                       |
                                       |              +-----------------------+
                                       |              |                       |
                                       |              |        OpenVPN        |  enp0s25: 192.168.1.x/24
                                       +--------------{enp0s25    server      |  tun0: 10.8.0.1/24
                                       |              |                       |
                                       |              |           {tun0}      |
                                       |              +-----------------------+
                                       |
                              +--------+-----------+
                              |                    |
                              |  Other LAN clients |
                              |                    |
                              |   192.168.1.x/24   |
                              |   (internal net)   |
                              +--------------------+

 

Zuerst die Openvpn Server Konfiguration gekürzt auf die angepassten Parameter, ohne default Werte.

port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key  # This file should be kept secret
dh dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
keepalive 10 120
tls-auth ta.key 0 # This file is secret
key-direction 0
cipher AES-128-CBC   # AES
auth SHA256
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 9
crl-verify crl.pem

etc/uwf/before.rules

 

# START OPENVPN RULES
# NAT table rules
*nat
:POSTROUTING ACCEPT [0:0] 
# Allow traffic from OpenVPN client to enp0s25
-A POSTROUTING -s 10.8.0.0/8 -o enp0s25 -j MASQUERADE COMMIT
# END OPENVPN RULES

ufw allow OpenSSH 

ufw allow 1194/udp für OpenVPN Port

 

~/client-configs/make_config.sh

 

#!/bin/bash

# First argument: Client identifier

KEY_DIR=~/openvpn-ca/keys
OUTPUT_DIR=~/client-configs/files
BASE_CONFIG=~/client-configs/base.conf

cat ${BASE_CONFIG} \
    <(echo -e '<ca>') \
    ${KEY_DIR}/ca.crt \
    <(echo -e '</ca>\n<cert>') \
    ${KEY_DIR}/${1}.crt \
    <(echo -e '</cert>\n<key>') \
    ${KEY_DIR}/${1}.key \
    <(echo -e '</key>\n<tls-auth>') \
    ${KEY_DIR}/ta.key \
    <(echo -e '</tls-auth>') \
    > ${OUTPUT_DIR}/${1}.ovpn

base.conf für Client Konfig

 

client
dev tun
proto udp
resolv-retry infinite
nobind
user nobody
group nogroup
persist-key
persist-tun
remote-cert-tls server
cipher AES-128-CBC
auth SHA256
comp-lzo
key-direction 1
verb 3

 

Statische Route auf IB

10.8.0.0 > 255.255.255.0 > OpenVPNServerIP

 

Portforwarding 

Eingangsort 1194 weiterleiten auf OpenVPN Server

So ich denke das ist alles. Sonst reiche ich es nach.

 

Danke nochmals für die Hilfe

 

Freundliche Grüsse

zer0g

22 Kommentare 22
P.May
Level 3
2 von 23

Hallo zerg0

 

Ich kann dir nur die Logik aufzeigen, umsetzen auf iptables musst du dann übernehmen.

Welche Port man weiterleiten musst für VPN bei einem Doppel Nat muss ich auch zuerst nachschauen, aber Google weiss alles.

 

Bei mir habe ich die Subnetze auf 255.255.255.0 gesetzt.

 

IB = Swisscom Internet Box  IP = 192.168.1.1

Wan1 von der IB  IP = öffentliche IP Adresse

Lan1 von der IB   IP Range DHCP = 192.168.1.100 bis 192.168.1.200

 

FW = deine Firewall  IP = 192.168.2.1

Wan2 von der FW      IP = IP von Lan1 (muss aber immer die gleiche sein, wegen Port Weiterleitung an deine FW)

Lan2 von der FW       IP Range DHCP = 192.168.2.100 bis 192.168.2.200

 

VPN für die Geräte   IP Range DHCP = 192.168.3.100 bis 192.168.3.200

 

Die IP Range dürfen nicht dieselben sein, ansonsten funktioniert das Routing nicht.

 

Ich hoffe ich konnte dir soweit helfen, habe jetzt nicht alles ins kleinste Detail beschrieben, denke du weisst jetzt wie.

 

Gruss

Peter

 

 

zerg0
Level 1
3 von 23

Hallo Peter,

 

danke für die Antwort. Das Netzwerk auf verschiedene Subnetze aufteilen, daran hab ich auch schon gedacht. Allerdings hab ich nach einer möglichkeit gesucht dies direkt auf der Swisscom Box zu machen und wollte zuerst nicht auf ein Externes Gerät zurückgreifen. 

Aber ist der Gedanke korrekt, dass nur der VPN Port an das WAN2 der Firewall weitergeleitet werden muss und keine Remotesteuerungsprotokolle etc. Diese werden intern gehandhabt?

 

Mit meinen IPtables wollte ich das Routing ursprünglich vom internen Netz 192.168.1.x nach 10.8.0.y routen. Welches sich um das VPN Netz handelt.

Wieso muss dann noch ein weiteres Subnetz erstellen?

Grüsse

zer0g

 

P.May
Level 3
4 von 23
Hallo zerg0,
Ich betreibe bei mir zu Hause die ZyWall USG 110 und hatte vorher noch den Cento Grande im Einsatz. Da hatte die Firewall noch eine öffentliche IP.
Dann hatte ich aus blödheit die neuste Firmware installiert und es hat mir meine Konfiguration zerschossen.
Jetzt habe ich die IB2 und warte noch auf die Firmware 4.25 mit mindestens Patch 2 und dann werde ich alles wieder so einrichten wie ich das will. Alles angefangen hat es weil ich die AP's von Zyxell über die Firewall konfigurieren wollte.
Hat dann leider mit dieser Version nicht funktioniert obwohl freigegeben, naja patch abwarten.
Jetzt warte ich direkt auf die 4.25
Zu deiner Frage, welche Port es braucht, muss ich auch zuerst nachschauen, denn ich Betreibe dies auch nur in meiner Freizeit.
Mal schauen ob ich am Wochenende Zeit habe.
Die IB2 und ihre Einstellungen, sehr beschränkt.
Also ich denke wenn man selber eine VPN Lösung einsetzen will, kommt man nicht ohne zusätzliches Gerät aus.
Gruss
Peter
zerg0
Level 1
5 von 23

Hallo Peter, 

 

danke für den Input. Wenn das so ist schau ich mir mal die Konfiguration mit der ASA5505 an die müsst ich irgendwo noch rumligen haben. Hoffentlicht mit gig ports. 

Ansonsten such ich nach einer weiteren Netzwerkkarte für meinen Desktop PC auf welchem momentan der VPN Server läuft. Und konfiguriere darauf das nötige. Sollte ja auch klappen. 

Leider werde ich vor dem Wochenende kaum dazu kommen.

 

Danke für die Hilfe. Ich Informiere dich über den Stand sobald wie möglich.

 

Grüsse

zer0g

Tux0ne
Level 9
6 von 23

Also wenn der ssh Server und der openvpn Server die gleiche Maschine ist, braucht es von Seite Openvpn und Router keine weitere Konfiguration.

Daher wird vermutlich dein Setup einen Fehler haben.

Ich würde mich an das openvpn Wiki von Ubuntuusers halten. Da ist auch nochmals genauer beschrieben das für eine weitergehende Konfiguration in diesem Fall noch eine Route auf der Internet-Box (Im Wiki Fritzbox) erstellt werden muss.

Das wäre aber in diesem einfachen Fall aber gar nicht nötig.

 

 

https://wiki.ubuntuusers.de/OpenVPN/

 

Jeder ist beim Provider den er verdient
Jeder ist beim Provider den er verdient
zerg0
Level 1
7 von 23

Hallo TuxOne,

 

danke für deine Antwort. Ich habe mich bei der Installation und konfiguration des OpenVPN Server an die Anleitung des Ubunutu Forums gehalten. 

 

Der ssh Server und der OpenVPN Server sind die selben. Doch es existieren noch weitere nicht Unix Systeme im Netzwerk welche über eine Remoteverbindung erreicht werden sollten. Vorzugsweise über RDP. Windows.

 

Beide Verbindungen funktionieren, wenn ich mich im Netzwerk befinde, daher die Frage wo die Ports geöffnet werden müssen, dass die Reotesteuerung auch vom VPN Netzwerk aus funktioniert.

 

Grüsse

zer0g

Tux0ne
Level 9
8 von 23

Das ist abhängig wie deine Maschinen konfiguriert sind. Ist auf diesen ebenfalls eine Firewall aktiv so muss diese auch angepasst werden damit diese Verbindungen aus dem VPN Netz erlauben.

Bei mir zB. ist auf dem NAS eine Firewall aktiv. Explizit habe ich hier das VPN Netz erlaubt.

Nebenbei habe ich zB. noch ein arm Serverli ohne aktives iptables. Hier sind die Regeln nur auf der Firewall definiert da diese Maschine so oder so eine dezidierte Schnittstelle zur Firewall hat.

In deinem Fall so wie ich sehe können also nur die Firewall auf dem Server und eventuell auf den Clients eine Rolle spielen.

 

Du kannst ja iptables mal kurzfristig deaktivieren um zu schauen wo das Problem ist.

Als Hilfe dünkt mich diese Seite nicht schlecht: https://parabing.com/2014/06/openvpn-on-ubuntu/

Da hast du die iptables Regeln auf dem vpn Server schön dargestellt.

+ das IP Routing auf dem VPN Server muss aktiviert sein

+ eine statische Route auf der Fritzbox erstellen: 10.8.0.0 255.255.255.0 > 192.168.0.10 wenn die IP's in deinem Netz wirklich so aufgebaut sind.

Jeder ist beim Provider den er verdient
Jeder ist beim Provider den er verdient
zerg0
Level 1
9 von 23

Hi,

 

Die statischen routen sind eingerichten auf das VPN Netz. Dennoch klappt es nicht. Die ufw firewall von Ubuntu hab ich ausgeschaltet und getestet um auf Firewallprobleme zu untersuchen trotztdem klappt es nicht. 

Daher der Gedanke bei der Swisscom Firewall welche die Ports blockt, auch wenn es aus meiner Sicht keinen Sinn ergibt, dass Swisscom die Ports blockt. 

 

Ich werde bei gelegenheit mal die Option von Peter mit verschiedenen Netzwerken Testen und mit einem zusätzlichen Gerät welches den VPN Tunnel eröffnet. 

 

Ansonsten wechsle ich auf die Internetbox 2 welche VPN als Dienst mitliefert. 

 

Grüsse und schönen Abend

zer0g

Tux0ne
Level 9
10 von 23

Uh wenn ich das Wort ib2 und "VPN" schon lese muss ich da fast noch etwas Energie investieren um das zu verhindern. Pfuiiii.

 

Also. Klar ist die Verwaltung auf einem Gerät, einer Firewall viel einfacher. Ob das eine A(N)SA, Zyxel, pfsense oder whuat ever ist soll mal hier keine Rolle spielen.

Aber auch die Konfig auf einem separaten Server ist machbar.

In deiner Grafik und dem geschriebenen hat es doch eine Diskrepanz. Dem kann man aber auf die Schliche kommen. Man braucht hier nur einige Angaben von dir. Diese kannst du hier posten.

 

  • ifconfig Ausgabe des VPN Servers
  • die /etc/openvpn/server.conf
  • die /etc/sysctl.conf bzw. den Part mit net.ipv4.ip_forward=1 ausdokumentiert also ohne #
  • die /etc/ufw/before.rules
  • ein sudo ufw status verbose
  • und die statische Route in der Internet Box
Jeder ist beim Provider den er verdient
Jeder ist beim Provider den er verdient
P.May
Level 3
11 von 23

Hallo

So, habe mal meine Firewall auf Firmware 4.20 Patch 2 gepatcht.

Und habe mal wieder das Log angeschaut (Firewall ist ja in der DMZ von der IB2) hui was sehe ich da😳? Bild folgt dann.

Also das versteht Swisscom also unter DMZ 😀

Zum Glück entwickelt Swisscom keine Firewall 😂😂😂

Sorry Swisscom, konnte nicht mehr.

Aber ok, gut für mich, so muss ich mir keine gedanken mehr machen welche Port ich öffnen muss🙂

@Tux0ne ich habe schon viele Beiträge von dir gelesen, welche mir sehr geholfen haben. 

Vielen Dank

 

P.May
Level 3
12 von 23

Firewall LogFirewall Log

 

zerg0
Level 1
13 von 23

Danke für die Unterstüzung, 

 

Das Log und die Konfiguration des OpenVPN kann ich momentan nicht liefern, da ich vorübergehend nicht Zuhause bin. Ich werde diese Bestenfalls am kommenden Samstag nachreichen. 

 

P.May

Ich sehe schon, dass ich mich noch zusätzlich über die Sicherheit Informieren muss befor ich wirklich das VPN Netz in Betrieb nehme. Da sind wohl einige SkriptKiddies unterwegs..

 

Bis bald und schönes neues Jahr.

Grüsse

zer0g

Tux0ne
Level 9
14 von 23

Easy das Forum läuft nicht davon.

 

Ich versuche in der Zwischenzeit noch die nomadische IPv6 Nutzung von unterwegs.

Der Entwickler oder ich sind noch am üben 🙂

https://twitter.com/Tux0ne/status/815544873243840512?lang=de

 

Jeder ist beim Provider den er verdient
Jeder ist beim Provider den er verdient
zerg0
Level 1
15 von 23
Hallo Zusammen Da die Formatierung hier nicht gerade der Wahnsinn ist, hab ich es in ein txt gespeichert und auf einem drive freigegeben. https://drive.google.com/open?id=0B0LpmbRFT9HscEdENkZiZ3J6N2M als statische route auf der Swisscom Box ist folgendes eingetragen. 10.8.0.0 > 255.255.255.0 > black (192.168.1.123) Grüsse zer0g
zerg0
Level 1
16 von 23

Hab noch einen Fehler in der Konfig entdeckt, welchen ich heute Abend anpassen werde. 

 

ufw befor.rules

 

das interface ish flasch emp0s25 > enp0s25

zerg0
Level 1
17 von 23

Der Fehler in der Konfig von der Ubuntu Firewall war nicht ausschlaggebend dafür, dass es nicht funktioniert hat sondern ein überlegungsfehler von mir. 

Hab in der Client Konfig nun mal die öffentliche IPAddresse der Internetbox eingertragen und siehe da es funktioniert.. 

Nun ergibts sich hier eine neue Frage und zwar ob diese öffentliche IP Adresse statisch oder dynamisch ist. 

Wenn sie dynamisch ist, kann ich dan den DynDNS Namen der IB in der Konfig des OpenVPN clients angeben sodass ich nicht immer die IP-Adresse anpassen muss?

Danke für die Hilfe

 

Grüsse

zer0g

zerg0
Level 1
18 von 23
DynDNS Name der IB lässt sich problemlos in der Client Konfig verwenden
Tux0ne
Level 9
19 von 23
Mit deiner dynamischen IP ist es immer besser mit DDNS zu arbeiten.
Bin froh das es nun funktioniert. Die Konfig durchzugehen wäre etwas aufwändig gewesen. Dazu bin ich nicht gekommen. Zumal der Fehler ja in der Client Konfig war welche bisher nicht mal verlangt wurde...
Austanzen ist jeweils auch eine oftmals bewährte Lösung 😉
Jeder ist beim Provider den er verdient
Jeder ist beim Provider den er verdient
zerg0
Level 1
20 von 23

Da bin ich auch froh 🙂
Werde die konfig wohl noch genau reinschreiben als Lösung für künftige mal schauen wann ich dazu komme.

 

Schönen Abend miteinander.

 

Grüsse

zer0g

Nach oben