Advertisement
Guest User

Iptables

a guest
Aug 23rd, 2013
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.72 KB | None | 0 0
  1. #!/bin/bash
  2. #
  3. #Desabilitando o tráfego entre as placas
  4. #################################
  5. echo 0 > /proc/sys/net/ipv4/ip_forward
  6. #
  7. ##Definindo variáveis
  8. # Utilizar variáveis é uma boa opção quando o script é muito complexo,
  9. # senão, não tem necessidade.
  10. #########################
  11. #IP="192.168.1.1"
  12. #LOOPBACK="127.0.0.0/8"
  13. #INTERNET="eth0"
  14. #INTRANET="eth1"
  15. #DMZ="eth2"
  16. #
  17. #CA="10.0.0.0/8"
  18. #CB="172.16.0.0/12"
  19. #CC="192.168.0.0/16"
  20. #D_MULTICAST="224.0.0.0/4"
  21. #E_RESERVED="240.0.0.0/5"
  22. #LOCAL="172.16.1.0/24"
  23. #
  24. ##Apagando e restaurando as chains e tabelas
  25. ######################################
  26. iptables -Z # Zera as regras das chains
  27. iptables -F # Remove as regras das chains
  28. iptables -X # Apaga as chains
  29. iptables -t nat -Z
  30. iptables -t nat -F
  31. iptables -t nat -X
  32. iptables -t mangle -Z
  33. iptables -t mangle -F
  34. iptables -t mangle -X
  35. #
  36. ##Proteção contra ping, SYN Cookies, IP Spoofing e proteções do kernel
  37. ##########################################################
  38. echo 1 > /proc/sys/net/ipv4/tcp_syncookies #Syn Flood (DoS)
  39. echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts # Port scanners
  40. echo 0 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses #Sem resposta remota
  41. for i in /proc/sys/net/ipv4/conf/*; do
  42. echo 0 > $i/accept_redirects #Sem redirecionar rotas
  43. echo 0 > $i/accept_source_route #Sem traceroute
  44. echo 1 > $i/log_martians #Loga pacotes suspeitos no kernel
  45. echo 1 > $i/rp_filter #Ip Spoofing
  46. echo 1 > $i/secure_redirects; done #Redirecionamento seguro de pacotes
  47. echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all #Sem ping e tracert
  48. # Bloqueia traceroute
  49. iptables -A INPUT -p udp --dport 33435:33525 -j DROP
  50. #
  51. ##Carregando os módulos – Não é necessário todos os módulos,
  52. #somente aqueles que você irá utilizar.
  53. #O iptables, por padrão, carrega os módulos principais automaticamente.
  54. # Leia o manual abaixo.
  55. #Para identificar qual módulo adicional carregar, você deve elaborar todo o script
  56. #e depois de acordo com o nome do alvo utilizado, você carrega o mesmo módulo.
  57. #Por exemplo, se você utilizar a seguinte regra:
  58. # iptables -A FORWARD -p udp -m multiport --dport 80,1024:65535 -j DROP
  59. #o módulo “ipt_multiport” deve ser carregado.
  60. #Abaixo estão quase todos os módulos.
  61. ################################
  62. modprobe ip_tables
  63. modprobe iptable_nat
  64. modprobe iptable_filter
  65. modprobe iptable_mangle
  66. #
  67. modprobe ip_conntrack
  68. modprobe ip_conntrack_ftp
  69. modprobe ip_nat_ftp
  70. modprobe ip_queue
  71. modprobe ip_gre
  72. #
  73. modprobe ipt_LOG
  74. modprobe ipt_MARK
  75. modprobe ipt_REDIRECT
  76. modprobe ipt_REJECT
  77. modprobe ipt_MASQUERADE
  78. modprobe ipt_TCPMSS
  79. modprobe ipt_TOS
  80. modprobe ipt_NETMAP
  81. #
  82. modprobe ipt_limit
  83. modprobe ipt_mac
  84. modprobe ipt_multiport
  85. modprobe ipt_owner
  86. modprobe ipt_state
  87. modprobe ipt_tos
  88. modprobe ipt_mark
  89. modprobe ipt_tcpmss
  90. modprobe ipt_string
  91. modprobe ipt_statistic
  92. #
  93. modprobe nf_nat_pptp
  94. modprobe nf_nat_proto_gre
  95. #
  96. ##Definindo políticas padrões
  97. ########################
  98. iptables -P INPUT DROP # iptables a política padrão da chain INPUT é proibir tudo
  99. iptables -P FORWARD DROP
  100. iptables -P OUTPUT ACCEPT
  101. #
  102. ##Liberando a Loopback
  103. ####################
  104. iptables -A INPUT -i lo -j ACCEPT # adiciona regra na chain INPUT para liberar a loopback
  105. #
  106. ##Regras de segurança na internet e acessos
  107. #####################################
  108. iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  109. iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
  110. iptables -A INPUT -m state --state NEW ! -i eth0 -j DROP # Interface de entrada da internet
  111. iptables -A FORWARD -m state --state NEW ! -i eth0 -j DROP
  112. iptables -A INPUT -m state --state INVALID -j DROP
  113. iptables -A FORWARD -m state --state INVALID -j DROP
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement