Enviado em 15/07/2013 - 08:31h
Olá a todos. Meu primeiro tópico aqui no fórum. Já achei vários artigos e discussões com o mesmo problema mas não consegui resolver o meu.
Sou professor de sala de informática de uma escola municipal, temos uma rede com 17 computadores rodando Linux Educacional (kUbuntu 8.04) montei um servidor PROXY para melhorar o acesso à internet pois o MEC nos fornece uma ADSL de 2Mb e de má qualidade (risos). Como sou leigo no assunto pois minha formação é em Matemática eu segui as orientações do seguinte artigo:
Configurando um servidor Linux doméstico, fácil: http://www.hardware.com.br/tutoriais/servidor-linux-domestico/
então meu firewal e meu squid ficaram com a seguinte configuração:
Firewal iptables em /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
# Compartilhando a Conexão
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# Bloqueia pings e protege contra IP spoofing e pacotes invalidos
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
iptables -A INPUT -m state --state INVALID -j DROP
# Abre para a inteface de loopback e para a interface de rede local
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth1 -j ACCEPT
# Abre as portas especificadas
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 6881 -j ACCEPT
# Bloqueia as demais conexões, deixando passa apenas pacotes de resposta
iptables -A INPUT -p tcp --syn -j DROP
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
exit 0
squid.conf
# /etc/squid/squid.conf
http_port 3128 transparent
visible_hostname servidor
cache_mem 340 MB
maximum_object_size_in_memory 128 KB
maximum_object_size 700 MB
cache_dir ufs /var/spool/squid 40000 16 256
cache_access_log /var/log/squid/access.log
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563 873
acl Safe_ports port 80 21 280 443 488 563 591 777 1025-65535
acl Safe_ports port 51413
acl purge method PURGE
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
acl redelocal src 192.168.1.0/24
http_access allow localhost
http_access allow redelocal
http_access deny all
O problema: Os cliente só navegam se eu configurar manualmente o endereço do servidor com a porta do proxy ou o endereço do proxy nas configurações de rede.
A situação se complica quando os professores querem acessar a rede e precisam configurar o proxy em seus notebooks etc.
Valeu galera!
Sou professor de sala de informática de uma escola municipal, temos uma rede com 17 computadores rodando Linux Educacional (kUbuntu 8.04) montei um servidor PROXY para melhorar o acesso à internet pois o MEC nos fornece uma ADSL de 2Mb e de má qualidade (risos). Como sou leigo no assunto pois minha formação é em Matemática eu segui as orientações do seguinte artigo:
Configurando um servidor Linux doméstico, fácil: http://www.hardware.com.br/tutoriais/servidor-linux-domestico/
então meu firewal e meu squid ficaram com a seguinte configuração:
Firewal iptables em /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
# Compartilhando a Conexão
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# Bloqueia pings e protege contra IP spoofing e pacotes invalidos
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
iptables -A INPUT -m state --state INVALID -j DROP
# Abre para a inteface de loopback e para a interface de rede local
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth1 -j ACCEPT
# Abre as portas especificadas
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 6881 -j ACCEPT
# Bloqueia as demais conexões, deixando passa apenas pacotes de resposta
iptables -A INPUT -p tcp --syn -j DROP
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
exit 0
squid.conf
# /etc/squid/squid.conf
http_port 3128 transparent
visible_hostname servidor
cache_mem 340 MB
maximum_object_size_in_memory 128 KB
maximum_object_size 700 MB
cache_dir ufs /var/spool/squid 40000 16 256
cache_access_log /var/log/squid/access.log
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563 873
acl Safe_ports port 80 21 280 443 488 563 591 777 1025-65535
acl Safe_ports port 51413
acl purge method PURGE
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
acl redelocal src 192.168.1.0/24
http_access allow localhost
http_access allow redelocal
http_access deny all
O problema: Os cliente só navegam se eu configurar manualmente o endereço do servidor com a porta do proxy ou o endereço do proxy nas configurações de rede.
A situação se complica quando os professores querem acessar a rede e precisam configurar o proxy em seus notebooks etc.
Valeu galera!