Passos iniciais
A partir de agora temos um servidor Mikrotik com web-proxy configurado de forma liberal, ou seja, sem nenhuma restrição para acesso a internet, também não importa muito se o seu web-proxy é totalmente Mikrotik ou se funciona em paralelo, se você ainda não tem um web-proxy configurado, aconselho esta leitura antes de continuar lendo este artigo:
Vamos trabalhar com a classe 192.168.0.0/24 sendo a classe de clientes, que servirá como exemplo para todo o artigo. Abaixo você verá uma figura que demonstra qual cenário queremos obter com as restrições. Topologia e as opções de permissãoNa figura abaixo vemos a topologia da situação. Figura 1 PRIMEIRA: Liberamos toda a internet e fazemos o bloqueio somente de alguns sites, desta forma os clientes não terão acesso somente aos sites indicados, uma espécie de blacklist. SEGUNDA: Liberamos alguns sites necessários para os clientes deste servidor, uma espécie de whitelist e bloqueamos todo o restante da internet, este é o meu preferido pelo nível de segurança proporcionado, normalmente necessário em empresas. Na página seguinte teremos as configurações necessárias para a identificação de sites por ip. |
|
Identificando sites por ip
Bom, antes de configurar qualquer das situações, precisamos identificar o ip de cada site que queremos bloquear ou liberar dependendo da ocasião, claro que essa é uma tarefa simples, mas devo mencionar para que não haja dúvidas.Então no Windows entramos no DOS e usamos o comando:
ping www.site.com.br Olhe o exemplo de resposta: C:\>ping www.uol.com.br Disparando contra www.uol.com.br [200.98.249.120] com 32 bytes de dados: Resposta de 200.98.249.120: bytes=32 tempo=16ms TTL=54 Estatísticas do Ping para 200.98.249.120: No Linux temos a resposta: $ ping www.uol.com.br — www.uol.com.br ping statistics — Isso vale para qualquer página que você queira identificar o ip, seja para liberar ou para bloquear. Na página seguinte temos o primeiro método, que chamarei de “blacklist”. |
|
Configurações para blacklist (parte 1)
Supondo que temos um web-proxy já configurado e você já separou uma lista de sites que quer bloquear, anotando os respectivos nomes e ips, vamos ao Winbox.Vá em IP > WEB PROXY > ACCESS
Observe que as regras que você deveria ter para ter um proxy liberal são estas: Figura 2 Neste ponto seria muito interessante fazer um backup do seu sistema por completo, para que, se por algum motivo, você precise retornar o servidor como era, essa tarefa se torne fácil. Comece removendo todas as regras nesta tela (figura 02) e adicione os sites que você deseja bloquear usando a seguinte sintaxe: # ip proxy access add dst-address=200.98.249.120 action=deny comment=Bloqueio_site_www.uol.com.br Repita o comando no NEW TERMINAL para cada site que você deseja bloquear usando a mesma sintaxe, alterando apenas os ips e nomes correspondentes. O visual da tabela de acesso do proxy deverá fica semelhante a figura abaixo: Figura 3 |
|
Configurações para blacklist (parte 2)
Agora que você já tem todos os sites que deseja bloqueados, precisamos liberar o resto.No NEW TERMINAL digite a seguinte regra:
# ip proxy access add src-address=192.168.0.0/24 action=allow comment=Libera_o_restante Depois digite a regra para bloquear qualquer outra coisa que não esteja na regra de liberação: # ip proxy access add action=deny comment=Bloqueia_tudo O visual do seu tabela de acesso deverá ficar semelhante ao da figura abaixo: Figura 4 Pronto! Dessa forma seus clientes acessam qualquer página na internet, menos as que você bloqueou. Agora vejamos o o contrário disso na próxima página. |
|
Configurações para whitelist (parte 1)
Agora vamos fazer o contrário, vamos liberar alguns sites somente e bloquear o resto.Neste ponto seria muito interessante fazer um backup do seu sistema por completo, para que, se por algum motivo, você precise retornar o servidor como era essa tarefa se torne fácil.
Vá em IP > WEB PROXY > ACCESS Comece removendo todas as regras nesta tela (figura 02) e adicione os sites que você deseja liberar usando a seguinte sintaxe: # ip proxy access add dst-address=200.98.249.120 action=allow comment=Liberacao_site_www.uol.com.br Repita o comando no NEW TERMINAL para cada site que você deseja liberar usando a mesma sintaxe alterando apenas os ips e nomes correspondentes. O visual da tabela de acesso do proxy deverá fica semelhante a figura abaixo: Figura 5 |
|
Configurações para whitelist (parte 2)
Agora que você já tem todos os sites que deseja liberados, precisamos bloquear o resto.No NEW TERMINAL digite a seguinte regra:
# ip proxy access add action=deny comment=Bloqueia_tudo O visual do seu tabela de acesso deverá ficar semelhante ao da figura abaixo Figura 6 Pronto! Dessa forma seus clientes acessam somente as páginas previamente liberadas e não tem qualquer outro tipo de acesso. Na próxima página temos importantes considerações que merecem sua atenção. |
|
Controlando clientes individualmente
Note que nas duas situações, nunca usamos o campo SRC-ADDRESS na hora de realizar os bloqueios ou liberações dependendo da situação.Mas o fato é que podemos usá-los para, por exemplo, aplicarmos a regra somente a um ip especifico da rede interna, ou seja, liberando alguns sites para cada ip da rede interna de forma individual na opção whitelist ou bloqueando alguns sites para cada ip da rede interna de forma individual na opção blacklist.
Veja o exemplo: # ip proxy access add src-address 192.168.0.133 dst-address=200.98.249.120 action=deny comment=Bloqueio_site_www.uol.com.br_para_o_joão A regra acima diz que o ip 192.168.0.133 não pode acessar o site da uol e o comentário dela indica que a regra é para o usuário “joão”. Claro que abaixo dela temos as duas regras citadas na página 4 deste artigo, que liberam tudo que não foi bloqueado acima das mesmas. Veja outro exemplo: # ip proxy access add src-address 192.168.0.133 dst-address=200.98.249.120 action=allow comment=Liberacao_site_www.uol.com.br_para_Joao A regra acima diz que o ip 192.168.0.133 pode acessar o site da uol e o comentário dela indica que a regra é para o usuário “joão”. Também no caso abaixo desta regra temos as duas regras citadas na página 6 deste artigo que bloqueiam tudo que não foi liberado acima das mesmas. Desta forma você consegue definir de forma individual, ou seja, por usuário, o que ele vai ou não acessar na web. |
|
Considerações finais
Uma dica importante a esta altura é que seu sistema de autenticação, seja ele portal captive (hotspot) ou pppoe, faça controle de usuário+senha+MAC, evitando assim os usuários da rede interna trocarem os ips das máquinas, conseguindo assim privilégios que não foram concedidos e eventualmente “bagunçando a rede”, sendo assim você terá um bom nível de segurança interna.Este artigo demonstra como fazer bloqueios de acessos a sites, porém existem vários outros tipos de bloqueios que podem ser realizados, por exemplo: p2p, comunicadores instantâneos (msn, icq) etc, mas estes devem ser bloqueados no filtro do firewall e é assunto para outra dica ou artigo.
|