IPv4-Firewall --VOIP auf SPH-- Restlichen Ports FORWARD

      IPv4-Firewall --VOIP auf SPH-- Restlichen Ports FORWARD

      Zunächst einmal ein fettes Dankeschön an die fleißigen Member dieses Boards !!!
      Ich habe gedacht, dass der SPH totaler Schrott ist, doch mit telnet-Zugang lässt sich doch noch einiges rauskitzeln.

      Ich wollte ein Setup haben, sodass ich einen weiteren Router hinter den SPH klemmen kann, VOIP soll jedoch weiterhin vom SPH verwaltet werden.
      Des weiteren benötigte ich die Prefix Deligation.


      Ich habe ein rudimentäres Setup auf meinem SPH aufgespielt:

      -Telnet-aktivieren
      -Enderungen-auf-USB-auslagern
      -SP-H-ohne-SIPPROXY

      -SP-H-IPv6-Prefix-Delegation(mit-Telekom-Adressen)

      /opt/bin/firwall-ipv4.sh:

      Quellcode

      1. #/bin/sh
      2. #address of SpeedPort Hybrid
      3. SPH_IP="192.168.1.1"
      4. #network of SpeedPort Hybrid
      5. SPH_NETWORK="192.168.1.0"
      6. #address of the router behind the SpeedPort Hybrid
      7. ROUTER_BEHIND_SPH_IP="192.168.1.3"
      8. #network of the router behind the SpeedPort Hybrid
      9. ROUTER_BEHIND_SPH_NETWORK="192.168.2.0"
      10. #address range which will be forwarded
      11. FORWARD_PORT_RANGE="1:1023"
      12. echo "Setze Policies"
      13. ipt iptables --flush
      14. ipt iptables --delete-chain
      15. ipt iptables -P INPUT DROP
      16. ipt iptables -P FORWARD ACCEPT
      17. ipt iptables -P OUTPUT ACCEPT
      18. echo "Grant Loopback"
      19. ipt iptables -A INPUT -i lo -j ACCEPT
      20. ipt iptables -A OUTPUT -o lo -j ACCEPT
      21. echo "Grant all what was opened from 'inside'"
      22. ipt iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
      23. echo "Grant internal traffic"
      24. ipt iptables -A INPUT -s $SPH_NETWORK/24 -j ACCEPT
      25. ipt iptables -A INPUT -s $ROUTER_BEHIND_SPH_NETWORK/24 -j ACCEPT
      26. echo "Drop missconfigured Windows-Machines"
      27. ipt iptables -A INPUT -d 169.254.0.0/16 -i br0 -j DROP
      28. ipt iptables -A INPUT -s 169.254.0.0/16 ! -i br0 -j DROP
      29. ipt iptables -A INPUT -s 127.0.0.0/8 ! -i br0 -j DROP
      30. echo "Allow VOIP"
      31. ipt iptables -A INPUT -i ppp256 -p igmp -j ACCEPT
      32. ipt iptables -A INPUT -i ppp256 -p udp -m udp --dport 5060 -j ACCEPT
      33. ipt iptables -A INPUT -i ppp256 -p udp -m udp --dport 5061 -j ACCEPT
      34. ipt iptables -A INPUT -i ppp256 -p udp -m udp --dport 7070:7089 -j ACCEPT
      35. ipt iptables -A INPUT -i gre+ -p udp -m udp --dport 7070:7089 -j ACCEPT
      36. ipt iptables -A INPUT -i gre+ -p udp -m udp --dport 5060 -j ACCEPT
      37. ipt iptables -A INPUT -i gre+ -p udp -m udp --dport 5061 -j ACCEPT
      38. ipt iptables -A INPUT -i gre+ -p udp -m udp --dport 50000:50019 -j ACCEPT
      39. echo "Setup FORWARD Chain"
      40. ipt iptables -A FORWARD -d $ROUTER_BEHIND_SPH_IP/32 -i gre+ -p udp -m multiport --dport $FORWARD_PORT_RANGE -j ACCEPT
      41. ipt iptables -A FORWARD -d $ROUTER_BEHIND_SPH_IP/32 -i gre+ -p tcp -m multiport --dport $FORWARD_PORT_RANGE -j ACCEPT
      42. ipt iptables -A FORWARD -d $ROUTER_BEHIND_SPH_IP/32 -i ppp256 -p udp -m multiport --dport $FORWARD_PORT_RANGE -j ACCEPT
      43. ipt iptables -A FORWARD -d $ROUTER_BEHIND_SPH_IP/32 -i ppp256 -p tcp -m multiport --dport $FORWARD_PORT_RANGE -j ACCEPT
      44. echo "Setup NAT"
      45. ipt iptables -t nat --flush
      46. ipt iptables -t nat --delete-chain
      47. ipt iptables -t nat -P PREROUTING ACCEPT
      48. ipt iptables -t nat -P INPUT ACCEPT
      49. ipt iptables -t nat -P OUTPUT ACCEPT
      50. ipt iptables -t nat -P POSTROUTING ACCEPT
      51. ipt iptables -t nat -A POSTROUTING -o gre+ -j MASQUERADE
      52. ipt iptables -t nat -A POSTROUTING -o ppp256 -j MASQUERADE
      53. ipt iptables -t nat -A PREROUTING -i gre+ -m multiport -p tcp --dport $FORWARD_PORT_RANGE -j DNAT --to-destination $ROUTER_BEHIND_SPH_IP
      54. ipt iptables -t nat -A PREROUTING -i gre+ -m multiport -p udp --dport $FORWARD_PORT_RANGE -j DNAT --to-destination $ROUTER_BEHIND_SPH_IP
      55. ipt iptables -t nat -A PREROUTING -i ppp256 -m multiport -p tcp --dport $FORWARD_PORT_RANGE -j DNAT --to-destination $ROUTER_BEHIND_SPH_IP
      56. ipt iptables -t nat -A PREROUTING -i ppp256 -m multiport -p udp --dport $FORWARD_PORT_RANGE -j DNAT --to-destination $ROUTER_BEHIND_SPH_IP


      Vielleicht kann jemand das Setting gebrauchen :)
      Die Ports und Adressen müssen natürlich angepasst werden.

      Für Optimierungsvorschläge bin ich auf jeden Fall dankbar!

      DIe "richtige" Firewall werde ich nun mit nftables aufsetzen.
      Ich weiß, dass ich nicht weiß