ruan
(usa Mandrake)
Enviado em 24/10/2008 - 12:20h
Olá!
Pessoal estou usando o firewall abaixo.
Está funcionando como deveria, bloqueia msn, sites,etc, mas o problema é no outlook, não está enviando e recebendo email, ja tentei várias alternativas e não consegui.
Se alguem puder me ajudar ficaria muito agradecido.
#!/bin/bash
echo
echo "=========================================="
echo "| :: SETTING IPTABLES'S CONFIGURATION :: |"
echo "=========================================="
### Passo 1: Limpando as regras ###
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
echo "Cleaning all rules .................[ OK ]"
# Definindo a Politica Default das Cadeias
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
echo "Setting default rules ..............[ OK ]"
### Passo 2: Desabilitar o trafego IP entre as placas de rede ###
echo "0" > /proc/sys/net/ipv4/ip_forward
echo "Setting ip_forward: OFF ............[ OK ]"
# Configurando a Protecao anti-spoofing
for spoofing in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo "1" > $spoofing
done
echo "Setting anti-spoofing protection ...[ OK ]"
# Impedimos que um atacante possa maliciosamente alterar alguma rota
echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects
echo "Setting anti-redirects .............[ OK ]"
# Utilizado em diversos ataques, isso possibilita que o atacante determine o "caminho" que seu
# pacote vai percorrer (roteadores) ate seu destino. Junto com spoof, isso se torna muito perigoso.
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
echo "Setting anti-source_route ..........[ OK ]"
# Protecao contra responses bogus
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
# Protecao contra ataques de syn flood (inicio da conexao TCP). Tenta conter ataques de DoS.
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
echo "Setting anti-synflood protection ...[ OK ]"
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
### Passo 3: Carregando os modulos do iptables ###
modprobe ip_tables
modprobe iptable_filter
modprobe iptable_mangle
modprobe iptable_nat
modprobe ipt_MASQUERADE
echo "Loading iptables's modules .........[ OK ]"
### Passo 4: Agora, vamos definir o que pode passar e o que nao ###
####################
# Cadeia de Entrada
# LOCALHOST - ACEITA TODOS OS PACOTES
iptables -A INPUT -i lo -j ACCEPT
# PORTA 80 (WEB) - ACEITA PARA A REDE LOCAL
iptables -A INPUT -i eth1 -p tcp --dport 80 -j ACCEPT
# PORTA 22 (SQUID) - ACEITA PARA A REDE LOCAL
iptables -A INPUT -i eth1 -p tcp --dport 22 -j ACCEPT
# PORTA 3389 (TS) - ACEITA PARA A REDE LOCAL
iptables -A INPUT -i eth1 -p tcp --dport 3389 -j ACCEPT
# No iptables, temos de dizer quais sockets sao validos em uma conexao
iptables -A INPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
echo "Setting rules for INPUT ............[ OK ]"
################################
# Cadeia de Reenvio (FORWARD).
# Primeiro, ativar o mascaramento (nat).
iptables -t nat -F POSTROUTING
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo "Activating IP Mask .................[ OK ]"
# Agora dizemos quem e o que podem acessar externamente
# No iptables, o controle do acesso a rede externa e feito na cadeia "FORWARD"
# COMPUTADOR DO CHEFE - ACEITA TODOS OS PACOTES
#iptables -A FORWARD -s 192.168.3.50 -j ACCEPT
# PORTA 3128 (SQUID) - ACEITA PARA A REDE LOCAL
iptables -A FORWARD -i eth1 -p tcp --dport 3128 -j ACCEPT
# Redireciona porta 80 para 3128 (SQUID)
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
# Redireciona porta 443 para 3128 (SQUID)
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 443 -j REDIRECT --to-port 3128
# PORTA 53 (DNS) - ACEITA PARA A REDE LOCAL
iptables -A FORWARD -i eth1 -p udp --dport 53 -j ACCEPT
# PORTA 110 (POP3) - ACEITA PARA A REDE LOCAL
iptables -A FORWARD -i eth1 -p tcp --dport 110 -j ACCEPT
iptables -A FORWARD -i eth1 -p udp --dport 110 -j ACCEPT
# PORTA 25 (SMTP) - ACEITA PARA A REDE LOCAL
iptables -A FORWARD -i eth1 -p tcp --dport 25 -j ACCEPT
iptables -A FORWARD -i eth1 -p udp --dport 25 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.0.0/24 -d 200.175.5.139 --dport 53 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.0.0/24 -d 200.175.89.139 --dport 53 -j ACCEPT
iptables -A FORWARD -p udp -s 200.175.5.139 --sport 53 -d 192.168.0.0/24 -j ACCEPT
iptables -A FORWARD -p udp -s 200.175.89.139 --sport 53 -d 192.168.0.0/24 -j ACCEPT
# PORTA 443 (IMAP) - ACEITA PARA A REDE LOCAL
iptables -A FORWARD -i eth1 -p tcp --dport 443 -j ACCEPT
# PORTA 995-587 (GMAIL) - ACEITA PARA A REDE LOCAL
iptables -A FORWARD -i eth1 -p tcp --dport 995 -j ACCEPT
iptables -A FORWARD -i eth1 -p tcp --dport 587 -j ACCEPT
# PORTA 1723 (VPN) - ACEITA PARA A REDE LOCAL
iptables -A FORWARD -i eth1 -p tcp --dport 1723 -j ACCEPT
# PORTA 901-137:139 - ACEITA PARA REDE LOCAL
iptables -A FORWARD -i eth1 -p tcp --dport 901 -j ACCEPT
iptables -A FORWARD -i eth1 -p tcp --dport 137:139 -j ACCEPT
# PORTA 81 (JNIMAGE) - ACEITA PARA REDE LOCAL
iptables -A FORWARD -i eth1 -p tcp --dport 81 -j ACCEPT
# PORTA 21 (FTP) - ACEITA PARA A REDE LOCAL
iptables -A FORWARD -i eth1 -p tcp --dport 21 -j ACCEPT
# No iptables, temos de dizer quais sockets sao validos em uma conexao
iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
echo "Setting rules for FORWARD ..........[ OK ]"
# Finalmente: Habilitando o trafego IP, entre as Interfaces de rede
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "Setting ip_forward: ON .............[ OK ]"
echo "Finished!! Firewall: OK! ...........[ OK ]"
echo "=========================================="
###############################################################
javanei@jupiter:~$ sudo cat /etc/squid/squid.conf
visible_hostname proxy
http_port 3128
emulate_httpd_log off
# Autenticação
auth_param basic program /usr/lib/squid/pam_auth
auth_param basic children 5
auth_param basic realm JAVANEI Proxy Server - Digite Nome e Senha Para Acesso
auth_param basic credentialsttl 2 hours
# PORTAS
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563 444
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 444 # https, snews
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 1494 # ICA
acl Safe_ports port 1863 # MSN
acl CONNECT method CONNECT
acl name proxy_auth REQUIRED
# Grupo de usuarios com acesso completo
acl usuarios_completos proxy_auth "/etc/squid/UsuariosCompleto"
# Grupo de usuarios que podem acessar a internet
acl usuarios_permitidos proxy_auth "/etc/squid/UsuariosPermitidos"
# Grupo com acesso completo
# Aqui vai os IPs dos médicos
#acl completo src 192.168.0.2
# REDES LIBERADAS (172.16.1.0/24, por exemplo)
acl redes_liberadas dst "/etc/squid/RedesLiberadas"
# REDES PROIBIDAS
acl redes_proibidas dst "/etc/squid/RedesProibidas"
# SITES (Dominios) LIBERADOS (.google.com.br, por exemplo)
acl sites_liberados dstdomain "/etc/squid/SitesLiberados"
# SITES PROIBIDOS
acl sites_proibidos dstdomain "/etc/squid/SitesProibidos"
# PALAVRAS LIBERADAS
acl palavras_liberadas url_regex "/etc/squid/PalavrasLiberadas"
# PALAVRAS PROIBIDAS
acl palavras_proibidas url_regex "/etc/squid/PalavrasProibidas"
# datamedical
acl usuarios_datamedical proxy_auth "/etc/squid/UsuariosDatamedical"
acl datamedical url_regex "/etc/squid/datamedical"
acl sites_usuarios_permitidos dstdomain "/etc/squid/sites_usuarios_permitidos"
http_access deny !name
# Permite os usuarios com acesso completo...
http_access allow usuarios_completos
# ... e bloqueia os usuarios que nao forem permitidos acesso
http_access allow usuarios_permitidos
# Inicio das liberacoes
#http_access allow completo
http_access allow redes_liberadas
http_access allow sites_liberados
http_access allow palavras_liberadas
# Inicio dos bloqueios
http_access deny redes_proibidas
http_access deny sites_proibidos
http_access deny palavras_proibidas
http_access allow usuarios_datamedical
http_access deny usuarios_permitidos !sites_usuarios_permitidos
#### REGRAS GERAIS ####
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny all
http_reply_access allow all
logfile_rotate 1
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_mem 100 MB
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
javanei@jupiter:~$
#####################
Obrigado.