Advertisement
Guest User

budacsik

a guest
Apr 17th, 2009
540
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 3.22 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. # Ez a t�zfal szkript, csak otthoni ig�nyeket k�pes kiel�g�teni.
  4. # Szerver g�pre nem aj�nlott!!
  5. #
  6. # Haszn�lata:
  7. # Alap�rtelmezetten meg vannak adva az �ltal�nosan haszn�lt TCP
  8. # �s UDP portok. Ha valami nem szerepel a list�ban, sz�k�zzel el-
  9. # v�lasztva hozz� kell �rni a megfelel�; helye a "Kimen� portok
  10. # megad�sa" r�szn�l.
  11. #
  12. # Loggol�s be�ll�t�sa. Minden eldobott csomagot loggol a szkript.
  13. # Ennek meg lehet adni a gyakoris�g�t:
  14. # TIMES  = a megadott �rt�ketet m�sodperc vagy perc-ben �rtse
  15. # LIMIT  = Megadott id� egys�g alatt (s vagy m) h�ny darab il-
  16. #          leszked�s lehet.
  17. # BURST  = Egy illeszkedes alkalm�val, h�ny db csomagot napl�z.
  18. # P�lda TIMES="s", LIMIT="3", BURST="5"
  19. # Ez azt jelenti, hogy egy m�sodperc alatt 3 illeszked�s elfogadott
  20. # egy illeszked�senk�nt 5 csomagot napl�z. Vagyis, m�sodpercenk�nt
  21. # maximum 3x15=45 napl�zott csomag lehets�ges.
  22. #
  23. # Created by budacsik ([email protected])
  24. # At 2009-04-18 4:38 AM
  25.  
  26. # iptables parancs megkeresese
  27. IPTABLES=$(which iptables)
  28.  
  29. # Kimen� portok megad�sa
  30. OUT_TCP="20 21 22 25 80 110 143 443 465 993 995 1863"
  31. OUT_UDP="53 123"
  32.  
  33. # Loggol�s be�ll�t�sa(s = m�sodperc, m = perc)
  34. TIMES="s"
  35. LIMIT="5"
  36. BURST="5"
  37.  
  38. # modulok betolltese
  39. modprobe ip_conntrack_ftp
  40.  
  41. # L�ncok t�rl�se, �r�t�se, �s alap�rtelmezett szab�ly be�ll�t�sa.
  42. $IPTABLES -F
  43. $IPTABLES -X
  44. $IPTABLES -t nat -F
  45. $IPTABLES -t nat -X
  46. $IPTABLES -t mangle -F
  47. $IPTABLES -t mangle -X
  48. $IPTABLES -P INPUT DROP
  49. $IPTABLES -P OUTPUT DROP
  50. $IPTABLES -P FORWARD DROP
  51.  
  52.  
  53.  
  54. # -----------------------------------------------------------------------------------------------------------------------
  55. # INPUT
  56. $IPTABLES -A INPUT -i lo -j ACCEPT
  57. # Mar ki�p�tett kapcsolatokhoz tartoz� csomagok beenged�se. (�llapotk�vet�s)
  58. $IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  59. # Beengedjuk a ping-re kapott valszokat, de csak masodpercenkent 1-et. Bőven el�g.
  60. $IPTABLES -A INPUT -p icmp --icmp-type echo-reply -m limit --limit 1/s --limit-burst 1 -j ACCEPT
  61. $IPTABLES -A INPUT -m limit --limit ${LIMIT}/${TIMES} --limit-burst $BURST -j LOG --log-prefix "INPUT_DROP: "
  62. $IPTABLES -A INPUT -j DROP
  63.  
  64.  
  65.  
  66. # -----------------------------------------------------------------------------------------------------------------------
  67. # OUTPUT
  68. $IPTABLES -A OUTPUT -o lo -j ACCEPT
  69. # Mar ki�p�tett kapcsolatokhoz tartoz� csomagok kienged�se. (�llapotk�vet�s)
  70. $IPTABLES -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  71.  
  72. # TCP portok kiengedese. 465 = SMTP over SSL
  73. if test -n "$OUT_TCP"; then
  74.     for t in $OUT_TCP; do
  75.     $IPTABLES -A OUTPUT -p tcp --dport $t -m state --state NEW -j ACCEPT
  76.     done
  77. fi
  78. # UDP portok kienged�se
  79. if test -n "$OUT_UDP"; then
  80.     for u in $OUT_UDP; do
  81.     $IPTABLES -A OUTPUT -p udp --dport $u -j ACCEPT
  82.     done
  83. fi
  84. # Ping-et kiengedj�k
  85. $IPTABLES -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
  86. $IPTABLES -A OUTPUT -m limit --limit  ${LIMIT}/${TIMES} --limit-burst $BURST -j LOG --log-prefix "OUTPUT_DROP: "
  87. $IPTABLES -A OUTPUT -j DROP
  88.  
  89. # T�zfal ment�se
  90. if test -r /etc/iptables.rules; then
  91.     rm -f /etc/iptables.rules
  92. fi
  93.  
  94. iptables-save -c > /etc/iptables.rules
  95. if test -r /etc/iptables.rules; then
  96.     echo "T�zfal ment�se sikeres!"
  97. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement