Mikrotik Port Weiterleitung

Hallo Zusammen,

habe folgende Situation: Möchte gerne von aussen auf meinen Smarthome Server zugreifen können der hinter einem Mikrotik RB951G hängt. Es dient rein als Testzweck für mich.

Möchte gerne eine Portweiterleitung erstellen dafür. Benötige TCP und UDP Port 8090. Die Interne IP ist 192.168.1.103. Schaffe es trotz Anleitung nicht die Weiterleitung einzurichten.

Gruss
azo

Hallo @azo1991,

neben dem Portforwarding (Destination NAT) musst du die Verbindung auch in der Firewall zulassen, für dein Beispiel (dst-address=x.x.x.x auf deine WAN IP ändern oder weglassen (und in interface angeben)):
/ip firewall filter
add action=accept chain=forward dst-address=192.168.1.103 dst-port=8090 protocol=tcp
/ip firewall nat
add action=dst-nat chain=dstnat dst-address=x.x.x.x dst-port=8090 protocol=tcp to-addresses=192.168.1.103

(darauf achten das die Regeln am Ende eingefügt werden, in der Firewall muss diese also vermutlich “nach oben verschoben” werden)

Grüße,
Steve


Hi Steve,

anbei 2 Screens von meiner Firewall. Wie wo was muss ich machen. Habe die Firewall konfiguriert lt. Tutorial Pascom Firewall 3 Youtube.

gruss
azo

Zur Info seid einer der letzten Versionen gibt es auch die option “Connection NAT State dstnat”

/ip firewall filter
add action=accept chain=forward connection-nat-state=dstnat

somit kann man alle port forwarding geschichten in einer Regel abgreifen sofern man dies möchte.

Gruß
David

Hi David,

erstmal danke für die Antwort.
Kannst Du mir noch schnell erklären, wie ich dann in dieser Firewall Regel die Ports eintragen kann. Einfach wie gehabt bei Dst. Port? Oder funktioniert dies auch wieder anderst.

Muss ich nun auch eine IP Adresse zu dem Port eintragen oder recht ein Port für alle Adressen?

Gruss
azo

entschuldige die verspätete Antwort.

Die eigentliche Portweiterleitung passiert dann unter Firewall Nat Hier ein Beispiel für TCP Port 987 am pppoe interface des ISP1 mit weiterleitung zum Mailserver mit der IP 192.168.123.123 auf den selben port 987 tcp

/ip firewall nat
add action=dst-nat chain=dstnat dst-port=987 in-interface=pppoe-ISP1 protocol=tcp to-addresses=192.168.123.123 to-ports=987

in der winbox findest du den großteil unter General und unter action dann nicht die To Addresses und den Port vergessen.

Ich hoffe ich konnte weiterhelfen

Gruß

David

Hi zusammen,

vielen Dank für die schnellen Antworten.
Spät aber doch komm ich wieder ins Netz - durch das “Schneechaos” war ich von der Aussenwelt abgeschnitten.

Hat alles funktioniert. Vielen Dank!

gruss
azo

Nun muss ich nochmals genau nachfragen.
Ich habe nun bei meinem Routerboard unter Firewall -> NAT -> die Einstellung:

Chain: dstnat
Protocol: TCP
Dst. Port: 8291
Int. interface: All Ethernet

Dann unter dem Reiter “Action” auf dst.nat gestellt und bei dem Punkt “To Adress” die IP von meinem PC eingestellt sowie das Port ausgewählt auf 8291.

Was muss ich nun bei Filter Rules noch genau machen? Denn der Port bleibt nach wie vor geschlossen ;-(

Gruss
azo1991

Hallo,
Portforwarding funkt bei mir soweit OK. Nun stehe ich aber vor dem großen Problem einen Port (SRC) Bsp. 60200 auf einen Server intern auf Port 80 weiterzuleiten.
Irgendwie klappt das bei mir nicht so wie mans vermutet (Winbox im NAT im General-Tab Dst.Port auf 60200 und im Action-Tab toPorts auf 80

Hat von Euch schon wer die Erfahrung mit wechselnden Ports gemacht?
Für jede Hilfe dankbar (glaub, das kann nicht so eine Schwierigkeit sein und machbar sollte es auch sein, Dlink und Netgear und Konsorten könnens auch im EasyMode)

Danke und lg aus Wien
DaJoe

Hallo @DaJoe,

die NAT Regel würde beispielsweise so aussehen:
/ip firewall nat
add action=dst-nat chain=dstnat comment="1.1.1.1:60200 -> 192.168.1.5:80 (webserver via tcp 60200 von extern)" dst-address=1.1.1.1 dst-port=60200 protocol=tcp to-addresses=192.168.1.5 to-ports=80

Bei der Filterregel muss als Ziel die Destination nach dem NAT angegeben werden (auch wenn @azo1991 Frage schon eine Weile zurück liegt):
/ip firewall filter
add action=accept chain=forward comment="allow 192.168.1.5 webserver from external" dst-address=192.168.1.5 dst-port=80 protocol=tcp

Hoffe das hilft weiter, Grüße
Steve

Steve Ich sage herzlichen Dank für die schnelle und hilfreiche Antwort!

Ich hab zwar eine allgemeine Chain-Forward Rule gesetzt gehabt, aber nicht explizit auf die DST-IP

Heureka es funktioniert :slight_smile:
Bist mein Retter des Tages
Dankeschön
Lg
DaJoe

ich weiß der Thread ist schon älter aber ich hoffe ihr könnt mir helfen.

ich bin von einer pfsense zu mikrotik HEX S umgestiegen. Ich betreibe verschiedene Webserver die über den nginx proxy geleitet werden. Nun schaffe ich es nicht die Firewall Regel und das Natting einzurichten. Natürlich funktionierte das bei der pfsense klaglos und easy. Der Versuch das auf den Mikrotik zu übertragen schlägt fehl.

[andre@MikroTik] > /ip firewall filter print
Flags: X - disabled, I - invalid; D - dynamic 
 0  D ;;; special dummy rule to show fasttrack counters
      chain=forward action=passthrough 

 1    ;;; Rule #0 "Trusted": allow established, related and untracked connection>
      chain=input action=accept connection-state=established,related,untracked 
      log=no log-prefix="" 

 2    chain=forward action=accept connection-nat-state=dstnat 

 3    ;;; Rule #1 "Drop Invalid Packet": drop packets connection state: invalid.
      chain=input action=drop connection-state=invalid log=no log-prefix="" 

 4    ;;; Rule #3 "ICMP": accept icmp packets
      chain=input action=accept protocol=icmp log=no log-prefix="" 

 5    ;;; Rule #5 "Block TCP port scanning": add a device scanning an unused por>
o BlackList.
      chain=input action=add-src-to-address-list connection-state=new 
      protocol=tcp address-list=BlackList address-list-timeout=12h 
      in-interface-list=WAN 
      dst-port=20-25,80,110,161,443,445,3128,3306,3333,3389,7547,8291,8080-8082 

 6 X  ;;; Rule #10 "Winbox": accept Winbox port connections.
      chain=input action=accept protocol=tcp in-interface-list=LAN dst-port=8291 
      log=no log-prefix="" 

 7 X  ;;; defconf: drop invalid
      chain=input action=drop connection-state=invalid log=no log-prefix="" 

 8    ;;; defconf: accept to local loopback (for CAPsMAN)
      chain=input action=accept dst-address=127.0.0.1 

 9    ;;; defconf: fasttrack
      chain=forward action=fasttrack-connection hw-offload=yes 
      connection-state=established,related log=no log-prefix="" 

10    ;;; defconf: accept established,related, untracked
      chain=forward action=accept connection-state=established,related,untracked 
      log=no log-prefix="" 

11    ;;; defconf: drop invalid
      chain=forward action=drop connection-state=invalid 

12    ;;; drop all from WAN but not DSTNATed
      chain=forward action=drop connection-state=new 
      connection-nat-state=!dstnat in-interface-list=WAN log=no log-prefix="" 

13 X  ;;; Accept Wireguard
      chain=input action=accept protocol=udp dst-port=51821 log=yes 
      log-prefix="WG:" 

14    ;;; Chain: Input. Rule #15 "Drop All": drop_all packets that do not meet the>
rly conditions, except from trusted interfaces.
      chain=input action=drop in-interface-list=!LAN log=no log-prefix="" 
[andre@MikroTik] > /ip firewall nat print
Flags: X - disabled, I - invalid; D - dynamic 
 0    ;;; defconf: masquerade
      chain=srcnat action=masquerade src-address=192.168.107.0/24 out-interface-list=WAN log=no log-prefix="" 

 1 X  chain=dstnat action=dst-nat to-addresses=192.168.107.200 to-ports=443 protocol=tcp dst-port=443 log=no 
      log-prefix=""

so sieht es bei der pfsense aus:

also vom WAN kommend muss port 80 und 443 an die IP 192.168.107.200 mit den gleichen ports weitergeleitet werden.

Wer kann mir das bitte erklären. 1000 Dank!

Hi,

deine Filterregeln sehen soweit gut aus, nur die dstnat-Regel 1 ist mit X gekennzeichnet, also “disabled”. Könnte das schon die Ursache sein?

Gruß,
Rapha

die dstnat-Regel ist disabled weil wenn sie enabled ist gibt es kein Internet mehr und natürlich wird auch nicht wie gewünscht an den reverseProxy weitergeleitet. Darum habe ich sie wieder disabled.

hat jemand bitte noch Tipp?