(1) The first obvious error is assigning your address to ether2 vice the bridge!
/ip address
add address=192.168.88.1/24 comment=defconf interface**=ether2** network=
192.168.88.0
Should be
/ip address
add address=192.168.88.1/24 comment=defconf interface**=bridge** network=
192.168.88.0
(2) Your input rules need work…
a. add action=accept chain=input comment=“WinBox Wan Administration” dst-port=8291
protocol=tcp
First I would put it it differently and modify the above line as follows: (Assuming your admin staff (you) need access to the router for various uses…, plus create a firewall source address list of the appropriate IPs = adminstaff
add action=accept chain=input in-interface-list=LAN comment=“WinBox Wan Administration” source-address-list=adminstaff
In this way you don’t need to tell the world in input rules what your winbox port number is…
Note1: Change your port from default to something else!!!
Note2: You can use winbox services to also minimize access
Note3: You can also use Users selection to minimize access to router.
b. I don’t see any way for users to access the router for DNS services. I think this may need to be included but hopefully better DNS experts than I can chime in.
add action=accept chain=input in-interface-list=LAN dst-port=53 protocol =tcp
add action=accept chain=input in-interface-list=LAN dst-port=53 protocol =ucp
c. Stop any further traffic to router by last input rule.
add action=drop chain=input comment=“All other traffic dropped”
(that way you can also get rid of this rule as its no longer required… add action=drop chain=input comment=“defconf: drop all not coming from LAN”
in-interface-list=!LAN )
- Your forward rules need work. Although correct I personally loathe, despise this one… Very confusing to understand.
add action=drop chain=forward comment=
“defconf: drop all from WAN not DSTNATed” connection-nat-state=!dstnat
connection-state=new in-interface-list=WAN
Much prefer breaking this out into two rules…
add action=accept chain=forward comment=
“Allow Port Forwarding - DSTNAT” connection-state=new connection-nat-state=dstnat
AND a LAST RULE
add action=drop chain=forward comment=“All other traffic dropped”
What this does is effectively stop all traffic you haven’t explicitly approved of, thus you may also need to add any lan to wan traffic, if permitted…
and place it before the last rule of course…
add action=accept chain=forward comment=“ENABLE LAN to WAN” in-interface=
Bridge out-interface=WAN
- NOW for NAT rules…
General format is…
add action=dst-nat chain=dstnat comment=PURPOSE/SERVER dst-port=xxxx
in-interface=WAN log=yes protocol=tcp to address=appropriate LANIP\
note1: If doing port translation, then the to port will also be required otherwise only destination port is required.
note2: If you have dual WAN then the in-interface-list=WAN probably applies
note3: Best is if you have a finite known list of external WANIP requiring access and if so then need to add
src-address-list=listofapprovedIPs
note4: adding a source address list to the NAT rule also makes the port in question not visible on scans (vice visible and closed otherwise).