Instalando um servidor de Internet Básico
22 22UTC Dezembro 22UTC 2008
Instalando e configurando um servidor de Internet Simples
Bom dia, após vários meses sem postar artigos e dicas, devido a alguns problemas de conexão e até mesmo de mudanças de cidade, agora estou de volta, postando alguns novos artigos para facilitar a vida dos usuários de linux.
Neste artigo iremos instalar um servidor de Internet Simples, utilizando Debian GNU/Linux ou qualquer outra distro baseada em Debian como o Ubuntu, iremos utilizar os seguinte softwares para este servidor:
-> Iptables (Firewall)
-> Squid (Proxy)
Vamos começar a instalação….
Abra o shell e logue como root
Instalando os programas necessários
apt-get -y install squid sarg apache2
após o termino da instalação iremos fazer as configurações necessárias no servidor.
iremos editar o arquivo de configuração do Squid:
vi /etc/squid/squid.conf
na linha http_port 3128 adicione na frente a palavra transparent
http_port 3128 transparent
abaixo da linha no_cache deny QUERY adicione o seguinte comando:
error_directory /usr/share/squid/errors/Portuguese
esse comando faz com que os erros que o squid vai apresentar seja em portugues
na linha acl all src 0.0.0.0/0.0.0.0 você tera que por a faixa de IP que o proxy irá trabalhar, caso você deixe todos como default qualquer faixa de IP que usar o servidor como proxy irá funcionar
exemplos: 192.168.1.0/255.255.255.0
após essas linhas deixe irá mostrar todas as portas que o SQUID estará aceitando para navegação, não iremos mexer nelas, pois por padrão já esta todas as portas necessárias para navegação, após a linha
acl CONNECT method CONNECT apague tudo que iremos fazer algunas configurações diferentes……..
Adicionas seguintes linhas:
#Arquivo com extensões bloqueadas
acl extentions url_regex “/etc/squid/extentions”
#Arquivo com URLS bloqueadas (exemplo computa)
acl urls url_regex “/etc/squid/urls”
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny all extentions
http_access deny all urls
Após estas linhas adicione a linha com o nome do seu servidor que será visivel para os usuários, visible_hostname servidor no meu caso eu coloquei o nome dele como servidor, mas pode ser trocado por qualquer outro nome.
Feito isso o nosso squid já esta praticamente pronto, para sair e salver pressione a tecla ESC depois :wq! e pressione ENTER, feito isso vamos criar 2 arquivos que irão conter as extensões e URL’s que serão bloqueados:
extentions (Neste arquivo iremos bloquear download de arquivos por estensões, basta coloca-las aqui que automaticamente o proxy irá bloquear)
urls (adicone as urls dos sites que não poderão ser abertos, adicione sem o www. pois assim o proxy irá bloquear qualquer site que tem o texto no link. Ex.: orkut.com)
feito isso teremos que configurar algumas regras de iptables para que o firewall redirecione as conexões para os cliente, para isso teremos que ter 2 placas de rede, eth0 e eth1, neste caso a minha conexão com a internet
sera feita pela eth0 e a conexão local sera feita pela eth1, teremos que criar 1 arquivo chemado firewall.sh
vi /opt/firewall.sh
adicione as seguintes linhas dentro desses arquivos:
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
iptables -t nat -A PREROUTING -i eth1 -p tcp –dport 80 -j REDIRECT –to-port 3128
echo “1″ >/proc/sys/net/ipv4/ip_forward
feche e salve o arquivo e feche, agora teremos que adicionar esta script do firewall automaticamente todas as vezes que o servidor for iniciado, para isso devemos editar o arquivo /etc/rc.local
vi /etc/rc.local
agora adicine a seguinte linha:
cd /opt
./firewall.sh
salve e feche o arquivo, agora temos que dar permissão de execução para o arquivo com o seguinte comando:
chmod +x /opt/firewall.sh
feito isso reinicie o servidor com algum dos seguintes comandos:
init 6 ou shutdown -r now
qualquer um dos 2 comandos irá funcinar, use o que você axar conveniente, após o servidor ser reiniciado, basta configurar os IPS nos clientes, colocando o IP da eth1 do servidor como GATEWAY nos clientes,
não esquecendo que será necessário colocar o DNS primario nos cliente para que os terminais naveguem normalmente, caso não coloque o DNS os clientes não irão navegar.
O DNS varia de acordo com o seu provedor, portanto você tera que entrar em contato como seu provedor para pegar o DNS dele.
Para testar, entre em algum site bloqueado e tente fazer download de algum arquivo com a estenção bloqueada.