aquaballoon

Iptables

Jun 22nd, 2011
192
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.00 KB | None | 0 0
  1. # Mapping Public IP (124.xx.xx.xx :eth0) to Private IP (192.168.2.10 :eth1)
  2.  
  3. $ iptables -A FORWARD -p TCP -i eth0 -d 192.168.2.10 --dport 80 -j ACCEPT
  4. $ iptables -t nat -A PREROUTING -p TCP -i eth0 -d 124.xx.xx.xx --dport 80 -j DNAT --to-destination 192.168.2.10
  5.  
  6. ** iptables -t nat -A POSTROUTING -o eth0 -s 192.168.2.10 -j SNAT --to-source 124.xx.xx.xx
  7.  
  8.  
  9. # Internet Sharing
  10.  
  11. $ iptables -A INPUT -d 192.168.2.0/24 -i eth1 -j INBOUND
  12. $ iptables -A INPUT -d 124.158.108.149/32 -i eth1 -j INBOUND
  13.  
  14. $ iptables -A FORWARD -i eth1 -j OUTBOUND
  15. $ iptables -A FORWARD -d 192.168.2.0/24 -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
  16. $ iptables -A FORWARD -d 192.168.2.0/24 -p udp -m state --state RELATED,ESTABLISHED -j ACCEPT
  17.  
  18. $ iptables -A FORWARD -i eth1 -j ACCEPT
  19.  
  20. $ iptables -A OUTPUT -o eth1 -j OUTBOUND
  21.  
  22.  
  23. $ iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
  24.  
  25.  
  26. # VPN server setup (vpn subnet: 10.8.0.0)
  27.  
  28. $ iptables -A INPUT -d 10.8.0.1/32 -i tun0 -j INBOUND          // 10.8.0.1 tunnel accessible
  29. $ iptables -A INPUT -d 124.158.xx.xx/32 -i tun0 -j INBOUND     // 124.158.xx.xx tunnel accessible
  30. $ iptables -A INPUT -d 192.168.2.0/24 -i tun0 -j INBOUND       // 192.168.2.0 subnet tunnel accessible
  31.  
  32. $ iptables -A FORWARD -d 10.8.0.0/24 -j ACCEPT             // all ports open
  33.  
  34. $ iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
  35.  
  36.  
  37.  
  38. # Enables packet forwarding by kernel
  39.  
  40. $ echo 1 > /proc/sys/net/ipv4/ip_forward
  41.  
  42.  
  43.  
  44. # Open
  45.  
  46. $ iptables -A INPUT -p tcp --dport 80 -j ACCEPT
  47. $ iptables -A INPUT -s 192.168.1.100 -j ACCEPT # Only open to 192.168.1.100
  48.  
  49.  
  50.  
  51. # Block
  52.  
  53. $ iptables -A OUTPUT -p tcp --dport 6881:6889 -j DROP # Block to BitTorent  
  54. $ iptables -A OUTPUT -d 69.50.139.114 -j DROP # Block to 69.50.139.114
  55.  
  56.  
  57.  
  58. # All Open / Block
  59.  
  60. $ iptables -F / -Z / -X  # clear
  61.  
  62. $ iptables -P INPUT ACCEPT / DROP
  63. $ iptables -P OUTPUT ACCEPT / DROP
  64. $ iptables -P FORWARD ACCEPT / DROP
  65.  
  66.  
  67.  
  68. # Save / Restore
  69.  
  70. $ iptables-save > /etc/iptables.up.rules
  71. $ iptables-restore < /etc/iptables.up.rules
Advertisement
Add Comment
Please, Sign In to add comment