Servidor Squid + Iptables com 2 Link

1. Servidor Squid + Iptables com 2 Link

Arthur Mota
arthurmotainfo

(usa Debian)

Enviado em 27/01/2015 - 07:14h

Boa Galera estou tendo dificuldade em Configurar Squid3 + Iptables, com 2 link de internet, alguem para me ajudar eu posto mais info.


  


2. Re: Servidor Squid + Iptables com 2 Link

Andre Ribeiro da Costa
andr3ribeiro

(usa Arch Linux)

Enviado em 27/01/2015 - 07:30h

Bom dia,

Em qual parte especificadamente vc parou? instalar os serviços? Configurar os links nas interfaces? Fazer Balanceamento? Fazer um script de troca de link?
Poste, por favor, até onde vc conseguiu chegar e quais problemas vc esta enfrentando.


3. Help

Arthur Mota
arthurmotainfo

(usa Debian)

Enviado em 27/01/2015 - 23:07h


Olá Amigo, bom eu instalei os serviços Squid3, configurei as interfaces para receber os 2 link ip fixo, porem nao consigo repassar as informações do link para minha rede, com os cabos do link conectado eu consigo ping via ip porem dns já não funciona exemplo se eu ping como www.google.com.br, nao funfa, eu vou postar as configurações passo a passo.


4. Re: Servidor Squid + Iptables com 2 Link

Reginaldo de Matias
saitam

(usa Slackware)

Enviado em 27/01/2015 - 23:42h

No seu script firewall tem a regra abaixo que compartilha conexão com internet na rede local?
LAN é uma variável onde esta sua rede
ifaceExt é a interface externa (conectada no modem)

No seu caso que tem 2 links ADSL, então deve ter 3 interfaces, sendo 2 interfaces para rede externa e 1 interface para rede interna.

#roteamento de pacotes
echo 1 > /proc/sys/net/ipv4/ip_forward
#compartilhamento de conexão
iptables -t nat -A POSTROUTING -s $LAN -o $ifaceExt1 -j MASQUERADE
iptables -t nat -A POSTROUTING -s $LAN -o $ifaceExt2 -j MASQUERADE

http://mundodacomputacaointegral.blogspot.com.br/
Twitter: http://twitter.com/@blogcomputacao
Facebook: http://www.facebook.com/BlogComputacao


5. Re: Servidor Squid + Iptables com 2 Link

Arthur Mota
arthurmotainfo

(usa Debian)

Enviado em 28/01/2015 - 01:40h


Minha Interface está ok pois está reconhecendo os link, pois consigo pingar, segue minha conf...

#The loopback network interface
auto lo eth0 eth1 eth2
iface lo inet loopback

#The primary network interface
allow-hotplug eth0


######Rede Local#########


iface eth0 inet static

address 192.168.0.26
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.1
dns-nameservers 192.168.0.2 192.168.0.253
dns-search "Nome.Local"

PROXY
#address 192.168.0.26
#netmask 255.255.255.0
#network 192.168.0.0
#broadcast 192.168.0.255
#gateway 192.168.0.1
#dns-nameservers 192.168.0.2 192.168.0.253

# Link 1
iface eth1 inet static
address 189.8.94.162
netmask 255.255.255.0
network 189.8.94.0
broadcast 189.8.94.162
gateway 189.8.94.161
dns-nameservers 189.8.80.50 189.8.80.43

# Link 2
iface eth2 inet static
address 187.60.20.89
netmask 255.255.255.248
network 187.60.20.0
broadcast 189.60.20.95
gateway 189.60.20.94
dns-nameservers 187.60.31.129 8.8.8.8

#allow-hotplug eth1
#iface eth1 inet dhcp
.............................................................................................................

Iptables

#! /bin/bash
#interface de internet:
ifinternet="eth1"
ifinternet="eth2"
#interface de rede local:
iflocal="eth0"
iniciar(){
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o $ifinternet -j MASQUERADE

#Só adicione a linha abaixo se usar o SQUID

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j \REDIRECT --to-port 3128

#Só adicione a linha acima se usar o SQUID

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
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i $iflocal -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --syn -j DROP
}
parar(){
iptables -F
iptables -F -t nat
}
case “$1†in
“startâ€) iniciar ;;
“stopâ€) parar ;;
“restartâ€) parar; iniciar ;;
*) echo “Use os parametros start, stop ou restartâ€
esac





6. Re: Servidor Squid + Iptables com 2 Link

Buckminster
buckminster

(usa Debian)

Enviado em 28/01/2015 - 02:53h

O broadcast do link 1 é: broadcast 189.8.94.255

No link 2 ficaria melhor assim:

# Link 2
iface eth2 inet static
address 187.60.20.89
netmask 255.255.255.248
network 187.60.20.88
broadcast 187.60.20.95 <<< aqui você tinha colocado 189..., o certo é 187.
gateway 187.60.20.94 <<< aqui também, porém, aqui você tem que ver qual é o IP do modem. No link 1 também deve ir o IP do modem no gateway.
#dns-nameservers 187.60.31.129 8.8.8.8

Faça as alterações acima e comente as duas linhas abaixo no arquivo interfaces (não se coloca DNSs no arquivo interfaces), reinicie a máquina e teste.
Poste aqui o que acontecer.

dns-nameservers 189.8.80.50 189.8.80.43

dns-nameservers 187.60.31.129 8.8.8.8

Vou te deixar dois links de IP Calculator:

http://www.subnet-calculator.com/

http://jodies.de/ipcalc


7. Re: Servidor Squid + Iptables com 2 Link

Arthur Mota
arthurmotainfo

(usa Debian)

Enviado em 28/01/2015 - 05:04h

Olá Galera, bom eu realizei as alterações, bom os Links Funcionam, acredito que o problema seja no Iptables.


No iptables após acrescentar as linhas acima, e restartar ele me notifica que os argumentos não são conhecidos:

Outra situação eu nao consigo pingar de um pc qualquer na rede nesse meu servidor.

verifiquem se estou certo?

Tenho 4 Ethernet instalada

eth0 = 192.168.0.26 = Local

eth1 = Link 1

eth2 = Link 2

teria que ter a eth3, pois eu tenho uma Pci instalada 10/100/1000.
O projeto é receber dos 2 Links mandar para minha rede Local, e no meio disso meu firewall Filtrar, bom agora estou na duvida.

eu peguei esse projeto andando, então estou meio perdido.

Outra Duvida

Eu Recebo e envio info pela eth1 e eth2 que são os links, já pela eth0 é onde eu mando para o Switch para minha rede local e tambem realizo acesso ao meu Proxy de forma local, se for externo eu posso acessar via acesso Remoto usando o Ip de um dos Link???? é isso .






8. Re: Servidor Squid + Iptables com 2 Link

Buckminster
buckminster

(usa Debian)

Enviado em 05/02/2015 - 17:41h

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j \REDIRECT --to-port 3128

Veja que antes de REDIRECT tem uma barra invertida, tire ela.

Somente seria necessária a eth3 se o proxy está na mesma máquina, e ainda assim, por uma questão de definição e organização.

E sim, se você for efetuar acesso remoto externo pode usar o IP de um dos links. Mas para isso deverá fazer as configurações necessárias no Iptables (no Squid, se estiver na mesma máquina) e nos modens/roteadores.



9. Erro iptables

Arthur Mota
arthurmotainfo

(usa Debian)

Enviado em 26/02/2015 - 06:07h


Galera estou mega satisfeito com ajuda extremo de todos vcs mais ainda continuo com problemas, eu retirei a barra citada no comando, porem quando executo o firewall

# ./firewall.sh start

Bad argument 'MASQUERADE'
Try 'iptables -h' or 'iptables --help' for more information
Bad argument 'MASQUERADE'
Try 'iptables -h' or 'iptables --help' for more information

Meu Script no firewall.sh

#! /bin/bash
#interface de internet:
ifinternet="eth1"
ifinternet="eth2"
#interface de rede local:
iflocal="eth0"
iniciar(){
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o $ifinternet -j MASQUERADE
iptables -t nat -A POSTROUTING -o $ifaceExt1 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $ifaceExt2 -j MASQUERADE

#Só adicione a linha abaixo se usar o SQUID

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128

#Só adicione a linha acima se usar o SQUID

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
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i $iflocal -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --syn -j DROP
}
parar(){
iptables -F
iptables -F -t nat
}
case “$1” in
“start”) iniciar ;;
“stop”) parar ;;
“restart”) parar; iniciar ;;
*) echo “Use os parametros start, stop ou restart”
esac






10. Re: Servidor Squid + Iptables com 2 Link

Arthur Mota
arthurmotainfo

(usa Debian)

Enviado em 26/02/2015 - 07:00h


Galera outra situação, não consigo pingar no Firewall e vice versa, Trágico.


11. Re: Servidor Squid + Iptables com 2 Link

Buckminster
buckminster

(usa Debian)

Enviado em 27/02/2015 - 10:56h

ifinternet="eth1"
ifinternet="eth2"

Veja que aí em cima você colocou o mesmo nome de variável para as duas placas.

iptables -t nat -A POSTROUTING -o $ifinternet -j MASQUERADE
iptables -t nat -A POSTROUTING -o $ifaceExt1 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $ifaceExt2 -j MASQUERADE

E aí em cima o erro provavelmente está nas variáveis ifaceext1 e 2 as quais você não definiu anteriormente.
Sugiro substituir ifinternet por

ifaceExt1="eth1"
ifaceExt2="eth2"






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts