Iptables (Firewall.sh)
Firewall do Iptables simples que pode ser utilizado em servidor ou maquina pessoal
Categoria: Init
Software: Iptables
[ Hits: 50.265 ]
Por: Tacio de Jesus Andrade
Este Script de configuração do IPtables foi criado com base em diversos artigos do Viva o Linux e da leitura do livro: Servidores Linux - Guia Pratico do Morimoto.
Ele foi criado como um Daemon para poder ser adicionado como um serviço, bastando edita-lo da forma que preferir e depois jogar na pasta correspondente, no caso de distros Debian-Like (/etc/init.d/) e coloca-la para iniciar com o sistema.
Quando fizer alguma modificação nele para melhora-lo coloco aqui novamente.
#! /bin/bash ############################################################################### # Autor: Tácio de Jesus Andrade # Criação: 11/04/2011 # Modificação: 02/05/2011 # Função: Arquivo de Configuração Padrão do Firewall IpTables # Utilização: Mova-o para o diretório /etc/init.d/ (em distros Debian-Like) # e adicione o serviço para iniciar com o Sistema (pode-se utilizar # o rcconf ou o comando de carregamento do serviço de sua distro) ############################################################################### case "$1" in start) ############### # TITULO ABRE # ############### echo "Iniciando a Configuração do Firewall" ######################## # Zera todas as Regras # ######################## echo "Regras Zeradas" iptables -F ######################################## # Bloqueia tudo, nada entra e nada sai # ######################################## echo "Fechando tudo" iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT DROP ############################################################################ # Impede ataques DoS a maquina limitando a quantidade de respostas do ping # ############################################################################ #echo "Previne ataques DoS" # iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT ################################# # Bloqieia completamente o ping # ################################# echo "Bloqueia o pings" iptables -A INPUT -p icmp --icmp-type echo-request -j DROP ########################## # Politicas de segurança # ########################## echo "Implementação de politicas de segurança" echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route # Impede falsear pacote echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects # Perigo de descobrimento de rotas de roteamento (desativar em roteador) echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts # Risco de DoS echo 1 > /proc/sys/net/ipv4/tcp_syncookies # Só inicia a conexão quando recebe a confirmação, diminuindo a banda gasta echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter # Faz o firewall responder apenas a placa de rede que recebeu o pacote iptables -A INPUT -m state --state INVALID -j DROP # Elimina os pacotes invalidos ################################# # Libera conexoes estabelecidas # ################################# echo "Liberando conexões estabelecidas" iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -m state --state RELATED,ESTABLISHED,NEW -j ACCEPT iptables -A OUTPUT -m state --state RELATED,ESTABLISHED,NEW -j ACCEPT iptables -A INPUT -i lo -j ACCEPT ####################################################################################### # Libera o acesso via SSH e Limita o número de tentativas de acesso a 4 a cada minuto # ####################################################################################### #echo "Liberando o SSH" # iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 -j DROP # iptables -A INPUT -p tcp --dport 22 -j ACCEPT # iptables -A INPUT -p udp --dport 22 -j ACCEPT ################## # Libera o Samba # ################## #echo "Liberando o Samba" # iptables -A INPUT -p tcp --dport 137:139 -j ACCEPT # iptables -A INPUT -p udp --dport 137:139 -j ACCEPT ################### # Libera o Apache # ################### #echo "Liberando o Apache" # iptables -A INPUT -p tcp --dport 80 -j ACCEPT ################ # TITULO FECHA # ################ echo "Configuração do Firewall Concluida." ;; stop) echo "Finalizando o Firewall" rm -rf /var/lock/subsys/firewall # ----------------------------------------------------------------- # Remove todas as regras existentes # ----------------------------------------------------------------- iptables -F iptables -X iptables -t mangle -F # ----------------------------------------------------------------- # Reseta as politicas padrões, aceitar tudo # ----------------------------------------------------------------- iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT ;; restart|reload) $0 stop $0 start ;; *) echo "Selecione uma opção valida {start|stop|status|restart|reload}" exit 1 esac exit 0
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Desempenho abaixo do esperado - travadas e congelamento do sistema ope... (6)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta