Logo Hardware.com.br
romulopfarias
romulopfaria... Geek Registrado
3.3K Mensagens 24 Curtidas

Duvidas gerais Squid/XMPP/VPN/Ubuntu Server 7.10

#1 Por romulopfaria... 18/04/2008 - 00:24
Olá galera, vai ficar um post meio grande, mas é que tenho algumas várias dúvidas sobre o que estou tentando fazer no trabalho..

A rede, quando eu cheguei, estava toda liberada, tudo com IP fixo (25 máquinas tem na rede), uma máquina com Windows 2003 Server sem nada (apenas o roteador ligado nela, e ela dividindo acesso, como uma rede doméstica)... Minha tarefa inicial foi fazer o bloqueio de sites indesejados, msn, etc etc... Como está pra chegar um servidor novo (o "servidor" é um pentium 3 todo zuado).. eu peguei uma máquina nova (x2 4000+, 2x 512 DDR2, HD Sata 80Gb), e coloquei o Ubuntu Server 7.10... coloquei o Squid nele, e coloquei um servidor DHCP nele, e registrei o MAC de todas as máquinas na rede nele, de forma a fornecer IP por DHCP, porém Ip fixo, igual estava antes, por nao ter mexido no servidor atual...

Resolvi nao botar a mão no que já está feito lá... fiz apenas uma "intervenção" e redirecionei o tráfego para o meu servidor Linux, e o Linux passa pro servidor atual.. configurei como proxy transparente (redirecionamento de porta 80), embora andei lendoa qui que muitos não concordam com isso.. .mas bem depois que chegar o server mesmo e eu colocar o AD... vou criar GPO para configurar os clientes para automaticamente pegar o proxy..

Mas bem, ta tudo rodando beleza.. meu Squid.conf eu posto aqui depois hehe aos poucos ta ficando bem completinho... Bloqueando radios online, orkut, msn (infelizmente o hotmail foi junto, mas foi aprovado pela chefia, entao beleza), google talk (web, client e via e-mail, sem perder o e-mail do gmail), youtube, e coloquei bloqueio de malware tambem, com atualizacao a cada 4 horas do site (www.malware.com.br, bastante interessante o projeto), e bloqueiod e algumas portas no IPtables, mas até então a config ta como "libera tudo e bloqueia o necessario", tendo em vista que ainda nao fiz um estudo mais aprofundado pra saber quais portas são usadas e tal.

Bem, a empresa tem algumas filiais... e eu vou colocar um servidor linux em cada filial.. minha idéia era fazer uma VPN permantente entre eles, de forma a poder fazer uma gerencia remota de todas as filiais, e configurar por questoes de seguranca, acesso somente pela "rede local", no caso a da VPN, de forma que toda vez que eu mudar alguma coisa no meu script do Squid, ao inves de dar um "squid -k reconfigure", eu rodo um script que troca os arquivos de cada servidor remoto e manda reconfigurar tudo...

A parada foi que eu apanhei feio pra conseguir fazer o Hamachi rodar (achei ele mais simples, na idéia principal... ja usava aqui em casa pra jogar, era bem o que eu queria, simplesmente uma interface de rede criando uma rede somente entre as máquinas que estiverem na "sala"... acontece que nao consegui fazer funfar por nada no mundo.. vários tutoriais e tal.. instalei, mas na hora do "hamachi login" ele simplesmente nao conecta.. Dai vou tentar depois fazer essa VPN.. até então, nao fiz nenhum server pras filiais, devo ir na semana que vem nas filiais pra fazer tudo... Vai ser uma coisa basica.. PC com 2 placas de rede, modem do velox entrando em uma, e na outra o cabo indo pro switch.. até entao vou fazer via SSH, com o putty e tal, as a questao da VPN era mais por outro motivo.. queria colocar um Servidor XMPP, e colocar um client interno pra rodar na empresa... Mas queria comunicação com as filiais, de forma a fazer uma grande rede de contatos.. todo mundo podendo adicionar todo mundo de qualquer filial, de forma bem transparente... Mas acredito que para isso precisaria fazer a VPN funcionar, pra criar uma interface de rede virtual, pois nao sei se dá pra centralizar esse tipo de coisa pela internet..


Outra coisa é com o bloqueio de portas.. chegando o servidor novo, e quando eu fizer as configs a partir do zero em tudo... quero fazer a política "bloqueia tudo e libera o necessário", mas queria poder sniffar a rede pra descobrir quais sao as portas utilizadas para saida (tem uns programas que soa usados), a primeira alternativa foi tentar snifar a partir do meu computador la, porém é tudo via Switch, e nao funcionou o sniffer... Agora pensei numa outra coisa, nao sei se funciona... Posso configurar no meu atual gateway de internet (tudo passa por ele, e a partir dai vai para o servidor ja existente la), para gerar um log de todas as conexoes efetuadas por alguns IPs em específico, mostrando portas e tal, para depois eu poder ver o que foi conectado? Da mesma forma, tem um cara enjoado que fica tentando burlar o bloqueio todo dia... Eu vou pra lá a tarde, por causa da facul de manha.. dai eu chego a tarde, vejo que o cara da manha acessou por algum site via Ip (meebo, etc etc), dai eu vou, adiciono o IP no bloqueio, procuro semelhantes, e beleza.... no ouitro dia aparece outro... passei hoje pros supervisores a respeito disso, mandaram eu continuar bloqueando, e guardando os logs.. O dia que minha paciencia estourar, faço um relatorio detalhando mostrando todos os acessos a sites indevidos, mostrando a intenção de furar o bloqueio, e o cara vai tomar uma advertencia (quando eu coloquei o bloqueio pra rodar, foi feito um comunicado interno avisando que foi feito o bloqueio de tudo que nao é relativo ao trabalho, e que independente de quem fosse pego burlando, seria advertido)... (o que eu gosto nessa empresa que eu to, é que no meu caso, o setor de informatica, onde eu sou o admin do servidor, o chefe do setor de info mesmo, eu tenho contato direto com a chefia, e sou subordinado somente ao diretor geral e o diretor administrativo, tudo que eu precisar, falo com o diretor administrativo, sobre condutas a serem tomadas etc etc.. e quando preciso tenho acesso à diretoria geral.. gosto dessa independencia com relação a outros setores)

No mais, tenho como mandar o iptables gerar um log com TUDO que sair e chegar para determinados hosts? vou mandar sniffar 3 computadores que acessam esses programas em especial, e queria saber quais portas sao usadas para sair, e chegar... de modo a bloquear todas as outras, so deixando essas abertas



No caso, o que vocês acham de um Pentinum 4 2,4GHz, 2x 256 DDR333, HD 80Gb ATA100, 2x 100Mbps, para receber o link da internet por uma porta, e colocar a outra porta no switch? deixando toda a rede "separada" da internet, inclusive colocando o Servidorzão no switch junto com os outros, rodando o Ubuntu Server 7.10 c/ Squid, e 2003 Server c/ AD, DHCP, WSUS..

Pensei no seguinte: Todas as maquinas da rede, vao ser configuradas por DHCP c/ IP fixo pelo 2003 server, e com gateway para o P4... dai se for requisição para porta 80 (tentando sair direto para a internet), redireciona para o IP do Linux c/ o Squid, e de lá vai pro gateway, e dai sim autorizado..

ou entao todas as maquinas mandando a conexao para o Squid, e de lá para o proxy... nao sei direito ainda como fazer do melhor jeito possivel =/



num falei? topico gigante =///
joao_douglas
joao_douglas Super Participante Registrado
965 Mensagens 19 Curtidas
#2 Por joao_douglas
18/04/2008 - 17:03
Ola, não sou nenhum expert em linux, na verdade estou estudando e muitomas deixa eu ver se consigo te ajudar um pouco
Que tem como o iptables logar tudo o que entra e sai tem sim, a duvida que me surgio é a seguinte como esta a sua rede:
squid->2003->rede
ou squid->rede (incluindo o 2003) ?
acho que isso vai fazer uma grande diferença na hora de criar as regras.
Outro ponto é mais facil mesmo do gateway pegar todas as portas (ate porque são essas as portas pra se comunicar com a internet) um program super simples é o iptraf (não vai de dar detalhes mirabolantes) mas vai te dizer as portas utilizadas, ele tb cria log, e com um dia de log acho que vc vai ter (ou tudo ou pelo menos a grande parte do que é usando na empresa)
Como sou iniciante pensei em algo mais ou menos assim:

iptables -A INPUT -p tcp --dport 20:65000 -j LOG

e usar a mesma regra para as tabelas OUTPUT e FORWARD agora acredito que esse log vai ficar monstruoso, o mais facil e simples seria fazer uma auditoria dos programas utilizados na empresa e verificar as portas que eles usam. Como estou aprendendo por favor se escrevi besteira me corrija assim aprendo um pouco mais e da forma correta.
Abraços e boa sorte (espero ter ajudado um pouco)
João Douglas
bebi_demais.gif
jqueiroz
jqueiroz Cyber Highlander Registrado
104K Mensagens 5.7K Curtidas
#3 Por jqueiroz
18/04/2008 - 20:39
Bloqueando radios online, orkut, msn (infelizmente o hotmail foi junto, mas foi aprovado pela chefia, entao beleza)

Tem como fazer o bloqueio só do MSN.

Bem, a empresa tem algumas filiais... e eu vou colocar um servidor linux em cada filial.. minha idéia era fazer uma VPN permantente entre eles, de forma a poder fazer uma gerencia remota de todas as filiais, e configurar por questoes de seguranca, acesso somente pela "rede local", no caso a da VPN, de forma que toda vez que eu mudar alguma coisa no meu script do Squid, ao inves de dar um "squid -k reconfigure", eu rodo um script que troca os arquivos de cada servidor remoto e manda reconfigurar tudo...

A parada foi que eu apanhei feio pra conseguir fazer o Hamachi rodar (achei ele mais simples, na idéia principal... ja usava aqui em casa pra jogar, era bem o que eu queria, simplesmente uma interface de rede criando uma rede somente entre as máquinas que estiverem na "sala"... acontece que nao consegui fazer funfar por nada no mundo.. vários tutoriais e tal.. instalei, mas na hora do "hamachi login" ele simplesmente nao conecta.. Dai vou tentar depois fazer essa VPN.. até então, nao fiz nenhum server pras filiais, devo ir na semana que vem nas filiais pra fazer tudo... Vai ser uma coisa basica.. PC com 2 placas de rede, modem do velox entrando em uma, e na outra o cabo indo pro switch.. até entao vou fazer via SSH, com o putty e tal, as a questao da VPN era mais por outro motivo.. queria colocar um Servidor XMPP, e colocar um client interno pra rodar na empresa... Mas queria comunicação com as filiais, de forma a fazer uma grande rede de contatos.. todo mundo podendo adicionar todo mundo de qualquer filial, de forma bem transparente... Mas acredito que para isso precisaria fazer a VPN funcionar, pra criar uma interface de rede virtual, pois nao sei se dá pra centralizar esse tipo de coisa pela internet..


Eu sugiro que você use o OpenVPN. É muito simples de configurar e muito eficiente.

Como suas máquinas Linux serão os gateways de sua rede, não vai precisar de nenhuma grande alteração nas outras, pra você poder trabalhar com as redes como se fossem diretamente conectadas.

Só é preciso ter um cuidado: cada filial terá que usar uma faixa de IPs diferente, ou senão você não vai poder acessar os pontos remotos.

Outra coisa é com o bloqueio de portas.. chegando o servidor novo, e quando eu fizer as configs a partir do zero em tudo... quero fazer a política "bloqueia tudo e libera o necessário", mas queria poder sniffar a rede pra descobrir quais sao as portas utilizadas para saida (tem uns programas que soa usados), a primeira alternativa foi tentar snifar a partir do meu computador la, porém é tudo via Switch, e nao funcionou o sniffer... Agora pensei numa outra coisa, nao sei se funciona... Posso configurar no meu atual gateway de internet (tudo passa por ele, e a partir dai vai para o servidor ja existente la), para gerar um log de todas as conexoes efetuadas por alguns IPs em específico, mostrando portas e tal, para depois eu poder ver o que foi conectado? Da mesma forma, tem um cara enjoado que fica tentando burlar o bloqueio todo dia... Eu vou pra lá a tarde, por causa da facul de manha.. dai eu chego a tarde, vejo que o cara da manha acessou por algum site via Ip (meebo, etc etc), dai eu vou, adiciono o IP no bloqueio, procuro semelhantes, e beleza.... no ouitro dia aparece outro... passei hoje pros supervisores a respeito disso, mandaram eu continuar bloqueando, e guardando os logs.. O dia que minha paciencia estourar, faço um relatorio detalhando mostrando todos os acessos a sites indevidos, mostrando a intenção de furar o bloqueio, e o cara vai tomar uma advertencia (quando eu coloquei o bloqueio pra rodar, foi feito um comunicado interno avisando que foi feito o bloqueio de tudo que nao é relativo ao trabalho, e que independente de quem fosse pego burlando, seria advertido)... (o que eu gosto nessa empresa que eu to, é que no meu caso, o setor de informatica, onde eu sou o admin do servidor, o chefe do setor de info mesmo, eu tenho contato direto com a chefia, e sou subordinado somente ao diretor geral e o diretor administrativo, tudo que eu precisar, falo com o diretor administrativo, sobre condutas a serem tomadas etc etc.. e quando preciso tenho acesso à diretoria geral.. gosto dessa independencia com relação a outros setores)

No mais, tenho como mandar o iptables gerar um log com TUDO que sair e chegar para determinados hosts? vou mandar sniffar 3 computadores que acessam esses programas em especial, e queria saber quais portas sao usadas para sair, e chegar... de modo a bloquear todas as outras, so deixando essas abertas


Se você sniffar no servidor de compartilhamento, vai pegar todo o tráfego direcionado à internet.

Minha sugestão, no caso, é que você filtre esse sniff, de forma a pegar apenas o "three-way handshake", que é a sequência inicial da conexão tcp. Assim você sabe pra onde o alvo conectou, e se o destino respondeu. Depois, com elementos suficientes, você pode concentrar em um ou mais destinos, sem perder muito tempo (e espaço, os traces ocupam muito espaço em disco) com coisas irrelevantes.

No caso, o que vocês acham de um Pentinum 4 2,4GHz, 2x 256 DDR333, HD 80Gb ATA100, 2x 100Mbps, para receber o link da internet por uma porta, e colocar a outra porta no switch? deixando toda a rede "separada" da internet, inclusive colocando o Servidorzão no switch junto com os outros, rodando o Ubuntu Server 7.10 c/ Squid, e 2003 Server c/ AD, DHCP, WSUS..

Pensei no seguinte: Todas as maquinas da rede, vao ser configuradas por DHCP c/ IP fixo pelo 2003 server, e com gateway para o P4... dai se for requisição para porta 80 (tentando sair direto para a internet), redireciona para o IP do Linux c/ o Squid, e de lá vai pro gateway, e dai sim autorizado..

ou entao todas as maquinas mandando a conexao para o Squid, e de lá para o proxy... nao sei direito ainda como fazer do melhor jeito possivel =/


Veja só: a máquina que carrega nossa rede nas costas, aqui, é um P3-1000 com 1GiB de RAM. São 500 máquinas na nossa rede, incluindo impressoras (que ficam numa faixa de IPs diferenciada).

Esse firewall (bridge) ainda roda o NTOP e o Snort. A carga média do sistema é 0.5. O Squid, no entanto, fica em outra máquina. Usamos o proxy configurado, em hierarquia com a nossa matriz, e recentemente configurei o WPAD, em nossa rede.

Sobre a topologia, sugiro que a nova máquina Linux seja o único gateway. Mantenha o servidor Win2k3, mas tire todas as funções de roteamento dele --- deixe-o fazer o que ele sabe fazer direito. Ligue todas as máquinas diretamente aos swiches.
"chmod 777 nunca ajudou ninguém" (c) 2002-2021 JQueiroz/FGdH
Conheça o Blog do Zekke
romulopfarias
romulopfaria... Geek Registrado
3.3K Mensagens 24 Curtidas
#4 Por romulopfaria...
22/04/2008 - 21:46
jqueiroz disse:
Tem como fazer o bloqueio só do MSN.


Tem? Como que é feito? Pelo que eu li, não achei nenhuma alternativa, usando somente o Squid.. Estava lendo que até a versão 7.5, era só bloquear o acesso da gateway.dll, mas na versão 8, se ele não consegue acesso normal, ele tenta pelas portas 80 e 443, tentando logar ao passport... Imaginei o bloqueio com o Isa Server.. fica uma solução boa? O Iptables como front-end, pra filtrar tentativas de invasão, etc etc.. o Isa server como firewall interno da rede, e o Squid como web-cache?


Eu sugiro que você use o OpenVPN. É muito simples de configurar e muito eficiente.

Como suas máquinas Linux serão os gateways de sua rede, não vai precisar de nenhuma grande alteração nas outras, pra você poder trabalhar com as redes como se fossem diretamente conectadas.

Só é preciso ter um cuidado: cada filial terá que usar uma faixa de IPs diferente, ou senão você não vai poder acessar os pontos remotos.


Como que funciona? Tentei ler a respeito, mas acabei me perdendo nas configurações.. acho que a principio, vou colocar uma regra pra impedir conexões TCP de se iniciarem, e liberar uma porta que eu vou atribuir ao SSH (diferente da 22), dai vou poder acessar remotamente, e posteriormente vou instalar o OpenVPN (havia tentado o Hamachi, mas cansei depois de tomar muita surra.. vi muita gente em foruns do proprio Ubuntu relatando que nao funcionava... simplesmente ele nao conecta)..


Se você sniffar no servidor de compartilhamento, vai pegar todo o tráfego direcionado à internet.

Minha sugestão, no caso, é que você filtre esse sniff, de forma a pegar apenas o "three-way handshake", que é a sequência inicial da conexão tcp. Assim você sabe pra onde o alvo conectou, e se o destino respondeu. Depois, com elementos suficientes, você pode concentrar em um ou mais destinos, sem perder muito tempo (e espaço, os traces ocupam muito espaço em disco) com coisas irrelevantes.


Acho que vou ir nas máquinas que utilizam serviços online, e sniffar pessoalmente elas, capturando portas e tal..

Ou então, eu tenho como filtrar no meu firewall/web-cache, qualquer conexão de umd eterminado host? Por exemplo se eu der um tail -f no access.log do squid, com grep no ip desejado, eu consigo ver em tempo real todas as conexões TCP porta 80 que ele fez.. tem algo do tipo para eu verificar todos os acessos dele a internet?

Veja só: a máquina que carrega nossa rede nas costas, aqui, é um P3-1000 com 1GiB de RAM. São 500 máquinas na nossa rede, incluindo impressoras (que ficam numa faixa de IPs diferenciada).

Esse firewall (bridge) ainda roda o NTOP e o Snort. A carga média do sistema é 0.5. O Squid, no entanto, fica em outra máquina. Usamos o proxy configurado, em hierarquia com a nossa matriz, e recentemente configurei o WPAD, em nossa rede.

Sobre a topologia, sugiro que a nova máquina Linux seja o único gateway. Mantenha o servidor Win2k3, mas tire todas as funções de roteamento dele --- deixe-o fazer o que ele sabe fazer direito. Ligue todas as máquinas diretamente aos swiches.



Bem, como havia comentado la em cima.. a idéia é deixar o linux com o iptables como front-end, para ele evitar as invasões externas.. e dentro da rede, o ISA Server, pois li a respeito, que ele de fato é uma solução bem mais parruda para um firewall de rede (e o iptables é mais parrudo pra "segurar a onda" de tentativas de invasão, etc etc), e que o squid é mais eficiente que o ISA como web-proxy.. Pelo fato de o ISA rodar como client em cada maquina, posso bloquear aplicativos diretamente, e liberar o tráfego à internet...

Valeu de montão jqueiroz!!!!
x2 3800+ @ 4600+
2x 1024 Markvision 800 5-5-5-18 CR1
Abit KN9S
PNY Verto 9600GT 512/256 e_o_amor.gif
Spire Rocketeer III 500w
Motorola K1 GSM/VIVO
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal