Ufcd 0841
Ufcd 0841
Ufcd 0841
Conclusão ............................................................................................................................................... 25
Bibliografia ............................................................................................................................................ 26
1
UFCD 0841 – Servidores Web e Acesso á Internet
Ilustração 1 - Ubuntu Squid ............................................................................................................... 4
Ilustração 2 - Cache .............................................................................................................................. 6
Ilustração 3 - Instalação Squid ........................................................................................................... 7
Ilustração 4 - Backup do ficheiro squid.conf .................................................................................8
Ilustração 5 - Ficheiro de configuração squid.conf ......................................................................8
Ilustração 6 - Adicionar ACL, com o nome da rede e gama de IP ...................................... 9
Ilustração 7 - Permitir o acesso à rede FF ..................................................................................... 9
Ilustração 8 - Adicionar ACL´S sobre a lista de sites bloqueados e não bloqueados .....10
Ilustração 9 - Reiniciar servidor Squid ............................................................................................ 11
Ilustração 10 - Permitir ou restringir sites das listas .................................................................... 11
Ilustração 11 - Configuração transparente.................................................................................... 12
Ilustração 12 - Redireccionar o tráfego vindo pela porta para a porta 3128 através do
firewall via NAT .................................................................................................................................... 13
Ilustração 13 - cache_mem 64MB ................................................................................................... 14
Ilustração 14 - Determinar o tamanho máximo dos ficheiros que serão guardados na
cache feito na memória RAM .......................................................................................................... 15
Ilustração 15 - Definir a percentagem de uso da cache que fará o Squid começar a
descartar os ficheiros mais antigos .................................................................................................. 16
Ilustração 16 - Definir o máximo e mínimo do tamanho guardado em cache dos
downloads efectuados. ....................................................................................................................... 16
Ilustração 17 - Opção cache_dir ....................................................................................................... 17
Ilustração 18 - Ficheiro access.log ..................................................................................................... 18
Ilustração 19 - Preparação do sistema .......................................................................................... 19
Ilustração 20 - Instalação do Webmin .........................................................................................20
Ilustração 21 - Download do Webmin ..........................................................................................20
Ilustração 22 - Login Webmin .......................................................................................................... 21
Ilustração 23 - Restrição por IP ....................................................................................................... 22
Ilustração 24 - Painel de restrições do Webmin ........................................................................ 23
2
UFCD 0841 – Servidores Web e Acesso á Internet
O Squid é uma aplicação bastante popular no âmbito da configuração de routers e
firewall no Linux, para além das funcionalidades de qualquer proxy HTTP, o Squid
possibilita dispor de mecanismos de caching das páginas mais acedidas e de
mecanismos de controlo de acessos, suporta ainda a comunicação com outras proxies
na conjunção de hierarquias de caches.
Este pode ser configurado no modo normal ou no modo transparente, por último, é
indispensável dispor de funcionalidades do IPTables para o redireccionamento das
ligações HTTP para o proxy, também será analisada a configuração do servidor
Squid nos dois métodos acima referidos.
3
UFCD 0841 – Servidores Web e Acesso á Internet
O Squid é uma aplicação servidora de armazenamento Web completa que fornece
serviços de proxy e de armazenamento para Protocolo de Transporte de Hipertexto
(HTTP), Protocolo de Transporte de Ficheiros (FTP), e outros protocolos de rede
populares. O Squid pode implementar armazenamento e execução de proxy de
pedidos de Camadas de Soquetes Seguros (SSL) e armazenamento de pesquisas a
Servidor de Nomes de Domínio (DNS), e executar armazenamento transparente. O
Squid suporta ainda uma ampla variedade de protocolos de armazenamento, como
o Protocolo de Armazenamento da Internet, (ICP) o Protocolo de Armazenamento
de Hipertexto, (HTCP) o Protocolo de Direccionamento de Tabelas de
Armazenamento (CARP), e o Protocolo Coordenação de Armazenamento Web
(WCCP). O servidor de armazenamento proxy Squi8d é uma excelente solução para
várias necessidades de armazenamento e proxy do servidor, e cresce desde uma rede
de um pequeno escritório até uma rede de nível empresarial, enquanto oferece
mecanismos de acesso individualizado o monitorização de parâmetros críticos via
Protocolo de Gestão de Redes Simples, Simple Network Management Protocol
(SNMP). Ao seleccionar um sistema para utilizar como servidor Squid dedicado, ou
servidor de armazenamento temporário, assegure-se que esse sistema possui bastante
memória RAM, dado que o Squid utiliza bastante para assegurar um desempenho
melhorado.
O servidor proxy verifica o seu cache para ver se a página da está disponível. Se a
página estiver disponível na cache será enviada ao cliente a página armazenada. Se
a página não estiver na cache, o servidor proxy baixará do site em questão,
armazenará essa página no seu cache e a enviará à estação de trabalho.
5
UFCD 0841 – Servidores Web e Acesso á Internet
Ilustração 2 - Cache
6
UFCD 0841 – Servidores Web e Acesso á Internet
Antes de começar a configuração base, vamos primeiro instalar o Squid, para tal
utilizamos o comando “apt-get install squid squid-common”, vejamos:
Cada opção de configuração no squid.conf é identificada como uma tag. Cada tag é
uma configuração do Squid. Por exemplo, a definição da porta de pedido do cliente
HTTP é identificada pela tag http_port. Vamos então configurar o nosso ficheiro para
que o Squid funcione correctamente.
7
UFCD 0841 – Servidores Web e Acesso á Internet
Antes de mais nada, nada melhor que salvaguardar o nosso ficheiro original, para isso
procedemos ao seu backup, utilizando o comando “cp squid.conf squid.conf.bkp”:
Depois através do editor Gedit, vamos então começar a editar o nosso ficheiro de
configuração “sudo gedit /etc/squid/squid.conf”
8
UFCD 0841 – Servidores Web e Acesso á Internet
Toda a estrutura do Squid é baseada em ACLs (listas de acessos). Vamos agora criar
uma lista de acesso básica para os utilizadores.
9
UFCD 0841 – Servidores Web e Acesso á Internet
Com esta configuração acima, já conseguimos aceder à internet, mas, ainda não há
filtros, onde podemos bloquear os sites indesejados. Vamos ver agora adicionar duas
ACLs, onde vamos armazenar os sites bloqueados e os não bloqueados, antes de
adicionarmos então as duas ACL´S acima referidas, antes vamos criar dois
documentos de texto, um com a lista dos sites bloqueados e outro com a lista dos sites
não bloqueados, para isso usamos os seguintes comandos “sudo touch
/etc/squid/bloqueados.txt e sudo touch /etc/squid/nao_bloqueados.txt ”. Em seguida
vamos ao Squid.conf e vamos adicionar mais duas ACL´S, “acl bloqueados url_regex -
i "/etc/squid/bloqueados.txt e acl nao_bloqueados url_regex -i
"/etc/squid/nao_bloqueados.txt”:
10
UFCD 0841 – Servidores Web e Acesso á Internet
Ilustração 10 - Permitir ou restringir sites das listas
Por fim da configuração base reiniciamos o Squid, através do comando “sudo service
squid start”
11
UFCD 0841 – Servidores Web e Acesso á Internet
Para procedermos a configuração transparente, as alterações a efectuar serão
realizadas no ficheiro squid.conf, como podemos observar este ficheiro é
importantíssimo para as configurações do proxy.
12
UFCD 0841 – Servidores Web e Acesso á Internet
Ilustração 12 - Redireccionar o tráfego vindo pela porta para a porta 3128 através do firewall via
NAT
13
UFCD 0841 – Servidores Web e Acesso á Internet
Uma das configurações mais importantes em relação ao desempenho do proxy e à
optimização do tráfego da rede é a configuração das caches, onde o Squid guarda as
páginas e ficheiros já acedidos de forma a fornecê-los rapidamente quando
solicitados novamente. O Squid trabalha com dois tipos de cache:
14
UFCD 0841 – Servidores Web e Acesso á Internet
Em seguida vamos determinar o tamanho máximo dos ficheiros que serão guardados
na cache feito na memória RAM, através do comando
“maximum_object_size_in_memory 64 KB”:
Ilustração 14 - Determinar o tamanho máximo dos ficheiros que serão guardados na cache feito na
memória RAM
15
UFCD 0841 – Servidores Web e Acesso á Internet
Ilustração 16 - Definir o máximo e mínimo do tamanho guardado em cache dos downloads
efectuados.
O próximo passo passa por definir a percentagem de uso da cache que fará o Squid
começar a descartar os ficheiros mais antigos. Por defeito, sempre que a cache atingir
95% de uso, serão descartados os ficheiros mais antigos até que a percentagem volte
para um número abaixo de 90%:
Ilustração 15 - Definir a percentagem de uso da cache que fará o Squid começar a descartar os
ficheiros mais antigos
16
UFCD 0841 – Servidores Web e Acesso á Internet
De seguida vem a opção "cache_dir", que é composta por quatro valores. O primeiro,
(/var/spool/squid) indica a pasta onde o Squid armazena os ficheiros da cache,
enquanto o segundo (2048) indica a quantidade de espaço no HD (em MB) que será
usada para acache. Aumentamos o valor para termos muito espaço em disco no
servidor.
A cache do squid foi configurada agora o nosso servidor esta muito mais rápido no
carregamento de páginas, devido ao aumento do tamanho da cache.
17
UFCD 0841 – Servidores Web e Acesso á Internet
O Squid guarda o log de acesso no ficheiro "/var/log/squid/access.log”, ou seja o logs
são todos guardados neste ficheiro, vejamos:
A título de curiosidade, este ficheiro é usado pelo Sarg para gerar as páginas com as
estatísticas de acesso, bem como outras opções referentes aos clientes squid na rede.
18
UFCD 0841 – Servidores Web e Acesso á Internet
A gestão do squid remotamente, torna-se numa ferramenta muito importante
devido à facilidade de acesso, tanto ao proxy, bem como a outros serviços existente,
por exemplo, SSH, HTTP, etc…
Para tal vamos instalar o Webmin, depois de instalado podemos então gerir o squid,
vejamos então como instalar. Vamos usar o seguinte comando “sudo aptitude install
perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl
libmd5-perl”:
19
UFCD 0841 – Servidores Web e Acesso á Internet
Ilustração 21 - Download do Webmin
20
UFCD 0841 – Servidores Web e Acesso á Internet
Ilustração 22 - Login Webmin
21
UFCD 0841 – Servidores Web e Acesso á Internet
Para a criação de regras baseadas em IP e nomes de páginas, vamos utilizar o
Webmin, para criar uma ACL em que definimos a restrição a determinado IP, neste
caso o “10.0.2.2”, vejamos:
22
UFCD 0841 – Servidores Web e Acesso á Internet
Ilustração 24 - Painel de restrições do Webmin
23
UFCD 0841 – Servidores Web e Acesso á Internet
Todas as configurações foram realizadas consoante as nossas necessidades, a imagem
seguinte mostra como o nosso Proxy está a funcionar e mostra também a utilização
de um browser para a utilização do Squid:
24
UFCD 0841 – Servidores Web e Acesso á Internet
No presente trabalho exploramos a utilização do Ubuntu server como um servidor
Proxy de uma rede informática, vimos igualmente que existem dois tipos de
configurações, a configuração base e a transparente, que envolve a implementação
do IPTables, que consiste no redireccionamento do tráfego vindo pela porta para a
porta 3128 através do firewall via NAT. Para cada uma delas necessitamos sempre do
ficheiro de configuração squid.conf, torna-se este o principal e mais importante
ficheiro para a sua configuração, nele podemos definir o tipo de segurança
pretendida, definir o tamanho da cache que o proxy vai utilizar e tornar assim o
nosso servidor mais rápido e fiável, além disso ainda temos a possibilidade da
utilização de recursos escassos como a largura de banda disponível numa ligação à
internet.
Um ponto muito importante visto neste trabalho foi o acesso remoto através do
Webmin, torna-se assim muito fácil a configuração e gestão do servidor proxy.
25
UFCD 0841 – Servidores Web e Acesso á Internet
Este trabalho teve como base os seguintes sites:
http://www.squid-cache.org/;
http://pt.wikipedia.org/wiki/Squid;
http://www.hardware.com.br/livros/servidores-linux/configurando-servidor-
proxy-com-squid.html;
http://www.vivaolinux.com.br/artigo/Servidor-proxy-%28Squid%29/?pagina=1;
http://www.ubuntugeek.com/how-to-setup-transparent-squid-proxy-server-
in-ubuntu.html;
https://help.ubuntu.com/community/Squid;
http://en.kioskea.net/faq/804-ubuntu-installing-an-http-proxy-server-squid;
http://wiki.ubuntu-br.org/Squid;
http://www.jordanielalves.com.br/linux/configurando-servidor-squid-no-
ubuntu/;
http://www.vivaolinux.com.br/artigo/Controle-de-acesso-a-internet-com-
Squid/?pagina=4;
http://ubuntuforum-pt.org/index.php?topic=44364.0;
http://www.mlaureano.org/guias_tutoriais/GuiaInstSquid.htm;
http://www.ubuntugeek.com/webmin-installation-and-configuration-in-
ubuntu-linux.html;
http://pplware.sapo.pt/linux/webmin-1-510-controle-o-seu-linux-via-browser/;
http://www.kelvinwong.ca/2010/05/22/installing-webmin-on-ubuntu-server-
10-04-lts-lucid/.
26
UFCD 0841 – Servidores Web e Acesso á Internet