
Enviado em 15/05/2014 - 14:27h
Pessoal, boa tarde
#!/bin/sh
echo -e "\n Carregando rc.firewall...\n"
LSMOD=/sbin/lsmod
DEPMOD=/sbin/depmod
MODPROBE=/sbin/modprobe
INSMOD=/sbin/insmod
GREP=/bin/grep
AWK=/bin/awk
SED=/bin/sed
CUT=/bin/cut
IFCONFIG=/sbin/ifconfig
IPTABLES=/sbin/iptables
UNIVERSE="0.0.0.0/0"
EXTIF0="p4p1" #mesma coisa que eth0, que e' conectado no roteador
IPEXTIF0=192.168.1.49 #192.168.30.2
INTNET0=192.168.50.0/24
INTIF0="em1" #mesma coisa que eth1
INTNET1=192.168.51.0/24
INTIF1="em1.2"
echo -en "Carregando modulos: \n"
echo "\n Carregando e verificando se os modulos do kernel estao ok... \n"
$DEPMOD -a
echo "\n Habilitando forwarding...\n"
echo 1 > /proc/sys/net/ipv4/ip_forward
echo "\n Limpando as regras existentes e configurando a politica default para drop...\n"
$IPTABLES -P INPUT DROP
$IPTABLES -F INPUT
$IPTABLES -P OUTPUT DROP
$IPTABLES -F OUTPUT
$IPTABLES -P FORWARD DROP
$IPTABLES -F FORWARD
$IPTABLES -F -t nat
# Esvazia a drop-it chain... se ela existe.
if [ -n "`$IPTABLES -L | $GREP drop-it`" ]; then
$IPTABLES -F drop-it
fi
# Remove todas as chains definidas pelos usuarios.
$IPTABLES -X
#
# Zera todos os contadores do IPTABLES.
$IPTABLES -Z
echo "\n Protecao contra Ping of dead...\n"
$IPTABLES -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
echo "\n Criando um DROP chain...\n"
$IPTABLES -N drop-it
$IPTABLES -A drop-it -j LOG --log-level info
$IPTABLES -A drop-it -j REJECT
echo "\n Carregando regras INPUT...\n"
# A interfaces loopback é valida.
#
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A INPUT -p tcp --dport 20022 -j ACCEPT #ssh
$IPTABLES -A INPUT -p tcp --dport 10000 -j ACCEPT #webmin
$IPTABLES -A INPUT -p tcp --dport 901 -j ACCEPT #swat(samba)
#portas Squid
$IPTABLES -A INPUT -i $INTIF0 -p tcp --dport 3128 -j ACCEPT
#portas para o Samba
$IPTABLES -A INPUT -p udp --dport 137 -j ACCEPT
$IPTABLES -A INPUT -p udp --dport 138 -j ACCEPT
$IPTABLES -A INPUT -p tcp --dport 139 -j ACCEPT
#Permitindo acesso interno ao srvadmin da dell
$IPTABLES -A INPUT -i $INTIF0 -p tcp --dport 1311 -j ACCEPT
$IPTABLES -A INPUT -i $INTIF1 -p tcp --dport 1311 -j ACCEPT
$IPTABLES -A INPUT -i $INTIF0 -p tcp --dport 3128 -j ACCEPT
$IPTABLES -A INPUT -i $INTIF0 -p tcp --dport 3129 -j ACCEPT
$IPTABLES -A INPUT -i $INTIF1 -p tcp --dport 3128 -j ACCEPT
$IPTABLES -A INPUT -i $INTIF1 -p tcp --dport 3129 -j ACCEPT
# Permite algum trafego relacionado retornando para o servidor.
$IPTABLES -A INPUT -s $UNIVERSE -m state --state ESTABLISHED,RELATED -j ACCEPT
# Todas as regras nao explicitas e todas as outras entradas
# sao negadas e registradas no log.
#
$IPTABLES -A INPUT -j drop-it
echo "\n Carregando regras OUTPUT...\n"
# A interface loopback é valida.
#
$IPTABLES -A OUTPUT -o lo -j ACCEPT
# Qualquer pacote saindo da interface externa para algum lugar e valido.
#
$IPTABLES -A OUTPUT -o $EXTIF0 -j ACCEPT
$IPTABLES -A OUTPUT -o $INTIF0 -j ACCEPT
$IPTABLES -A OUTPUT -o $INTIF1 -j ACCEPT
# Todas as regras nao explicitas e todas as outras saidas
# sao negadas e registradas no log.
#
$IPTABLES -A OUTPUT -j drop-it
echo "\n Carregando regras FORWARD...\n"
$IPTABLES -A FORWARD -i $INTIF0 -o $EXTIF0 -s $INTNET0 -j ACCEPT
$IPTABLES -A FORWARD -i $INTIF1 -o $EXTIF0 -s $INTNET1 -j ACCEPT
$IPTABLES -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$IPTABLES -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$IPTABLES -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
$IPTABLES -t nat -A POSTROUTING -s 192.168.51.0/24 -o $EXTIF0 -j MASQUERADE
#Usado para libera a conexão da rede interna em1
$IPTABLES -t nat -A POSTROUTING -o $EXTIF0 -j MASQUERADE
$IPTABLES -t nat -A POSTROUTING -s 192.168.50.0/24 -j MASQUERADE
#roteamento para a VLAN geral em1.2
$IPTABLES -t nat -A POSTROUTING -s 192.168.51.0/24 -j MASQUERADE
#bloquear de um rede para a outra
$IPTABLES -A FORWARD -s 192.168.50.0/24 -d 192.168.51.0/24 -j DROP
$IPTABLES -A FORWARD -s 192.168.51.0/24 -d 192.168.50.0/24 -j DROP
#liberar para o servidor de uma vlan para outra somente a conexão do servidor
$IPTABLES -A FORWARD -s 192.168.50.0/24 -d 192.168.50.1 -j ACCEPT
$IPTABLES -A FORWARD -s 192.168.51.0/24 -d 192.168.51.1 -j ACCEPT
#Roteamento para o squid
$IPTABLES -t nat -A PREROUTING -i $INTIF0 -p tcp --dport 80 -j REDIRECT --to-port 3129
#
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
echo "\n Protecao contra Ping of dead...\n"
$IPTABLES -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
$IPTABLES -A FORWARD -p icmp --icmp-type echo-reply -m limit --limit 1/s -j ACCEPT
# Todas as regras nao explicitas e todos os outros direcionamentos ( forwards )
# sao negados e registradas no log.
$IPTABLES -A FORWARD -j drop-it
#### Regras NAT
echo "\n Carregando regras NAT...\n"
#
# Recommended minimum configuration:
#
acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1
acl redeCV src 192.168.50.0/24
acl redeGeral src 192.168.51.0/24
acl SSL_ports port 443 563 3128
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 901 # swat
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny to_localhost
#
http_access allow redeCV
http_access allow redeGeral
acl block_redes_sociais dstdomain "/etc/squid/block/redes_sociais"
http_access allow redeCV !block_redes_sociais
acl block_palavras url_regex -i "/etc/squid/block/palavras"
http_access deny block_redes_sociais
http_access deny block_palavras
http_access allow localhost
http_access deny all
#configuracoes gerais
http_port 3128
http_port 3129 intercept
visible_hostname srv_proxy
cache_mgr webmaster
error_directory /usr/share/squid/errors/pt-br
hosts_file /etc/hosts
dns_nameservers 8.8.8.8 8.8.8.4
hierarchy_stoplist cgi-bin ?
cache_mem 256 MB
maximum_object_size_in_memory 128 KB
cache_dir ufs /var/spool/squid 2040 16 256
coredump_dir /var/spool/squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320
maximum_object_size 200 MB
.facebook.com*
orkut
xxx
sexo
warez
torrent
[*****]
sex[^t]
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
Pisando no acelerador do Linux Mint: Kernel XanMod, zRAM e Ajustes de Swap
Como compilar kernel no Linux Mint
Lançamento do Brutal DOOM test 6
Consertando o erro no Brave de webgl
Solução para ter de volta as bordas e barra de títulos das janelas em zenity no Debian 13.x
Seno, Coseno, Tangente em CLIPPER (0)
Inserir uma URL num arquvo pelo Ubuntu (CLIPPER) (0)
VMWare Player não conecta na rede nem consigo intercambiar arquivos (1)









