Firewall
Publicado por Everton 01/09/2004
[ Hits: 7.446 ]
Firewall Básico
Permite somente a passagem de serviços http nas portas 80 e 443.
Serviços pop e smtp nas portas 110 e 25 com servidores espeíficos
Ssh somente do ip do administrador
Nat-Masquerade, ip-forward, Consulta DNS, etc.
Vale apenas confertir.
Facil de configurar.
É so mudar as variáveis.ssh iserver
Arquivo comentado.
Espero que ajude!!!
Seja Livre!!!
Use Linux!!!
#!/bin/bash # #chkconfig: 345 56 46 # # #*********************************************************************** # # Firewall v 1.00 # By EVM-Tech Informática / Linux Service Network # Everton Pestana de Moraes # Shell script to Packet Filtering with Iptables # # This file may be distributed under the terms of the GNU General # Public License. # # LIC: GPL #Pode ser distribuido a Alterado Livremente desde que seja #conservado o Autor e comentadas as devidas alterações. # # Usage: firewall (start|stop|restart|shutdown) # #*********************************************************************** # . /etc/rc.d/init.d/functions # #Interface Interna IINT=eth0 RINT=192.168.0.0/24 #Interface Externa IEXT=ppp0 #Interface ADSL IADSL=eth1 IPADM=192.168.0.1 POPT=pop.rio.terra.com.br SMTPT=smtp.rio.terra.com.br POPI=pop3.ig.com.br SMTPI=smtp.ig.com.br POPB=pop3.bol.com.br SMTPB=smtp.bol.com.br POPU=pop3.uol.com.br SMTPU=smtp.uol.com.br # IPT=/usr/sbin/iptables modprobe ip_conntrack modprobe ip_conntrack_ftp modprobe ip_nat_ftp # case "$1" in # start) echo -n "Iniciando Firewall" # #Removendo Regras $IPT -F $IPT -t nat -F $IPT -t mangle -F # #Zerando Contadores $IPT -Z $IPT -t nat -Z $IPT -t mangle -Z # #Definindo Política de Segurança Padrão $IPT -P INPUT DROP $IPT -P FORWARD DROP $IPT -P OUTPUT DROP # #Ativando MASQUERADE $IPT -t nat -A POSTROUTING -o $IEXT -j MASQUERADE # # Ativando FORWARD de Pacotes /sbin/sysctl -w net.ipv4.ip_forward=1 > /dev/null # # #Permitindo Consulta ao DNS # $IPT -A INPUT -s $RINT -p udp --sport 1024:65535 --dport 53 -j ACCEPT $IPT -A INPUT -i $IEXT -p udp --sport 53 --dport 53 -j ACCEPT $IPT -A INPUT -i $IEXT -p udp --sport 53 --dport 1024:65535 -j ACCEPT $IPT -A OUTPUT -o $IEXT -p udp -m udp --dport 53 -j ACCEPT # #Permitindo SSH # $IPT -A INPUT -p tcp -s $IPADM --sport 1024:65535 --dport 22 -j ACCEPT $IPT -A OUTPUT -p tcp --sport 22 -d $IPADM --dport 1024:65535 -j ACCEPT # #Permitindo acesso WEB # $IPT -A INPUT -d $RINT -i $IEXT -p tcp -m tcp --sport 80 --dport 1024:65535 -j ACCEPT $IPT -A INPUT -d $RINT -i $IEXT -p tcp -m tcp --sport 80 --dport 1024:65535 -j ACCEPT $IPT -A INPUT -d $RINT -i $IEXT -p tcp -m tcp --sport 443 --dport 1024:65535 -j ACCEPT $IPT -A INPUT -d $RINT -i $IINT -p tcp -m tcp --sport 443 --dport 1024:65535 -j ACCEPT $IPT -A FORWARD -s $RINT -i $IINT -p tcp -m tcp --sport 1024:65535 --dport 80 -j ACCEPT $IPT -A FORWARD -d $RINT -i $IEXT -o $IINT -p tcp -m tcp --sport 80 --dport 1024:65535 -j ACCEPT $IPT -A FORWARD -s $RINT -i $IINT -o $IEXT -p tcp -m tcp --dport 80 -j ACCEPT $IPT -A FORWARD -i $IEXT -o $IINT -p tcp -m tcp --sport 80 --dport 1024:65535 -j ACCEPT $IPT -A FORWARD -s $RINT -i $IINT -o $IEXT -p tcp -m tcp --sport 1024:65535 --dport 443 -j ACCEPT $IPT -A FORWARD -d $RINT -i $IEXT -o $IINT -p tcp -m tcp --sport 443 --dport 1024:65535 -j ACCEPT $IPT -A OUTPUT -s $RINT -o $IEXT -p tcp -m tcp --sport 1024:65535 --dport 80 -j ACCEPT $IPT -A OUTPUT -s $RINT -o $IINT -p tcp -m tcp --sport 1024:65535 --dport 80 -j ACCEPT $IPT -A OUTPUT -d $RINT -o $IEXT -p tcp -m tcp --sport 1024:65535 --dport 443 -j ACCEPT $IPT -A OUTPUT -s $RINT -o $IINT -p tcp -m tcp --sport 1024:65535 --dport 443 -j ACCEPT # #Permitindo acesso Mail #Terra $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $POPT --dport 110 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $POPT --sport 110 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $SMTPT --dport 25 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $SMTPT --sport 25 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT #IG $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $POPI --dport 110 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $POPI --sport 110 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $SMTPI --dport 25 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $SMTPI --sport 25 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT #BOL $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $POPB --dport 110 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $POPB --sport 110 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $SMTPB --dport 25 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $SMTPB --sport 25 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT #UOL $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $POPU --dport 110 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $POPU --sport 110 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $SMTPU --dport 25 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $SMTPU --sport 25 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT # #Diversos # $IPT -A INPUT -s $RINT -d $RINT -j ACCEPT $IPT -A OUTPUT -d $RINT -o $IINT -p udp -m udp --dport 1024:65535 -j ACCEPT $IPT -A OUTPUT -d $IPADM -p tcp -m tcp --dport 1024:65535 -j ACCEPT $IPT -A OUTPUT -s $RINT -d $RINT -j ACCEPT $IPT -A OUTPUT -s $RINT -o $IEXT -p tcp -m tcp --sport 1024:65535 --dport 1024:65535 -j ACCEPT # echo_success echo -ne \\n ;; stop) echo -n "Parando o Firewall" # # Removendo as Regras $IPT -F $IPT -t nat -F $IPT -t mangle -F # # Zerando os contadores $IPT -Z $IPT -t nat -Z $IPT -t mangle -Z # #Definindo Política de Segurança Padrão $IPT -P INPUT DROP $IPT -P FORWARD DROP $IPT -P OUTPUT DROP # # Desativando FORWARD de Pacotes /sbin/sysctl -w net.ipv4.ip_forward=0 > /dev/null # #Ativando MASQUERADE $IPT -t nat -A POSTROUTING -o $IEXT -j MASQUERADE # echo_success echo -ne \\n ;; restart) echo -n "Parando o Firewall" # # Removendo as Regras $IPT -F $IPT -t nat -F $IPT -t mangle -F # # Zerando os contadores $IPT -Z $IPT -t nat -Z $IPT -t mangle -Z # # Ativando FORWARD de Pacotes /sbin/sysctl -w net.ipv4.ip_forward=0 > /dev/null # #Ativando MASQUERADE $IPT -t nat -A POSTROUTING -o $IEXT -j MASQUERADE # echo_success echo -ne \\n # echo -n "Reiniciando Firewall" # #Removendo Regras $IPT -F $IPT -t nat -F $IPT -t mangle -F # #Zerando Contadores $IPT -Z $IPT -t nat -Z $IPT -t mangle -Z # #Definindo Política de Segurança Padrão $IPT -P INPUT DROP $IPT -P FORWARD DROP $IPT -P OUTPUT DROP # #Ativando MASQUERADE $IPT -t nat -A POSTROUTING -o $IEXT -j MASQUERADE # # Ativando FORWARD de Pacotes /sbin/sysctl -w net.ipv4.ip_forward=1 > /dev/null # # #Permitindo Consulta ao DNS # $IPT -A INPUT -s $RINT -p udp --sport 1024:65535 --dport 53 -j ACCEPT $IPT -A INPUT -i $IEXT -p udp --sport 53 --dport 53 -j ACCEPT $IPT -A INPUT -i $IEXT -p udp --sport 53 --dport 1024:65535 -j ACCEPT $IPT -A OUTPUT -o $IEXT -p udp -m udp --dport 53 -j ACCEPT # #Permitindo SSH # $IPT -A INPUT -p tcp -s $IPADM --sport 1024:65535 --dport 22 -j ACCEPT $IPT -A OUTPUT -p tcp --sport 22 -d $IPADM --dport 1024:65535 -j ACCEPT # #Permitindo acesso WEB # $IPT -A INPUT -d $RINT -i $IEXT -p tcp -m tcp --sport 80 --dport 1024:65535 -j ACCEPT $IPT -A INPUT -d $RINT -i $IEXT -p tcp -m tcp --sport 80 --dport 1024:65535 -j ACCEPT $IPT -A INPUT -d $RINT -i $IEXT -p tcp -m tcp --sport 443 --dport 1024:65535 -j ACCEPT $IPT -A INPUT -d $RINT -i $IINT -p tcp -m tcp --sport 443 --dport 1024:65535 -j ACCEPT $IPT -A FORWARD -s $RINT -i $IINT -p tcp -m tcp --sport 1024:65535 --dport 80 -j ACCEPT $IPT -A FORWARD -d $RINT -i $IEXT -o $IINT -p tcp -m tcp --sport 80 --dport 1024:65535 -j ACCEPT $IPT -A FORWARD -s $RINT -i $IINT -o $IEXT -p tcp -m tcp --dport 80 -j ACCEPT $IPT -A FORWARD -i $IEXT -o $IINT -p tcp -m tcp --sport 80 --dport 1024:65535 -j ACCEPT $IPT -A FORWARD -s $RINT -i $IINT -o $IEXT -p tcp -m tcp --sport 1024:65535 --dport 443 -j ACCEPT $IPT -A FORWARD -d $RINT -i $IEXT -o $IINT -p tcp -m tcp --sport 443 --dport 1024:65535 -j ACCEPT $IPT -A OUTPUT -s $RINT -o $IEXT -p tcp -m tcp --sport 1024:65535 --dport 80 -j ACCEPT $IPT -A OUTPUT -s $RINT -o $IINT -p tcp -m tcp --sport 1024:65535 --dport 80 -j ACCEPT $IPT -A OUTPUT -d $RINT -o $IEXT -p tcp -m tcp --sport 1024:65535 --dport 443 -j ACCEPT $IPT -A OUTPUT -s $RINT -o $IINT -p tcp -m tcp --sport 1024:65535 --dport 443 -j ACCEPT # #Permitindo acesso Mail #Terra $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $POPT --dport 110 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $POPT --sport 110 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $SMTPT --dport 25 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $SMTPT --sport 25 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT #IG $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $POPI --dport 110 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $POPI --sport 110 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $SMTPI --dport 25 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $SMTPI --sport 25 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT #BOL $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $POPB --dport 110 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $POPB --sport 110 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $SMTPB --dport 25 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $SMTPB --sport 25 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT #UOL $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $POPU --dport 110 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $POPU --sport 110 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT $IPT -A FORWARD -p tcp -s $RINT --sport 1024:65535 -i $IINT -d $SMTPU --dport 25 -o $IEXT -j ACCEPT $IPT -A FORWARD -p tcp -s $SMTPU --sport 25 -i $IEXT -d $RINT --dport 1024:65535 -o $IINT -j ACCEPT # #Diversos # $IPT -A INPUT -s $RINT -d $RINT -j ACCEPT $IPT -A OUTPUT -d $RINT -o $IINT -p udp -m udp --dport 1024:65535 -j ACCEPT $IPT -A OUTPUT -d $IPADM -p tcp -m tcp --dport 1024:65535 -j ACCEPT $IPT -A OUTPUT -s $RINT -d $RINT -j ACCEPT $IPT -A OUTPUT -s $RINT -o $IEXT -p tcp -m tcp --sport 1024:65535 --dport 1024:65535 -j ACCEPT # echo_success echo -ne \\n ;; shutdown) echo -n "Desligando o Firewall" # #Removendo Regras $IPT -F $IPT -t nat -F $IPT -t mangle -F # #Zerando Contadores $IPT -Z $IPT -t nat -Z $IPT -t mangle -Z # #Definindo Política de Segurança Padrão $IPT -P INPUT ACCEPT $IPT -P FORWARD ACCEPT $IPT -P OUTPUT ACCEPT # #Ativando MASQUERADE $IPT -t nat -A POSTROUTING -o $IEXT -j MASQUERADE # # Ativando FORWARD de Pacotes /sbin/sysctl -w net.ipv4.ip_forward=1 > /dev/null # echo_success echo -ne \\n # ;; *) echo "Uso firewall (start | stop | restart | shutdown)" ;; esac
Diário Oficial da União - Download facilitado
Go Script - Inicia sessões ssh
Impedir duas ou mais conexões por usuário
Antivírus no Linux para usuários de domínio
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Opções secretas em tema do Cinnamon
Como mapear unidade de rede no Linux
Como quebrar senha usando john the ripper
Alguém já testou o novo COSMIC Desktop? O que achou? (5)
Alguém pode me indicar um designer freelancer? [RESOLVIDO] (2)
Por que passar nas disciplinas da faculdade é ruim e ser reprovado é b... (2)









