iptables.sh 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #!/bin/sh
  2. #move to script directory so all relative paths work
  3. cd "$(dirname "$0")"
  4. . ./config.sh
  5. . ./colors.sh
  6. #send a message
  7. verbose "Configuring IPTables"
  8. #run iptables commands
  9. iptables -A INPUT -i lo -j ACCEPT
  10. iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  11. iptables -A INPUT -j DROP -p udp --dport 5060:5091 -m string --string "friendly-scanner" --algo bm --icase
  12. iptables -A INPUT -j DROP -p tcp --dport 5060:5091 -m string --string "friendly-scanner" --algo bm --icase
  13. iptables -A INPUT -j DROP -p udp --dport 5060:5091 -m string --string "sipcli/" --algo bm --icase
  14. iptables -A INPUT -j DROP -p tcp --dport 5060:5091 -m string --string "sipcli/" --algo bm --icase
  15. iptables -A INPUT -j DROP -p udp --dport 5060:5091 -m string --string "VaxSIPUserAgent/" --algo bm --icase
  16. iptables -A INPUT -j DROP -p tcp --dport 5060:5091 -m string --string "VaxSIPUserAgent/" --algo bm --icase
  17. iptables -A INPUT -j DROP -p udp --dport 5060:5091 -m string --string "pplsip" --algo bm --icase
  18. iptables -A INPUT -j DROP -p tcp --dport 5060:5091 -m string --string "pplsip" --algo bm --icase
  19. iptables -A INPUT -j DROP -p udp --dport 5060:5091 -m string --string "exec." --algo bm --icase
  20. iptables -A INPUT -j DROP -p tcp --dport 5060:5091 -m string --string "exec." --algo bm --icase
  21. iptables -A INPUT -j DROP -p udp --dport 5060:5091 -m string --string "system " --algo bm --icase
  22. iptables -A INPUT -j DROP -p tcp --dport 5060:5091 -m string --string "system " --algo bm --icase
  23. iptables -A INPUT -j DROP -p udp --dport 5060:5091 -m string --string "multipart/mixed;boundary" --algo bm --icase
  24. iptables -A INPUT -j DROP -p tcp --dport 5060:5091 -m string --string "multipart/mixed;boundary" --algo bm --icase
  25. iptables -A INPUT -p tcp --dport 22 -j ACCEPT
  26. iptables -A INPUT -p tcp --dport 80 -j ACCEPT
  27. iptables -A INPUT -p tcp --dport 443 -j ACCEPT
  28. iptables -A INPUT -p tcp --dport 7443 -j ACCEPT
  29. iptables -A INPUT -p tcp --dport 5060:5091 -j ACCEPT
  30. iptables -A INPUT -p udp --dport 5060:5091 -j ACCEPT
  31. iptables -A INPUT -p udp --dport 16384:32768 -j ACCEPT
  32. iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
  33. iptables -A INPUT -p udp --dport 1194 -j ACCEPT
  34. iptables -t mangle -A OUTPUT -p udp -m udp --sport 16384:32768 -j DSCP --set-dscp 46
  35. iptables -t mangle -A OUTPUT -p udp -m udp --sport 5060:5091 -j DSCP --set-dscp 26
  36. iptables -t mangle -A OUTPUT -p tcp -m tcp --sport 5060:5091 -j DSCP --set-dscp 26
  37. iptables -P INPUT DROP
  38. iptables -P FORWARD DROP
  39. iptables -P OUTPUT ACCEPT
  40. #answer the questions for iptables persistent
  41. echo iptables-persistent iptables-persistent/autosave_v4 boolean true | debconf-set-selections
  42. echo iptables-persistent iptables-persistent/autosave_v6 boolean true | debconf-set-selections
  43. apt-get install -y iptables-persistent