aquaballoon

iptables - tips

Feb 2nd, 2015
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.26 KB | None | 0 0
  1. Blocking portscan
  2.  
  3. # Attempt to block portscans
  4. # Anyone who tried to portscan us is locked out for an entire day.
  5. iptables -A INPUT   -m recent --name portscan --rcheck --seconds 86400 -j DROP
  6. iptables -A FORWARD -m recent --name portscan --rcheck --seconds 86400 -j DROP
  7.  
  8. # Once the day has passed, remove them from the portscan list
  9. iptables -A INPUT   -m recent --name portscan --remove
  10. iptables -A FORWARD -m recent --name portscan --remove
  11.  
  12. # These rules add scanners to the portscan list, and log the attempt.
  13. iptables -A INPUT   -p tcp -m tcp --dport 139 -m recent --name portscan --set -j LOG --log-prefix "Portscan:"
  14. iptables -A INPUT   -p tcp -m tcp --dport 139 -m recent --name portscan --set -j DROP
  15.  
  16. iptables -A FORWARD -p tcp -m tcp --dport 139 -m recent --name portscan --set -j LOG --log-prefix "Portscan:"
  17. iptables -A FORWARD -p tcp -m tcp --dport 139 -m recent --name portscan --set -j DROP
  18. Spoofed/Invalid packets
  19.  
  20. # Reject spoofed packets
  21. # These adresses are mostly used for LAN's, so if these would come to a WAN-only server, drop them.
  22. iptables -A INPUT -s 10.0.0.0/8 -j DROP
  23. iptables -A INPUT -s 169.254.0.0/16 -j DROP
  24. iptables -A INPUT -s 172.16.0.0/12 -j DROP
  25. iptables -A INPUT -s 127.0.0.0/8 -j DROP
  26.  
  27. #Multicast-adresses.
  28. iptables -A INPUT -s 224.0.0.0/4 -j DROP
  29. iptables -A INPUT -d 224.0.0.0/4 -j DROP
  30. iptables -A INPUT -s 240.0.0.0/5 -j DROP
  31. iptables -A INPUT -d 240.0.0.0/5 -j DROP
  32. iptables -A INPUT -s 0.0.0.0/8 -j DROP
  33. iptables -A INPUT -d 0.0.0.0/8 -j DROP
  34. iptables -A INPUT -d 239.255.255.0/24 -j DROP
  35. iptables -A INPUT -d 255.255.255.255 -j DROP
  36.  
  37. # Drop all invalid packets
  38. iptables -A INPUT -m state --state INVALID -j DROP
  39. iptables -A FORWARD -m state --state INVALID -j DROP
  40. iptables -A OUTPUT -m state --state INVALID -j DROP
  41. Block Smurf attacks
  42.  
  43. # Stop smurf attacks
  44. iptables -A INPUT -p icmp -m icmp --icmp-type address-mask-request -j DROP
  45. iptables -A INPUT -p icmp -m icmp --icmp-type timestamp-request -j DROP
  46. iptables -A INPUT -p icmp -m icmp -j DROP
  47.  
  48. # Drop excessive RST packets to avoid smurf attacks
  49. iptables -A INPUT -p tcp -m tcp --tcp-flags RST RST -m limit --limit 2/second --limit-burst 2 -j ACCEPT
  50. Block ICMP (aka ping)
  51.  
  52. # Don't allow pings through
  53. iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j DROP
Advertisement
Add Comment
Please, Sign In to add comment