Liberando vídeos específicos do YouTube com e2guardian + Squid utilizando interceptação SSL

Neste artigo ensinarei como liberar vídeos específicos do YouTube com e2guardian + Squid, utilizando interceptação SSL para capturar URLs necessárias.

[ Hits: 42.607 ]

Por: Renato Carneiro Pacheco em 16/04/2015


Criando as chaves da CA



Como foi explicado anteriormente, as chaves são extremamente necessárias para realizar as interceptações SSL. Vamos criar as chaves pública e privada da CA e uma chave privada do servidor e2guardian:

# mkdir /etc/e2guardian/keys
# cd /etc/e2guardian/keys
# openssl genrsa 4096 > myroot.pem##Cria a chave privada da CA. Ponha a senha que quiser...
# openssl req -new -x509 -days3650 -key myroot.pem -out cacert.crt   ##Cria a chave pública da CA. Utilize a senha criada para assinar o certificado.
# openssl genrsa 4096 > privatekey.pem ##Cria a chave privada do servidor e2guardian para utilizar em todos os certificados gerados

Não seria legal digitar a senha toda vez que o serviço do e2guardian inicializar. Então, vamos remover as senhas das chaves:

# openssl rsa < myroot.pem > cakey.pem
# openssl rsa < privatekey.pem > e2guardian.key

Basta digitar a senha de cada uma delas e ficarão sem senha. Não vamos esquecer de converter o certificado da CA para o formato DER, pois os navegadores do Windows (mais precisamente do IE) não aceitam o certificado no formato PEM:

# openssl x509 -in cacert.crt -outform DER -out cacert.der

Distribua este certificado no formato DER para os usuários adicionarem em seus navegadores. Isto evitará de mostrar o aviso de erro de certificado na máquina do usuário. Se não souberem como fazer, há diversos tutoriais na Internet que ensinam o procedimento.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Proxy: SSL autêntico x SSL Man-in-the-Middle
   3. e2guardian: fork do Dansguardian
   4. Instalação da parafernália
   5. Criando as chaves da CA
   6. Configurando e2guardian e Squid
   7. Interceptando as conexões SSL do YouTube
   8. Conclusão
Outros artigos deste autor

Iniciando seu Linux através do NTLoader do Windows 2000/XP

Leitura recomendada

ECache - O cache efetivo

Squid 2.6 + HTB-tools com cache full

Direcionando log Squid para banco MySQL

Proxy Squid com autenticação + Sarg + Webmin

Proxy transparente com Squid 2.6 e FWBuilder

  
Comentários
[1] Comentário enviado por fabio em 16/04/2015 - 15:59h

Baita artigo! Favoritado.

[2] Comentário enviado por tiaguera em 18/04/2015 - 12:11h

luz no fim do túnel! faço a mesma coisa com sslbump no freebsd, mas ele tem algumas limitações q me irritam (funciona em squid antigo apenas e nao funciona em proxy transparente)... vou testar o e2guardian e ver se ta valendo migrar... obrigado!

[3] Comentário enviado por olivam em 19/04/2015 - 00:43h

amigo como ficaria o redirecionamento da porta 443 no iptables. ou não funciona em proxy transparente?


Olivam C Moraes
Seja Livre use Linux!

[4] Comentário enviado por renato_pacheco em 19/04/2015 - 12:36h


[2] Comentário enviado por tiaguera em 18/04/2015 - 12:11h

luz no fim do túnel! faço a mesma coisa com sslbump no freebsd, mas ele tem algumas limitações q me irritam (funciona em squid antigo apenas e nao funciona em proxy transparente)... vou testar o e2guardian e ver se ta valendo migrar... obrigado!


Cara, eu já testei no squid e funciona das duas formas (autenticada e transparente). O problema do squid é a sua filtragem q não tem um bom desempenho. Por isso optei pelo e2guardian.

[5] Comentário enviado por renato_pacheco em 19/04/2015 - 14:16h


[3] Comentário enviado por olivam em 19/04/2015 - 00:43h

amigo como ficaria o redirecionamento da porta 443 no iptables. ou não funciona em proxy transparente?


Olivam C Moraes
Seja Livre use Linux!


Eu tenho certeza q funciona, só não me lembro se tem q modificar algo no e2guardian.conf...

[6] Comentário enviado por olivam em 19/04/2015 - 21:28h


[5] Comentário enviado por renato_pacheco em 19/04/2015 - 14:16h


[3] Comentário enviado por olivam em 19/04/2015 - 00:43h

amigo como ficaria o redirecionamento da porta 443 no iptables. ou não funciona em proxy transparente?


Olivam C Moraes
Seja Livre use Linux!

Eu tenho certeza q funciona, só não me lembro se tem q modificar algo no e2guardian.conf...


estou utilizando squid 3.4 com sslbump +dansguardian-2.10.1.1 +slackware 14.1 só que as vezes trava o squid e tenho que dar um killall no squid e startar para voltar a funcionar, seria ótimo um tutorial e2guardian+squid com proxy transparente incluindo as regra utilizadas do iptables, redirecionando as portas 80,8080 e 443 para o e2guardian e usar o squid para fazer somente cache, deixando todo trabalho de filtragem http e https para o e2guardian.

Parabéns pelo Ótimo artigo...

é uma luz no fim do túnel para quem quer filtrar https (youtube e facebook).

Olivam C Moraes
Seja Livre use Linux!

[7] Comentário enviado por removido em 21/04/2015 - 22:38h


Ótimo artigo!

[8] Comentário enviado por renato_pacheco em 22/04/2015 - 14:16h


[6] Comentário enviado por olivam em 19/04/2015 - 21:28h


[5] Comentário enviado por renato_pacheco em 19/04/2015 - 14:16h


[3] Comentário enviado por olivam em 19/04/2015 - 00:43h

amigo como ficaria o redirecionamento da porta 443 no iptables. ou não funciona em proxy transparente?


Olivam C Moraes
Seja Livre use Linux!

Eu tenho certeza q funciona, só não me lembro se tem q modificar algo no e2guardian.conf...

estou utilizando squid 3.4 com sslbump +dansguardian-2.10.1.1 +slackware 14.1 só que as vezes trava o squid e tenho que dar um killall no squid e startar para voltar a funcionar, seria ótimo um tutorial e2guardian+squid com proxy transparente incluindo as regra utilizadas do iptables, redirecionando as portas 80,8080 e 443 para o e2guardian e usar o squid para fazer somente cache, deixando todo trabalho de filtragem http e https para o e2guardian.

Parabéns pelo Ótimo artigo...

é uma luz no fim do túnel para quem quer filtrar https (youtube e facebook).

Olivam C Moraes
Seja Livre use Linux!


Olivam,

Retiro o q disse! Por enquanto, o e2guardian não funciona como HTTPS transparente, somente HTTP transparente. Falei com o desenvolvedor e ele confirmou.

[9] Comentário enviado por SephirothHG em 01/04/2016 - 10:33h

Parabéns pelo artigo, Renato!

Estou tendo um problema, onde o serviço do e2guardian falha se a variável cacertificatepath estiver descomentada no arquivo e2guardian.conf.
Criei o certificado conforme o artigo e coloquei o caminho para o mesmo na variável.

[10] Comentário enviado por renato_pacheco em 01/04/2016 - 14:59h


[9] Comentário enviado por SephirothHG em 01/04/2016 - 10:33h

Parabéns pelo artigo, Renato!

Estou tendo um problema, onde o serviço do e2guardian falha se a variável cacertificatepath estiver descomentada no arquivo e2guardian.conf.
Criei o certificado conforme o artigo e coloquei o caminho para o mesmo na variável.


Dê uma olhada se o dono do diretório é o usuário e2guardian e grupo e2guardian. Caso não dê certo, execute o e2guadian assim: e2guardian -N. Ele vai mostrar alguma coisa pra vc, caso haja algum problema.

[11] Comentário enviado por SephirothHG em 06/04/2016 - 11:19h


[10] Comentário enviado por renato_pacheco em 01/04/2016 - 14:59h


[9] Comentário enviado por SephirothHG em 01/04/2016 - 10:33h

Parabéns pelo artigo, Renato!

Estou tendo um problema, onde o serviço do e2guardian falha se a variável cacertificatepath estiver descomentada no arquivo e2guardian.conf.
Criei o certificado conforme o artigo e coloquei o caminho para o mesmo na variável.


Dê uma olhada se o dono do diretório é o usuário e2guardian e grupo e2guardian. Caso não dê certo, execute o e2guadian assim: e2guardian -N. Ele vai mostrar alguma coisa pra vc, caso haja algum problema.


Muito obrigado pela resposta, Renato!

Demorei pra ver a sua resposta, pois achava que o VOL notificava quando houvesse comentários onde postei, daí fiquei esperando.

Sinceramente, não sei o que fiz, mas o e2guardian subiu sem falhas.
Porém, ao tentar acessar o vídeo que deveria estar liberado (ou qualquer outra página do youtube) recebo a mensagem de erro de "Falha na Conexão Segura" (SSL_ERROR_RX_RECORD_TOO_LONG)

Nos logs do e2guardian, aparece a seguinte mensagem:
"https://www.youtube.com:443 *DENIED* Failed to negotiate ssl connection to client CONNECT 0 0 SSL SITE 1 200 - Grupo padrão - - "

Alguma ideia do que possa ser?

Desculpe se estou sendo inoportuno, mas a quantidade de informações sobre o e2guardian na internet é bem pobre, e o seu artigo é a fonte de informação mais completa que encontrei.

[12] Comentário enviado por renato_pacheco em 06/04/2016 - 11:41h


Muito obrigado pela resposta, Renato!

Demorei pra ver a sua resposta, pois achava que o VOL notificava quando houvesse comentários onde postei, daí fiquei esperando.

Sinceramente, não sei o que fiz, mas o e2guardian subiu sem falhas.
Porém, ao tentar acessar o vídeo que deveria estar liberado (ou qualquer outra página do youtube) recebo a mensagem de erro de "Falha na Conexão Segura" (SSL_ERROR_RX_RECORD_TOO_LONG)

Nos logs do e2guardian, aparece a seguinte mensagem:
"https://www.youtube.com:443 *DENIED* Failed to negotiate ssl connection to client CONNECT 0 0 SSL SITE 1 200 - Grupo padrão - - "

Alguma ideia do que possa ser?

Desculpe se estou sendo inoportuno, mas a quantidade de informações sobre o e2guardian na internet é bem pobre, e o seu artigo é a fonte de informação mais completa que encontrei.


Cara, tá tranquilo, tá favorável! IUHaeiuhaiueh! Agora o seu problema está na criação das chaves e acrescentar o certificado nos navegadores. Reveja o passo-a-passo e depois me fala.

[13] Comentário enviado por SephirothHG em 06/04/2016 - 15:28h


[12] Comentário enviado por renato_pacheco em 06/04/2016 - 11:41h


Muito obrigado pela resposta, Renato!

Demorei pra ver a sua resposta, pois achava que o VOL notificava quando houvesse comentários onde postei, daí fiquei esperando.

Sinceramente, não sei o que fiz, mas o e2guardian subiu sem falhas.
Porém, ao tentar acessar o vídeo que deveria estar liberado (ou qualquer outra página do youtube) recebo a mensagem de erro de "Falha na Conexão Segura" (SSL_ERROR_RX_RECORD_TOO_LONG)

Nos logs do e2guardian, aparece a seguinte mensagem:
"https://www.youtube.com:443 *DENIED* Failed to negotiate ssl connection to client CONNECT 0 0 SSL SITE 1 200 - Grupo padrão - - "

Alguma ideia do que possa ser?

Desculpe se estou sendo inoportuno, mas a quantidade de informações sobre o e2guardian na internet é bem pobre, e o seu artigo é a fonte de informação mais completa que encontrei.


Cara, tá tranquilo, tá favorável! IUHaeiuhaiueh! Agora o seu problema está na criação das chaves e acrescentar o certificado nos navegadores. Reveja o passo-a-passo e depois me fala.


Refiz os certificados, e após lutar um pouco com os navegadores (que diziam que o mesmo não era confiável), consegui fazer funcionar no Firefox. No Chrome não aceita de jeito nenhum, mas acho que ele está reclamando da versão do SSL, que é a 1.0.1f (estou usando o Ubuntu 14.04), mas já vou verificar como atualizá-lo.
Deu certo! Tá funcionando, finalmente! hahaha
Agora só preciso descobrir como criar grupos e resolver o problema da confiabilidade do certificado.

Valeu pelo força, Renato!

[14] Comentário enviado por renato_pacheco em 06/04/2016 - 17:12h



Refiz os certificados, e após lutar um pouco com os navegadores (que diziam que o mesmo não era confiável), consegui fazer funcionar no Firefox. No Chrome não aceita de jeito nenhum, mas acho que ele está reclamando da versão do SSL, que é a 1.0.1f (estou usando o Ubuntu 14.04), mas já vou verificar como atualizá-lo.
Deu certo! Tá funcionando, finalmente! hahaha
Agora só preciso descobrir como criar grupos e resolver o problema da confiabilidade do certificado.

Valeu pelo força, Renato!


Sobre os certificados, é possível inserir via netlogon um script q inclui os certificados no Windows. No Firefox, é possível distribuir através d JavaScript, mas é bem complicado. Como não fui eu q fiz essa parada, não tenho muitos detalhes sobre isso. Se vc buscar na Internet, acredito q encontrará sem dificuldades. Se vc tiver AD na sua rede, é mais fácil inserir os certificados (exceto Firefox).


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts