proxi squid 2.7+iptables

1. proxi squid 2.7+iptables

Francisco Cleyson G. Braz
medydal

(usa KUbuntu)

Enviado em 12/11/2009 - 11:42h

Bom dia Senhores!
Tenho umas duvidas cruéis, sou novo no linux e só usei na rede ate agora. Porem tive a incumbência de bloquear as maquinas da rede aqui do trabalho.

Minha duvidas são as seguintes;

estou com a versão Linux Mint7 gloria que é baseada do Ubuntu com kde 4.2.
Minha internet é via radio. e ligo o AP no servidor com um cabo de rede.
Não uso pppoe tenho um IP direto. A net no servidor esta Ok mas não vai pra rede que fica ligada numa segunda placa.
já estou pesquisando a dias e todo mundo só passa os arquivos squid.conf prontos, mas o que eu preciso é bloquear todos os sites e criar uma regras de liberação para algumas URLS e um site que usa ssl precisa passar fora do proxi assim como uma comunicação de banco de dados via sql.

Já comecei o proxi esta rodando tive uma luta danada pra liberar acesso a pop3 e smtp, mas já foi minha luta agora é para liberar um site para passar fora do proxi o site usa autenticação com senha (SSL2.0), e cheta ate a colocar senha e entrar, mas na hora que ele direciona para uma outra pagina dcs.fiasanet.com.br o proxi bloqueia ele. já coloquei esta url fora com o iptables mas num esta passando, segue meus scrips;

rc.local

#!/bin/bash

## limpa as tabelas das regras, nada a ser mudado aqui
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t filter -F
iptables -t filter -X
iptables -t mangle -F
iptables -t mangle -X

# Habilita roteamento
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

#libera URL para passar fora do proxi
iptables -t nat -I PREROUTING -s webvpn.portalfiat.com.br -p tcp --dport 80 -j RETURN
iptables -t nat -I PREROUTING -s webvpn01.portalfiat.com.br -p tcp --dport 80 -j RETURN
iptables -t nat -I PREROUTING -s webvpn02.portalfiat.com.br -p tcp --dport 80 -j RETURN
iptables -t nat -I PREROUTING -s dcs1.fiasanet.com.br -p tcp --dport 80 -j RETURN
iptables -t nat -I PREROUTING -s dcs.fiasanet.com.br -p tcp --dport 80 -j RETURN

# Habilita PROXY TRANSPARENTE

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128


# Portas abertas

iptables -A INPUT -p tcp --destination-port 22 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 491 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 53 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 3128 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 80 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 443 -j ACCEPT
iptables -A FORWARD -p tcp --dport 491 -j ACCEPT

# Libera portas pop3 e smtp

iptables -A FORWARD -p udp -s 192.168.7.0/24 -d 172.17.1.5 --dport 53 -j ACCEPT
iptables -A FORWARD -p udp -s 172.17.1.5 --sport 53 -d 192.168.7.0/24 -j ACCEPT
iptables -A FORWARD -p TCP -s 192.168.7.0/24 --dport 25 -j ACCEPT
iptables -A FORWARD -p TCP -s 192.168.7.0/24 --dport 110 -j ACCEPT
iptables -A FORWARD -p tcp --sport 25 -j ACCEPT
iptables -A FORWARD -p tcp --sport 110 -j ACCEPT


# Proteçs diversas contra portscanners, ping of death, ataques DoS, etc.
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j DROP
iptables -A FORWARD -p tcp -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD --protocol tcp --tcp-flags ALL SYN,ACK -j DROP
iptables -A FORWARD -m unclean -j DROP

# Abre para a interface de loopback.
iptables -A INPUT -i lo -j ACCEPT

# BLOQUEA O QUE NAO SE ENCAIXA NAS REGRAS ACIMA
iptables -A INPUT -p tcp --syn -j DROP
iptables -P FORWARD DROP

## FIM DO ARQUIVO ##

exit 0


squid.conf

#porta padrão

http_port 3128 transparent
visible_hostname zucavelBloqueadoPORCleyson
hierarchy_stoplist cgi-bin ?
cache_mem 256 MB
maximum_object_size_in_memory 1024 KB
maximum_object_size 1024 KB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid 600 16 256
cache_access_log /var/log/squid/access.log
ftp_user Squid@

#ACLS

acl all src 192.168.7.0/255.255.255.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # 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 25 # smtp
acl Safe_ports port 110 # pop3


########################## DECLARANDO AS ACLs #############################


# PCs com acesso total
acl acesso_total src "/etc/squid/acesso_total"
http_access allow acesso_total

#bloqueio do MSN
acl msn dst 207.46.110.0/24 207.46.104.0/24 64.4.13.0/24 192.168.7.0/24
http_access deny msn
acl bloqmessenger url_regex www.e-messenger.net webmessenger.msn.com
http_access deny bloqmessenger


#lista de bloqueios
acl bloqueado url_regex -i "/etc/squid/bloqueado"
http_access deny bloqueado

#lista de liberados
acl liberado url_regex -i "/etc/squid/liberado"
http_access allow liberado


############################# ATIVANDO AS ACLs ################################

acl redelocal src 192.168.7.0/24
http_access allow liberado
http_access deny bloqueado
http_access allow redelocal !msn
http_access deny all
error_directory /usr/share/squid/errors/Portuguese



o que pode estar errado?
eu ainda num tentei liberar o sql com banco de dados remoto. estou fazendo por etapas.
fico grato se poderem me dar uma força sou iniciante e estou lendo sobre o linux dia e noite, amor a primeira vista.



  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts