SQUID + IPTABLES

Boa tarde pessoal da área de T.I :ok:

Tô com uma novidade aqui pra mim e não consigo resolver, o Outlook 2007, não consegue conectar ao provedor a baixar os e-mails, tudo funciona, menos a bosta do Outlook 2007, já até olhei nas configurações de LAN dele e tá como esperado, buscando a configuração de LAN do I.E ao configurar proxy.

Seguinte tô usando o Ubuntu 14.10(utopic) Squid 3.3.8 e Iptables 1.4.21 (Conjunto de Proxy e Firewall)

O Iptables está desativado ou seja ele por enquanto não tá bloquenado nada de nada que seja porta

[b]Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
root@Firewall:/etc/squid3#
[/b]
Já o meu Squid3, coloquei algumas regras e não sei se nessas regras alguma poderia está bloqueando.

Na minha rede o autenticador é o Server 2008R2 , o DHCP dele é o responsável por distribuir os ip’s por Mac Address(Questão de segurança interna) e não atribui a nenhuma máquina um gateway.

Por não ter um gateway definido, eu não consigo pingar nada para fora do roteador, então eu vejo que o Squid está trabalhando direito na camada 4 do TCP/IP(Aplicação), mas porque então o Outlook não aceita a configuração de Proxy e conecta ao POP e SMTP?

Eis o meu Squid.conf

Porta padrão do Squid

http_port 3128

#Portas seguras

acl SSL_ports port 443
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 CONNECT method CONNECT

Cache para o Squid3

cache_dir ufs /var/spool/squid3 9000 26 10

Negar solicitações para determinadas portas inseguras

http_access deny !Safe_ports

Negar CONNECT com excepção das portas SSL seguras

http_access deny CONNECT !SSL_ports

Apenas permitir o acesso cachemgr de localhost

http_access allow localhost manager
http_access deny manager

INSERIR CONDICIONAIS DE ACESSO

Bloqueando sites por palavras chave

acl bloqueados url_regex -i “/etc/squid3/sites_bloqueados.txt”

Liberando IP’s - sem filtros

acl ips_liberados src “/etc/squid3/ips_liberados.txt”

Liberando IP’s - com filtros

acl ips_restritos src “/etc/squid3/ips_restritos.txt”

Bloquear Downloads

acl extencoes urlpath_regex -i “/etc/squid3/extencoes.txt”

Bloqueios e Liberações de ACL’s

acl redelocal src 192.168.16.0/24
http_access deny extencoes
http_access deny bloqueados !ips_liberados
http_access allow ips_liberados
http_access allow ips_restritos
http_access deny redelocal
http_access allow localhost
http_access deny all

entradas refresh_pattern

refresh_pattern ^ftp: 120 20% 2280
refresh_pattern ^gopher: 120 0% 2280
refresh_pattern -i (/cgi-bin/|?) 0 0% 0
refresh_pattern (Release|Packages(.gz)*)$ 120 20% 2880
refresh_pattern . 0 20% 4320

Alguém pode me dar uma luz? :smiley:

Não adiantou eu dar um Forward para liberar portas no IPtables

Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT tcp – anywhere anywhere tcp dpt:pop3
ACCEPT tcp – anywhere anywhere tcp dpt:submission
ACCEPT tcp – anywhere anywhere tcp dpt:domain
ACCEPT udp – anywhere anywhere udp dpt:domain

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
root@Firewall:/etc/squid3#

O negócio é que o Outlook não precisa de proxy para usar internet, ele pega isso automaticamente das configurações de LAN que o Internet Explorer salva em configurações de rede/conexão, então o que mais poderia não me deixar passar? :ponder: :ponder: :ponder: :ponder:

http://www.icge.co.uk/languagesciencesblog/wp-content/uploads/2014/04/you_shall_not_pass1.jpg

Acredito eu que enquanto você não definir o gateway não irá funcionar.
Entendo que sem a informação de proxy, o Outlook não sabe para onde enviar as requisições de conexão.
Pode ser que funcione adicionando uma regra na tabela de roteamento de cada micro, indicando através de qual IP ele consegue acessar os servidores de email.

Algo assim:

endereço do seu micro: 192.168.1.1
servidor pop/SMTP : 208.84.1.1
firewall/gateway: 192.168.1.254

rota a ser adicionada em cada micro (pode ser por script):

route add -p 208.84.1.1 mask 255.255.255.0 192.168.1.254 IF 192.168.1.1

Não sei se a linha de comando está certa, pois não mecho regularmente com estas configurações.
Mas a ideia é a seguinte, o gateway é como um “ralo”. Qualquer endereço IP que não seja encaminhado por uma rota específica na tabela é “jogado” no gateway. Na sua situação, você não tem uma regra especifica e nem gateway… portanto o pacote não pode ser encaminhado para nenhum lugar.

Tente adicionar a regra, e vamos ver se funciona.

Flw :ok:

Na segunda-feira vou ver se dá certo, mas veja: assim como o browser(qualquer um deles), o Outlook trabalha na mesma camada de rede(camada 7), estão na camada de aplicação, e o transporte está sendo feito na camada 5(sessão), se eu faço um telnet para o endereço pop ou smtp usando as portas 110 e 587, eu consigo no servidor linux conectar ambas as contas, porém o mesmo não ocorre a partir do PC.

Então o problema não está na saída pelo proxy/firewall, o problema está ainda no PC/Outlook que não entende o proxy, acredito que ausência de Gateway no PC afeta, mas não sei de que modo faz isso com o Outlook, já que a camada dele é outra.

Uma coisa que testei e funcionou sem eu nem mexer foi o Teamviwer que é uma aplicação de dentro para fora, ou seja ele sozinho pegou as informações de proxy e autenticou-se no servidor deles, me permitindo entrar na minha rede de fora dela.

Outro que foi sucesso Utorrent, setei o proxy e passou…

Valeu pela dica, segunda vou ver isso direito :smiley:

Isso mesmo o rolo são nos PCS. Ate onde sei, a parte Proxy controla apenas as portas 80 e 443.
A parte Firewall controla as outras. Permitindo o acesso externo falta apenas o PC saber por onde ele vai acessar a internet. E é ai que entra a regra de roteamento que falei.
Eu tive uma situação parecida em um cliente enquanto ele usava uma linha SLDD. Ele usava o SLDD para conectar a filial com a matriz, e os PCS somente conseguiam acesso após acrescentar a linha de roteamento via script.

Mas o telnet não tem relação com o Outlook. Se nem o telnet alcança as portas remotas, tem outra coisa errada.
Desculpe-me, pois eu acabei de acordar, com enxaqueca e sono, se eu disser bobagem pode relevar, mas… eu vi que seu squid não está setando as portas que você citou como seguras, e negando todas as inseguras, é isso mesmo?

rs… já voltei pra me corrigir.
Esquece o que escrevi sobre o squid.

O caso parece ser mesmo redirecionamento, não? ==>

http://www.vivaolinux.com.br/topico/Servidores-Linux-para-iniciantes/Como-liberar-Outlook-no-Squid

http://www.vivaolinux.com.br/topico/Squid-Iptables/Outlook-nao-funciona-direito?pagina=04

Por enquanto tudo na empresa tá funcionando, estou fazendo testes só com meu PC, com isso não paro a empresa esse Proxy/Firewall será implementado futuramente, então posso fazer testes e testes que quem fica sem internet é só eu por enquanto…rsrsrs :smiley:

Voce está certíssimo o Proxy é só para aplicações web que usam http, https, usam name scopes para bloquear certos sites e tipos de arquivos, essa é a finalidade do proxy que vou colocar.

Já o Firewall vai ser mais complicado porque quero barra aplicações P2P, e serviços de streaming, então por isso estou deixando i Iptables por último porque a documentação dele é maior que a ficha corrida do Fernandinho Beira-mar. :smiley:

Se eu fizer algum input errado e parar a diretoria(que adora o Redtube :hysterical:), minha região glútea que vira janta. :o

Se puder na segunda ou outro dia, você topa fazer um acesso remoto e me mostrar como é isso que você me explicou?

É foda mesmo dormir e acordar pior do que no dia anterior… :hysterical:

Voce tem razão, mas o telnet foi feito do servidor proxy/firewall para as contas externas do UOL(meu mail service), e não do meu PC, o serviço não reconheceu o endereço, bem como o ping não sai.

Vou olhar isso das portas mas voce deve ter percebido já que eu coloquei ma excessão em:

Negar solicitações para determinadas portas inseguras

http_access deny !Safe_ports <----é como seu dicesse Bloqueia todas as portas EXCETO !Safe_ports

Toda a informação é válida até a mais redundante de todas, pois como em programação um ponto e vírgula fora muda a programação então as vezes a coisa mais boba que ninguém se ligou de ver, é que tá ferrando tudo.

Eu tô fazendo isso porque os abusos da internet na empresa já estão me trazendo prejuízos ao meu sossego, os donos estão arrancando os cabelos do orifício corrugoso anal de raiva já…tudo porque um link dedicado de 10mb de up e down tá topando banda por causa de torrent o dia todo e streamings de música, então fui gentilmente forçado sob aviso de morte que eu deveria acabar com a festa…

Bom a vida de T.I tem dessas glórias né…e me sinto agora o Batman…“Se Gothan precisa que eu seja o vilão eu serei o vilão!..que me persigam”…é mais ou menos isso aê que o Batman disso ao então Chefe Gordon… :smiley:

Se você tiver tempo e quiser me ajudar nisso fico agradecido! :ok:

Fabio, boa noite.

Pelo que entendi vc está fazendo as configurações do proxy na unha (pelos arquivos texto de configuração), para pequenas redes o processo é bem simples,

Quando a rede sofre problemas de trafego excessivo bloquear tudo na mão é um problema, pq muitos links são dinâmicos, tipo o demonho do faceb00k e zapzap (que estão usando pelo pc agora), fora o tempo que vc perde fazendo isso; testando, derrubando rede, etc… (e seu chefe respirando no seu cangote kkkk)

Uma solução que um amigo teve em uma grande empresa que trabalha foi instalar o PFSENSE, é baseado em FreeBSD, (licença BSD free), que faz o papel de roteador e firewall, além de possuir vários pacotes adicionais de serviços (Possui SQUID e Squid Guard) a instalação não é difícil, configuração toda baseada em ambiente gráfico, instalação de pacotes (services), além de gerar relatórios muito precisos e em tempo real.

Já dei umas fuçadas em um servidor trabalhando com 2 VPN´s com Firewall e Squid e fazendo redundância de link, na época a ultima vez que deram um boot nessa maquina foi a mais de um ano atrás, portanto o sistema é extremamente confiável desde que que se faça suas devidas configurações.

No site tu pode baixar, possui how to, forum, etc.
Na net tem muita documentação a respeito.

Espero ter colaborado.

Deutscher

Claro que ajudou Deutscher :ok:
Mas eu já sabia desse pfsense, o problema dele é esse ai mesmo que vc disse…muito vasto e cheio de add-on.

Esse trabalho todo é bom em mega corporações que tem vários usuário por andar ou em sub-nets, porque gerenciar cada nível apenas com Squid+Iptables, é certo dizer impossível.

Então esse programa nasceu dessa necessidade ele é isso que vc disse Roteador/Firewall e tem empresas especializadas em venda de software de segurança que só trabalham com a implementação do pfsense.

O meu caso é mais tranquilo até certo ponto porque o acesso a máquinas é restrito do tipo(usuário, não instala/desisntala, usuário não altera configs, etc…) tem todo uma política do server 2008 que barra algumas ações que poderiam facilmente burlar o squid+iptables, mas tem a bostinha dos macintosh’s que não se submetem as políticas do Server 2008.

Então decidi criar um “pequeno quintal”, na tentativa de minimizar o uso da internet que hoje é uma porta aberta ao mundo.

Se não fosse esse problema do Outlook que já tá um
arschloch
:assobi:, eu já teria implementado isso semana passada mesmo.

De qualquer forma posso ver o uso do Pfsense porque tô pensando em migrar tudo antes para maquinas virtuais, para o caso o PC(Ubuntu) parar de funcionar e eu tenha que refazer tudo do zero, é mais seguro.

Obrigado Deutscher :ok:

Tranquilo quanto ao acesso remoto, só não sei se conseguirei amanhã. Sobre Mac não aceitar Políticas, existe um software que lê e executa as politicas. O ruim é que ele é pago, mas certamente ele ira resolver seu problema.

E RedTube e afins… a hora que eles tomarem um prejuízo de US$ 3.000,00 por Ransonware eles vão chorar e querer culpar o FHC. :aua:

Fala Fabio!

É muito simples o PFSENSE, eu ja instalei uma vez pra ficar fuçando (quando eu tinha tempo) garanto que é muito mais fácil do que eu ja enfrentei no passado… eu comecei a fuçar em linux nas primeiras versões do Kernel, em meados de 92 se não me engano, na época existia o bom DOS 6.11 e a Scheiße do wind0w$ 3.1. Rodava um Debian em um 386 dx4 com 32mb de ram e era a coisa mais linda do mundo, mas tambem tudo era feito na unha, interface gráfica na época era para os fracos kkkk
Quando peguei ambientes maiores ai sofria, escrever scripts personalizados era demorado, polices, regras, etc era punk, na epoca nao existia o IPTABLES, era o IPCHAINS que hj foi melhorado para o tables, hj tudo esta automatizado, simples e fácil de fazer, basta estuda um pouco e meter as caras.

Os Addons dele sao simples, nao crie panico, pegue uma maquina simples, instale e fuce.

Sobre a Maçã com winserver, vc pode implementar um Samba, roda tudo transparente e o cidadão loga no server, se nao me engano o PFSENSE tbm faz isso.

Abs!

Ransomware se tiver um bom antivirus ele consegue detectar antes do bixo se auto ativar e sair encriptando o disco… :slight_smile:
O ideal é mesmo cortar o mal pela raiz! Deny All!

abs!

Para logar no Domínio e ter os respectivos acessos com permissões o MacOS já tem suporte nativo, ele loga independente se for Samba ou Windows. O que o Fábio necessita é uma forma de que o Mac leia e aplique as politicas de grupo que estão no AD ou no Samba. E para isso o MacOS não tem suporte, somente através de aplicativos de terceiros.

Bem, era assim a até um ano atrás. Pode ter mudado.

Flw

Pensei o mesmo não sei se hoje em dia há alguma ferramenta que una dois ou mais sistemas pela mesma regra. :ponder:

Bom, mas hoje vou ver se algumas das sugestões passadas pelos colegas vai me ajudar com o o Outlook.

Até o final do dia tenho que conseguir algo diferente! :wink:

ahhh rules…PFSENSE kkkk

UFA! CONSEGUI! :smiley:

Seguinte, pelo fato de não haver um gateway, eu lí que deveria deixar o kernel fazer o roteamento com:
echo 1 > /proc/sys/net/ipv4/ip_forward

Depois subir o modulo nat do iptables: modprobe iptable_nat

Ai então compartilhar a internet: iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Dai então era só configurar nas máquinas cliente o servidor Ubuntu como Gateway.

Passou batido o outlook! enviei e recebi meus e-mails… :smiley:

Bom agora para finalizar os testes eu preciso salvar o meu iptables e colocar essas regras para sempre carregarem junto a inicialização do sistema.

Mais tarde eu posto como ficou meu iptables, porque precisei deixar várias portas abertas para serviços de email, vou omitir todas como se o iptables estivesse zerado só para ver se alguma vai bloquear mesmo deixando o kernel rotear, se isso ocorrer libero as portas novamente e posto tudo aqui. :ok:

Era isso mesmo o Squid em nada atrapalha o Outlook o Iptables compartilha a internet através do roteamento pelo kernel

bastou eu colocar essas 3 linhas em um script e colocar para executar na inicialização do sistema e tá lá.

Squid bloqueando e Iptables filtrando e Outlook funcionando!

Meu script de inicialização foi: libera-internet.sh

#/----------------------------------------------------------/#

kernel faz o roteamento

echo 1 > /proc/sys/net/ipv4/ip_forward

Subir o modulo nat do iptables

modprobe iptable_nat

Compartilhar a internet

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

#/----------------------------------------------------------/#

Obrigado a todos os colegas que me ajudaram, fico muito agradecido! :worship:

Opa ! Parabéns por ter encontrado a solução. Eu acreditei que você já tinha configurado o firewall para roteamento, mas não queria setar isso em cada estação.

Mas é assim mesmo, o FW passa a ser o gateway da rede, papel que normalmente é assumido pelo modem adsl. Agora é uma questão de se entender com as configurações e colocar em produção.

:ok: