mabue88
Goto Top

Zugriff auf Geräte hinter pfSense durch WAN-Port

Hallo,

ich hatte folgenden Aufbau geplant:

- Internet und Telefonie per Kabel von Kabel BW (mit Fritzbox 6490)
- Netzwerkverwaltung mittels pfSense auf Alix-Board
- mehrere VLANs, ein VLAN speziell für IP Telefonie
- in diesem VLAN läuft ein Asterisk-Server und die IP-Telefone (anderer IP-Bereich als der der Fritzbox)

In der Fritzbox habe ich für jede (externe) Rufnummer ein IP-Telefon angelegt.
Über diese IP-Telefone hat sich Asterisk auf der Fritzbox angemeldet. Das funktionierte noch.
Allerdings kam bei Asterisk nie ein Gespräch von Extern an.
Um zu testen, ob das mit dem unterschiedlichen IP-Bereich von Fritzbox und Asterisk zusammen hängt habe ich den Asterisk-Server direkt an die Fritzbox (ohne pfSense & VLAN) gehängt. Externe Anrufe kamen sofort in Asterisk an.

Mein Problem ist jetzt, dass die vorhandenen IP-Telefone aufgrund der Struktur des Netzwerkes definitiv nur per VLAN hinter pfSense betrieben werden können.

Da Asterisk auch mit IP-Telefone klarkommt, die in einem anderen IP-Bereich als der Server liegen, könnte ich mir vorstellen, den Asterisk-Server auch zukünftig direkt im Netz der Fritzbox zu betreiben.
Der Knackpunkt dabei ist, dass ich pfSense dazu bekommen muss, dass der Asterisk-Server, welcher im Fritzbox-Netzwerk hängt (aus Sicht von pfSense ist es das WAN), auf das Telefonie-VLAN hinter pfSense zugreifen kann.

Kann mir jemand spontan sagen, ob das möglich ist und falls ja, was ich bei der Firewall einstellen muss?


Hier noch der prinzipielle Aufbau:
d2674c222da6405cc1eef075d0046965

Danke & Gruss
mabue

Content-ID: 284390

Url: https://administrator.de/contentid/284390

Ausgedruckt am: 08.11.2024 um 21:11 Uhr

122990
122990 01.10.2015 aktualisiert um 20:46:36 Uhr
Goto Top
Moin,
macht deine PFSense NAT auf dem WAN zur Fritte ? Wenn ja, Outbound-NAT Rules auf der PFSense deaktivieren und auf der Fritte statische Routen zu den Subnetzen hinter der PFSense anlegen, dann klappt auch VOIP hinter der PFSense, da keine weitere NAT Barriere den Traffic stört.

Siehe auch diesen Thread zu VoIP mit der PFSense
VoIP-Clients werden durch pfSense gehindert.

Gruß grexit
mabue88
mabue88 01.10.2015 aktualisiert um 21:45:21 Uhr
Goto Top
Hallo grexit,

im Bereich Outbound-NAT ist momentan Automatic outbound NAT rule generation (IPsec passthrough included) aktiviert.

Ich bin mir nicht sicher, ob das genau das ist, was ich brauche, aber ich habe mich an dieser Anleitung entlang gehantelt:
http://www.andysblog.de/pfsense-11-nat-erstellen

Ist das soweit richtig?
mrtux
mrtux 01.10.2015 um 23:30:05 Uhr
Goto Top
Hi!

Also Du musst die notwendigen Ports durch das NAT der PfSense an die SIP Telefone forwarden oder Du arbeitest ohne NAT oder Du setzt den Asterisk hinter die Pfsense....

mrtux
122990
122990 02.10.2015 aktualisiert um 09:26:54 Uhr
Goto Top
Zitat von @mabue88:
Ist das soweit richtig?
Nein. Mach es am besten ohne doppeltes NAT. Also auf "manual outbound" stellen und die lokalen Subnetze dort rausnehmen.
Dann wie oben geschrieben die statischen Routen zu den Subnetzen auf der Fritzbox eintragen und die allseits bekannten SIP Ports für IP Telefonie auf der Firewall freischalten.
Fertsch.
aqui
aqui 02.10.2015 aktualisiert um 09:57:20 Uhr
Goto Top
dass der Asterisk-Server, welcher im Fritzbox-Netzwerk hängt (aus Sicht von pfSense ist es das WAN), auf das Telefonie-VLAN hinter pfSense zugreifen kann.
Wo ist das Problem ? Mit 1:1 NAT und den entsprechenden Regeln auf dem WAN Port ist das doch in 5 Minuten gelöst.
mabue88
mabue88 13.10.2015, aktualisiert am 22.10.2015 um 15:49:09 Uhr
Goto Top
Hallo Zusammen,

leider bekomme ich es nicht hin.

Der Einfachheit wegen, habe ich den Aufbau nochmal etwas abgeändert.
Der Asterisk-Server läuft nun hinter pfSense und ist mit den IP-Telefonen in einem VLAN.


Folgendes habe ich bislang gemacht:

- Virtuelle IP erstellt:
Type: IP Alias
Interface: WAN
IP Address(es): 192.168.178.21

- 1:1 NAT erstellt:
Interface: WAN
External subnet IP: 192.168.178.21
Internal IP: Single host/192.168.100.1
Destination: any

- Firewall Rule für WAN-Interface erstellt:
Action: Pass
Interface: WAN
TCP/IP Version: IPv4
Protocol: any
Source: any
Destination: Single host or alias/192.168.100.1

Für den Test habe ich im Netz der Fritzbox einen Rechner (IP: 192.168.178.22). Ein Ping an die eingerichtete virtuelle IP 192.168.178.21 ergibt nur Destination Host unreachable.
Ein SSH-Verbindungsversuch scheitert ebenfalls.

Kann mir jemand helfen das zum Laufen zu bekommen?
Habe ich etwas falsch eingestellt oder etwas vergessen einzustellen?


Vielen Dank!
mabue88
mabue88 16.10.2015 um 09:40:58 Uhr
Goto Top
Hallo,

gestern Abend habe ich nochmal ein bisschen mit der virtuellen IP herumprobiert. Dabei ist mir folgendes aufgefallen:

Kurz nachdem ich die virtuelle IP in pfSense eingerichtet habe, erscheint diese bei der Fritzbox in der Liste der aktiven Geräte mit der MAC-Adresse des physikalischen Ports des Alix-Boards, auf dem pfSense läuft. Die eigentliche IP-Adresse, die dem physikalischen Port zuvor vom DHCP der Fritzbox zugewiesen wurde wird dabei aber nicht in der Liste angezeigt.
Kurze Zeit später erscheint in der genannten Liste der Fritzbox die IP-Adresse, die dem physikalischen Port des Alix-Boards vom DHCP zugewiesen wurde. Die virtuelle IP erscheint dann aber nicht mehr.
Sprich: es wird entweder die "reale" oder die virtuelle IP-Adresse von pfSense bei der Fritzbox angezeigt, niemals beide gleichzeitig.

Ist es möglich, dass die Fritzbox mit mehreren IP-Adressen, welche der gleichen MAC-Adresse zuzuordnen sind, nicht klar kommt?

Danke.
aqui
aqui 19.10.2015 aktualisiert um 19:49:11 Uhr
Goto Top
erscheint diese bei der Fritzbox in der Liste der aktiven Geräte mit der MAC-Adresse des physikalischen Ports des Alix-Boards, auf dem pfSense läuft.
Das ist auch normal, denn diese IP ist quasi eine secondary ip zur Primär IP auf dem physischen Port.
Nur warum nutzt du hier eine Alias IP und nicht die physische IP des WAN Interfaces. Ein Alias ist doch vollkommen überflüssig !
Vergiss das und nimm die physische IP und richte dafür ein Port Forwarding ein, dann klappt das auch !
die dem physikalischen Port zuvor vom DHCP der Fritzbox zugewiesen wurde
Da sist generell schlecht ! Routern sollte man niemals dynamische IPs zuweisen !! Ändert sich diese IP mal dann geht dein Port Forwarding ins Leere. Also immer statische IPs.
Ausnamhe ist wenn du der Fritzbox die Mac Adresse der pfSense eingragen hast damit der immer auf Basis der Mac eine feste IP vergibt (Nailing) das geht dann.
Ist es möglich, dass die Fritzbox mit mehreren IP-Adressen, welche der gleichen MAC-Adresse zuzuordnen sind, nicht klar kommt?
Ja, davon ist auszugehen. Die Verwendung eines Alias ist auch Unsinn und muss nicht sein in diesem Umfeld.

Nochwas: Bitte keine externen Bilderlinks hier im Forum ! Dir kann nicht entgangen sein das es hier eine wunderbare Upload Funktion gibt !
Editiere deinen Originalthread, dann siehst du das. Bild hochladen, den Bilder Link dann per Rechtsklick und cut and paste sichern und in die Antwort bringen.
Schafft eigentlich auch Klein Fritzchen sofort...
mabue88
mabue88 22.10.2015 um 16:00:17 Uhr
Goto Top
Hallo aqui,

danke für deine Hilfe. Mit dem Port Forwarding registriert sich Asterisk jetzt korrekt an der Fritzbox.
Zumindest sieht es so aus, wenn ich "sip show registry" ausführe:

Host                                    dnsmgr Username       Refresh State                Reg.Time
192.168.178.1:5060                      N      624                285 Registered           Thu, 22 Oct 2015 15:51:39
192.168.178.1:5060                      N      623                285 Registered           Thu, 22 Oct 2015 15:51:39
192.168.178.1:5060                      N      622                285 Registered           Thu, 22 Oct 2015 15:51:39
192.168.178.1:5060                      N      621                285 Registered           Thu, 22 Oct 2015 15:51:39
4 SIP registrations.

Also grundsätzlich bin ich schon mal etwas weiter.

Die Registrierung in der sip.conf sieht so aus:
register=>621:passwort@192.168.178.1/21
register=>622:passwort@192.168.178.1/22
register=>623:passwort@192.168.178.1/23
register=>624:passwort@192.168.178.1/24

Wie zu erkennen ist, will ich bei intern Gesprächen mit den Nummern 21 bis 24 arbeiten.

Dementsprechend der Eintrag für das Gerät mit der Nummer 21 in der sip.conf:
[21]
callerid=Telefon 1 <21>
host=dynamic
permit=192.168.100.0/255.255.255.0
username=21
secret=ip_phone_password
type=friend
allow=gsm
allow=alaw
qualify=yes

Und der dazugehörige Eintrag der extensions.conf (bis jetzt nur mal inbound):
exten=>21,1,Dial(SIP/21)

Das IP-Telefon mit der Nummer 21 meldet sich erfolgreich an Asterisk an.
Allerdings werden die Anrufe, welche von extern kommen, nicht an das Telefon mit der Nummer 21 durchgereicht.
Auch wenn der Debug-Modus in der Asterisk-CLI aktiviert ist, erscheint keine Ausgabe, welche auf einen eingehenden Anruf deutet.

Weiss jemand an was das liegt?

Danke
aqui
aqui 22.10.2015 um 19:13:39 Uhr
Goto Top
Allerdings werden die Anrufe, welche von extern kommen, nicht an das Telefon mit der Nummer 21 durchgereicht.
Das ist gut möglich. RTP nutzt dynmaische Ports. Du musst also vermutlich in der pfSense eine Port range eröffnen damit die RTP Flows passieren können.
Lies bitte dazu mal die folgenden Links:
http://www.godo.ch/index.php/projekte/3-linux/16-isdn-voip-mit-fritzbox ...
FritzBox7490 hinter der pfsense für VOIP.
Fritzbox hinter pfsense VOIP Probleme
http://www.3cx.com/blog/voip-howto/pfsense-firewall/
mrtux
mrtux 23.10.2015 aktualisiert um 16:49:42 Uhr
Goto Top
Hi!

Ja, die RTP Pakete sollte man unbedingt forwarden, die transportieren aber eigentlich nur den reinen Audiostream der VoIP Telefonie. Die Rufsignalisierung (also das Klingeln des Telefons) erfolgt aber nicht über RTP und sollte daher auch ohne RTP-Forwards klappen, ansonsten ist da vermutlich noch was anderes faul...

mrtux
aqui
aqui 23.10.2015 um 13:40:22 Uhr
Goto Top
die transportieren aber eigentlich nur den SIP-Audiostream
Achtung FALSCH !
SIP ist ausschliesslich und einzig nur für den Verbindungsaufbau zuständig !! (auch das Klingeln, wobei das eine Systemfunktion ist wenn der SIP Aufbau erfolgreich war)
Der Voice Audiostream wird Punkt zu Punkt über die beiden Endgeräte immer per RTP realisiert !
mrtux
mrtux 23.10.2015, aktualisiert am 24.10.2015 um 00:15:40 Uhr
Goto Top
Hi!

Zitat von @aqui:
Der Voice Audiostream wird Punkt zu Punkt über die beiden Endgeräte immer per RTP realisiert !
Richtig! SIP = Registrierung und Signalisierung sowie RTP = Audiostream. Eigentlich habe ich ja nichts anderes oben geschrieben, wenn auch das ursprünglich von mir verwendete Wort SIP-Audiostream in dem Zusammenhang etwas unglücklich war und verwirrend scheint, ich meinte damit natürlich allgemein den Oberbegriff der VoIP Telefonie, also den Audiostream der VoIP-Telefonie. Ich habe das sicherheitshalber oben geändert.

Die reine Signalisierung (also das Klingeln des Telefons) in der Konfiguration des TOs sollte daher auch ohne den Forward der RTP Pakete funktionieren, auch wenn der Verbindungsaufbau des Audio-Streams dann fehlschlägt. Genau so habe ich das hier auch an meinem Asterisk in der Praxis beobachtet, nämlich dass die Telefone trotz fehlendem RTP-Forward klingeln und wenn man dann abhebt eben der Audiostream fehlt bzw. fehlen kann und man nur Stille in der "Leitung" hat. Aber im Falle des TO klingelt das besagte Telefone ja angeblich gar nicht, zumindest habe ich das so verstanden und daher vermute ich noch weitere Fehler in der Konfiguration des TO...Und nur darauf wollte ich mit meinem obigen Kommentar hinweisen.

mrtux
mabue88
mabue88 03.11.2015 um 12:20:11 Uhr
Goto Top
Hallo,
ich sitze gerade mal wieder an meinem Asterisk-Server hinter pfSense hinter Fritzbox.

Die ganzen NAT/Firewall-Einstellungen habe ich auf Basis des Tutorials auf Guide on How to Configure pfSense Firewall for Use With the 3CX Phone System erstellt.

Leider werden die Anrufe von der Fritzbox immer noch nicht an den Asterisk-Server weitergeleitet...
Bei der Fritzbox kommen die Anrufe definitiv an.

Müsste der Verbindungsaufbau über den Port 5060 nicht im System Log von pfSense aufgeführt sein?
Da ist nämlich nichts zu finden.
aqui
aqui 03.11.2015 aktualisiert um 12:31:45 Uhr
Goto Top
Leider werden die Anrufe von der Fritzbox immer noch nicht an den Asterisk-Server weitergeleitet...
Dann machst du noch irgendwas falsch an den FW Einstellungen !!!
Hast du mal "Scheunentor" versucht also alles freigegeben ?? Dann müsste es ja klappen und zeigt dir das du einen Fehler in der Regel konfiguriert hast !

Sinnvoll wäre es auch mal so einen Call am offenen Port mit einem Wireshark am Asterisk mitzuschneiden, damit due weist WAS ankommen muss damit es klappt.
Dann mit dem aktiven Firewall Port.
Hier siehst du dann sofort woran es liegt bzw. was die Firewall blockt und kannst in den regel Settings ganz einfach reagieren und das anpassen.
Damit hättest du das "Problem" schon lange gelöst !
Müsste der Verbindungsaufbau über den Port 5060 nicht im System Log von pfSense aufgeführt sein?
Nein warum ?? 5060 TCP ist ja SIP und kommunizieren tun ja die FB und der Asterisk direkt. DEREN IP Adressen stehen doch im SIP Paket und die FW leitet das nur weiter...je nachdem was ihrer Regeln ihr sagen. Aktiv nmmt die FW doch niemals an der SIP Kommunikation teil...wozu auch sie ist ja kein Voice Server oder sowas. Deshalb auch logischerweise kein Log.
Deshalb ja auch der Tip mit dem Wireshark am Asterisk Port !!