Advertisement
Guest User

Untitled

a guest
Mar 26th, 2017
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. #!/bin/sh
  2. IPT=/sbin/iptables
  3. WANIF=eth0
  4. LANIF=eth1
  5.  
  6. firewall_start() {
  7.  
  8. #==================== INPUT ===================
  9. $IPT -A INPUT -i $WANIF -m state --state ESTABLISHED,RELATED -j ACCEPT
  10.  
  11. $IPT -A INPUT -i $WANIF -p tcp --dport 22 -j ACCEPT
  12.  
  13. $IPT -A INPUT -i $WANIF -p icmp -j ACCEPT
  14.  
  15. $IPT -A INPUT -i $LANIF -j ACCEPT
  16.  
  17. $IPT -P INPUT DROP
  18.  
  19. #==================== NAT ===================
  20. $IPT -A POSTROUTING -t nat -o $WANIF -j MASQUERADE
  21.  
  22. $IPT -A FORWARD -i $WANIF -p tcp --dport 80 -d 10.0.0.101 -j ACCEPT
  23.  
  24. $IPT -A PREROUTING -t nat -j DNAT -i $WANIF -p tcp --dport 80 --to-destination 192.168.1.101:80
  25.  
  26.  
  27.  
  28. #==================== FORWARD ===================
  29. $IPT -A FORWARD -i $WANIF -m state --state ESTABLISHED,RELATED -j ACCEPT
  30.  
  31. $IPT -A FORWARD -i $LANIF -j ACCEPT
  32.  
  33. $IPT -P FORWARD DROP
  34. }
  35.  
  36. firewall_stop() {
  37.  
  38. $IPT -F
  39. $IPT -t nat -F
  40. $IPT -P INPUT ACCEPT
  41. $IPT -P FORWARD ACCEPT
  42. }
  43.  
  44. firewall_restart() {
  45. firewall_stop
  46. sleep 2
  47. firewall_start
  48. }
  49.  
  50. case $1 in 'start' )
  51. firewall_start
  52. ;;
  53. 'stop' )
  54. firewall_stop
  55. ;;
  56. 'restart' )
  57. firewall_restart
  58. ;;
  59. *)
  60. echo "usage: -bash {start|stop|restart}"
  61. ;;
  62. esac
  63.  
  64. -P INPUT DROP
  65. -P FORWARD DROP
  66. -P OUTPUT ACCEPT
  67. -A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
  68. -A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
  69. -A INPUT -i eth0 -p icmp -j ACCEPT
  70. -A INPUT -i eth1 -j ACCEPT
  71. -A FORWARD -d 10.0.0.101/32 -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
  72. -A FORWARD -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
  73. -A FORWARD -i eth1 -j ACCEPT
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement