segunda-feira, 17 de novembro de 2025
Home
Artigos
Banco de Dados
Access
Firebird
Microsoft SQL Server
MySql
Oracle
Sybase
BI
QlikView
Dicas de Internet
e-business
Hardware
Multimídia
Flash
Programação
.NET/ASP.NET
.NET/C#
.NET/Framework
.NET/VB.NET
ASP
C/C++
Clipper
Cobol
CSS
Delphi
Java
Javascript
JSP
Palm
Perl
PHP
Shell
Visual Basic
WAP
Redes
Segurança
Servidores E-mail
Servidores Web
Apache
Microsoft IIS
Sistemas Operacionais
AIX
DOS
HPUX
Linux
Palm OS
Solaris
True64
Windows 7
Windows 9X
Windows NT
Windows Vista
Windows XP
Software Review
PC
Storages
Veritas VM
Conteúdo atual do site:
[807] ítens, entre artigos, funções e documentos.
Pesquisa Rápida:
Últimos 3 acessos:
Alexandre Neves 03/03/2015 11:08:01 167 acesso(s) alexandre neves 03/03/2015 11:06:42 1 acesso(s) Marcelo Torres 21/01/2015 15:24:53 61 acesso(s)
Opções:
Listagem completa Listagem simples
Ranking Colaboradores:
Adenilton Rodrigues - [304] Alexandre Neves - [61] Douglas Freire - [54] Marcelo Giovanni - [53] Marcelo Torres - [43] Angelita Bernardes - [31] Addy Magalhães Cunha - [28] Manuel Fraguas - [24] Ludmila Valadares - [20] Marcelo Capelo - [18]
Firewall básico utilizando IPCHAINS (Necessita de Kernel versão 2.2.x, não recomendado para Kernel versão 2.4.x)
#!/bin/sh # Infokeep Informatica # Configuracao FW Utilizando IPChains # Por Marcelo Giovanni em 04/01/2001 # Atualizado em 15/02/2002 # Matches any address Any="0.0.0.0/0" # Ethernet Broadcast broadcast="255.255.255.255/32" # Important Network Interfaces # Neste ponto você deverá alterar as interfaces de acordo com o seu sistema, # interna é a placa de rede que possui IP inválido e # externa é a placa de rede que possui IP válido, # para consultar digite ifconfig -a internal="eth1" external="eth0" loopback="lo" # Executavel IPCHAINS=/sbin/ipchains # Networks used locally # O endereço da rede local deverá ser o mesmo de sua rede juntamente com o netmask localnet="192.168.1.0/255.255.255.0" localhost="127.0.0.1/32" # Rede com IP válido extnet="10.0.0.0/255.255.255.248" #Inicializacao echo "Starting Firewall" ipchains -F ipchains -A input -i ! lo -j DENY ipchains -A output -i ! lo -j DENY ipchains -A forward -j DENY # Needed to initially load modules # /sbin/depmod -a # Supports the proper masquerading of FTP file transfers using the PORT method # /sbin/modprobe ip_masq_ftp #CRITICAL: Enable IP forwarding since it is disabled by default since # echo "1" > /proc/sys/net/ipv4/ip_forward #CRITICAL: Enable automatic IP defragmenting since it is disabled by default # in 2.2.x kernels. This used to be a compile-time option but the # behavior was changed in 2.2.12 # echo "1" > /proc/sys/net/ipv4/ip_always_defrag # TCP SYN Cookie protection... echo "1" > /proc/sys/net/ipv4/tcp_syncookies # IP Spoof protection for file in /proc/sys/net/ipv4/conf/*/rp_filter; do echo "1" > $file done # Disable ICMP redirect acceptance for file in /proc/sys/net/ipv4/conf/*/accept_redirects; do echo "0" > $file done # Disable source-routed packets for file in /proc/sys/net/ipv4/conf/*/accept_source_route; do echo "0" > $file done # MASQ timeouts # # 2 hrs timeout for TCP session timeouts # 10 sec timeout for traffic after the TCP/IP "FIN" packet is received # 160 sec timeout for UDP traffic (Important for MASQ'ed ICQ users) # /sbin/ipchains -M -S 7200 10 160 ipchains -N icmp-acc ipchains -N bad-good ipchains -N bad-dmz # Somente as conexões pré-definidas passarão pelo NAT ipchains -A forward -s $localnet -i $external -j good-bad # Para liberar todas as portas do NAT # $IPCHAINS -A forward -s $localnet -i $external -j MASQ ipchains -A forward -i $internal -j DENY ipchains -A forward -j DENY -l # Testas as conexões com o servidor $exthost ipchains -A input -d $exthost -j bad-dmz # Regra icmp-acc # Só aceita bons pacotes icmp ipchains -A icmp-acc -p icmp --icmp-type destination-unreachable -j ACCEPT ipchains -A icmp-acc -p icmp --icmp-type source-quench -j ACCEPT ipchains -A icmp-acc -p icmp --icmp-type time-exceeded -j ACCEPT ipchains -A icmp-acc -p icmp --icmp-type parameter-problem -j ACCEPT ### icmp-acc # Regra good-bad - Usada em conjunto com IPFOWARDING ipchains -A good-bad -p tcp --dport www -j MASQ ipchains -A good-bad -p tcp --dport https -j MASQ ipchains -A good-bad -p tcp --dport telnet -j MASQ ipchains -A good-bad -p udp --dport 33434:33500 -j MASQ ipchains -A good-bad -p tcp --dport ftp -j MASQ ipchains -A good-bad -p tcp --dport ftp-data -j MASQ ipchains -A good-bad -p tcp --dport smtp -j MASQ ipchains -A good-bad -p tcp --dport pop3 -j MASQ ipchains -A good-bad -p udp --dport domain -j MASQ ipchains -A good-bad -p tcp --dport domain -j MASQ ipchains -A good-bad -p icmp --icmp-type ping -j MASQ ipchains -A good-bad -j DENY -l ### good-bad # Regra bad-dmz $IPCHAINS -A bad-dmz -s $Any -d $Any -i ! $external -j ACCEPT $IPCHAINS -A bad-dmz -j icmp-acc $IPCHAINS -A bad-dmz -p UDP -s $Any -d $exthost domain -i $external -j ACCEPT $IPCHAINS -A bad-dmz -p UDP -s $Any domain -d $exthost -i $external -j ACCEPT $IPCHAINS -A bad-dmz -p UDP -s $Any ntp -d $Any -i $external -j ACCEPT $IPCHAINS -A bad-dmz -p UDP -s $Any -d $Any --dport 61000:65095 -i $external -j ACCEPT $IPCHAINS -A bad-dmz -p UDP -s $Any -d $Any 1:65535 -i $external -j DENY -l $IPCHAINS -A bad-dmz -p TCP -s $Any -d $exthost auth -j ACCEPT $IPCHAINS -A bad-dmz -p TCP -s $Any -d $exthost domain -j ACCEPT $IPCHAINS -A bad-dmz -p TCP -s $Any -d $exthost smtp -j ACCEPT $IPCHAINS -A bad-dmz -p TCP -s $extnet -d $extnet -j ACCEPT $IPCHAINS -A bad-dmz -p TCP -s $Any -d $Any --dport 61000:65095 -i $external -j ACCEPT $IPCHAINS -A bad-dmz -p TCP -s $Any -d $Any 1020:65535 -i $external -j ACCEPT ! -y $IPCHAINS -A bad-dmz -p TCP -s $Any -d $Any tcpmux:65535 -i $external -j DENY -y -l ### bad-dmz # Regra saida ipchains -A output -s $Any -d $Any -j ACCEPT ### Saida ipchains -D input 1 ipchains -D forward 1 ipchains -D output 1 # Fim! Quebra-Linha Colaborador..: Marcelo Giovanni Categoria(s).: Linux; Versão.......: 1.1 Data.........: 11/04/2002 15:20:17 Visualizado..: 518 vezes Fonte........: Infokeep
Marcelo Giovanni
Últimos Artigos deste colaborador PHP - Redirecionamento de URL - 04/09/2003 10:59:35 Initrd - Especificando modulos a serem carregados antes do boot - 04/07/2003 09:23:56 SQUID - Tamanho máximo de PUT/POST em uma página - 10/06/2003 10:31:18
Últimos Artigos desta categoria Incluir varios usuários Linux e Samba - 24/06/2009 16:46:39 Alterando IP´s dinamicos no firewall automaticamente - 24/07/2008 13:23:00 Importação de Texto puro para MySQL - 23/07/2007 17:14:16
29 pessoa(s) on-line neste site.