lookout -
Ok lookout - here goes…
-
Make sure you use masquerade for the private network in /ip firewall nat like so;
src-addr=put_your_local_network_IP_block_here out-interface=Internet_interface action=masq
-
Firewalling - this is a short excerpt from an article by Dmitry (which you should look up and familarize yourself with…)
/ ip firewall address-list
add list=illegal-addr address=0.0.0.0/8 comment=“illegal addresses”
add list=illegal-addr address=127.0.0.0/8
add list=illegal-addr address=224.0.0.0/3
/ ip firewall filter
add chain=forward in-interface=Local out-interface=Local action=accept comment=“Allow traffic between local computers”
add chain=sanity-check protocol=tcp psd=20,3s,3,1 action=add-src-to-address-list address-list=blocked-addr address-list-timeout=1d comment=“Block port scans”
add chain=sanity-check protocol=tcp tcp-flags=fin,psh,urg,!syn,!rst,!ack action=add-src-to-address-list address-list=blocked-addr address-list-timeout=1d comment=“Block TCP Null scan”
add chain=sanity-check protocol=tcp tcp-flags=!fin,!syn,!rst,!psh,!ack,!urg action=add-src-to-address-list address-list=blocked-addr address-list-timeout=1d comment=“Block TCP Xmas scan”
add chain=sanity-check protocol=tcp src-address-list=blocked-addr action=jump jump-target=drop
add chain=sanity-check protocol=tcp tcp-flags=rst action=jump jump-target=drop comment=“Drop TCP RST”
add chain=sanity-check protocol=tcp tcp-flags=fin,syn action=jump jump-target=drop comment=“Drop TCP SYN+FIN”
add chain=sanity-check connection-state=invalid action=jump jump-target=drop comment=“Dropping invalid connections at once”
add chain=sanity-check connection-state=established action=accept comment=“Accepting already established connections”
add chain=sanity-check connection-state=related action=accept comment=“Also accepting related connections”
add chain=sanity-check in-interface=Local dst-address-list=illegal-addr dst-address-type=!PUT_YOUR_LOCAL_NETWORK_IP_BLOCK_HERE action=jump jump-target=drop comment=“Drop illegal destination addresses”
add chain=sanity-check in-interface=Local src-address=!PUT_YOUR_LOCAL_NETWORK_IP_BLOCK_HERE action=jump jump-target=drop comment=“Drop everything that goes from local interface but not from local address”
add chain=sanity-check in-interface=Public src-address-list=illegal-addr action=jump jump-target=drop comment=“Drop illegal source addresses”
add chain=sanity-check in-interface=Public dst-address=!PUT_YOUR_LOCAL_NETWORK_IP_BLOCK_HERE action=jump jump-target=drop comment=“Drop everything that goes from public interface but not to local address”
R/
Thom