O cenário atual
Estou usando 3G. Infelizmente aqui no Brasil o funcionamento desta tecnologia é ridículo, pois apresenta grande instabilidade (a conexão cai frequentemente) e velocidade baixíssima. Por contrato, apenas 10% de velocidade é garantida. Assim, pela possibilidade de "estar conectado em qualquer lugar", pago R$ 100,00 por 1 Mega de velocidade, mas apenas algo em torno de 100k me é garantido.
A solução
O melhor é usar um proxy para acelerar o acesso. Segundo a wikipedia, a definição de proxy é "um servidor que atende a requisições repassando os dados a outros servidores. Um usuário (cliente) conecta-se a um servidor proxy, requisitando algum serviço, como um arquivo, conexão, website, ou outro recurso disponível em outro servidor".
Assim, todo acesso à internet vai ser passado para o proxy, e este vai na internet buscar a página. Esta página vai permanecer durante algum tempo na máquina, pois no próximo acesso boa parte da página já estará no sistema. Consequentemente, o browser buscará menos informação na rede, acelerando o acesso.
Estas modificações serão feitas em duas partes: Uma no proxy, e outra no browser.
O Software
Usaremos o Squid, um software extremamente famoso, totalmente gratuito e largamente utilizado para isto. Esta configuração é de complexidade média, exigindo algum conhecimento de edição de arquivos de configuração em Linux. Isto é bom, pois nos leva a aprender um pouco mais.
Instalação do Squid
Como sempre, instalar a maioria dos softwares no Ubuntu é muito fácil. Como é o meu foco, vamos evitar a interface gráfica e dar preferência a CLI. Para facilitar, as linhas abaixo devem ser copiadas e coladas no terminal.
Acesse o terminal e digite as seguintes linhas, informando sua senha quando solicitado:
sudo aptitude updateCaso seja cometido algum erro e se queira desfazer tudo para começar do zero, pode ser feito o seguinte:
sudo aptitude install squid
sudo chattr -i /etc/squid/squid.conf.originalÉ necessário que o editor vim esteja instalado. Caso não esteja, ou você não tenha esta certeza, digite a seguinte linha:
sudo rm /etc/squid/squid.conf.original
sudo aptitude purge squid
sudo aptitude install vim
Configuração do Squid
Para isso, vamos fazer uma cópia de segurança do arquivo de configuração do squid:
sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.originalAgora, vamos retirar os comentários do arquivo, que apesar de serem bastante úteis e explicativos, atrapalham a leitura do arquivo:
sudo chattr +i /etc/squid/squid.conf.original
sudo egrep -v "^$|^ *#" \Ao escrever este artigo, esta era a minha versão do squid:
/etc/squid/squid.conf.original > /etc/squid/squid.conf
sudo dpkg -p squidApenas para acrescentar, outra forma de verificar a versão do squid instalado seria:
Package: squid
Priority: optional
Section: web
Installed-Size: 1748
Maintainer: Ubuntu Core Developers
Architecture: i386
Version: 2.7.STABLE3-4.1ubuntu1
Replaces: squid-novm
Depends: libc6 (>= 2.4), libcomerr2 (>= 1.01), libdb4.7, libkrb53 (>= 1.6.dfsg.2), libldap-2.4-2 (>= 2.4.7), libpam0g (>= 0.99.7.1), netbase, adduser, logrotate (>= 3.5.4-1), squid-common (>= 2.7.STABLE3-4.1ubuntu1), lsb-base (>= 3.2-14), ssl-cert (>= 1.0-11ubuntu1)
Pre-Depends: debconf (>= 1.2.9) | debconf-2.0
Suggests: squidclient, squid-cgi, logcheck-database, resolvconf (>= 0.40), smbclient, winbind
Conflicts: sarg (<<>
sudo dpkg -l | grep squidNo meu sistema, o resultado foi o seguinte:
ii squid 2.7.STABLE3-4.1ubuntu1 Internet object cache (WWW proxy cache)É importante mencionar isto, pois mudando de versão, o arquivo da sua versão pode apresentar diferenças.
Agora, vamos editar o arquivo com as mudanças necessárias:
sudo vim /etc/squid/squid.conf -c ":set number"No meu arquivo, as modificações foram as seguintes:
...Eu alterei a linha 36, para aumentar a segurança do meu Ubuntu. Também acrescentei a linha 49, com os IPs do DNS do meu provedor. Se você não souber destes endereços (que devem ser obtidos com o seu provedor), você pode consultar os que foram automaticamente configurados no seu Ubuntu.
35 icp_access deny all
36 http_port 127.0.0.1:3128
37 hierarchy_stoplist cgi-bin ?
...
48 extension_methods REPORT MERGE MKACTIVITY CHECKOUT
49 dns_nameservers 200.169.116.23 200.169.116.22
50 hosts_file /etc/hosts
sudo cat /etc/resolv.confNo meu sistema, o resultado foi o seguinte:
nameserver 200.255.121.39Feitas as modificações acima, precisamos reiniciar o squid. Isto é feito com a linha a seguir:
nameserver 200.169.117.14
sudo /etc/init.d/squid reloadPara confirmar que o Squid está completamente funcional, poderemos listar as portas abertas para conexão, entre as quais deve constar a linha do Squid:
sudo netstat -ltnp | grep -i squidNo meu sistema, o resultado foi o seguinte:
tcp 0 0 127.0.0.1:3128 0.0.0.0:* OUÇA 3216/(squid)Note que o destaque em negrito é o que foi definido na linha 36 do arquivo de configuração.
Configuração do Browser
A modificação no browser, é muito mais tranquila. Para este nosso exemplo, vou usar o Firefox, já presente no Ubuntu.
O primeiro passo é acessar as configurações no Browser. No menu EDITAR, acesse o item Preferências.
Escolha o botão AVANÇADO, logo após a aba REDE, e a seguir o botão CONFIGURAR.
Escolha os itens marcados na imagem ao lado, e digite as mesmas informações que também estão na imagem
A partir de agora os acessos sempre passarão pelo proxy. No meu caso, estou acessando este proxy no meu (muito antigo) notebook, com um hd (muito) limitado de 20G, e com o seguinte consumo de acesso:
sudo du -sh /var/spool/squid/É sempre bom controlar a quantidade de espaço consumido pelo cache. Se for necessário eliminar todo o cache, basta digitar o seguinte:
32M /var/spool/squid/
sudo squid -z
Um comentário:
bom....muito bom o post
Postar um comentário