Prezados, bom dia!

Tenho um servidor Ubuntu Server 7.10 (gutsy). Este servidor possui três 
interfaces de rede: eth0 e eth1 (internet, redundantes) e eth2 
(intranet). A função deste servidor é servir de acesso externo aos 
sistemas WEB localizados na intranet.

Para tal, o apache 2 instalado neste servidor redireciona as requisições 
HTTPS para outros sites na intranet, via ProxyPass e ProxyPassReverse.
A instalação funcionou perfeitamente.

Então, para agregar segurança à intranet, instalei o firewall Shoreline 
(3.4.4) e configurei minhas interfaces, zonas, policies e regras, da 
seguinte forma:

[EMAIL PROTECTED]:/etc/shorewall$ ls
Makefile  interfaces  policy  routestopped  rules  shorewall.conf  zones
[EMAIL PROTECTED]:/etc/shorewall$ cat zones
fwall   firewall                                #
net     ipv4                            #
loc     ipv4                            #
[EMAIL PROTECTED]:/etc/shorewall$ cat interfaces
net     eth0    200.181.65.255  routeback
net     eth1    200.181.65.255  routeback
loc     eth2    192.168.0.255   routeback
[EMAIL PROTECTED]:/etc/shorewall$ cat policy
loc     net     ACCEPT
loc     fwall   ACCEPT
$FW     loc     ACCEPT
$FW     net     ACCEPT
net     loc     DROP    info
net     fwall   DROP    info
[EMAIL PROTECTED]:/etc/shorewall$ cat rules
FTP/ACCEPT:info net     $FW
Webmin/ACCEPT:info      net     fwall
HTTPS/ACCEPT:info       net     $FW
HTTP/ACCEPT     net     $FW
SSH/ACCEPT      net     $FW

Minhas interfaces estão configuradas e de pé:

[EMAIL PROTECTED]:/etc/shorewall$ sudo ifconfig
eth0      Link encap:Ethernet  HWaddr 00:1E:C9:1A:01:39
          inet addr:200.181.65.172  Bcast:200.181.65.255  Mask:255.255.255.0
          inet6 addr: fe80::21e:c9ff:fe1a:139/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:59910 errors:0 dropped:0 overruns:0 frame:0
          TX packets:33283 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:11560302 (11.0 MB)  TX bytes:13276239 (12.6 MB)
          Base address:0xecc0 Memory:80300000-80320000

eth1      Link encap:Ethernet  HWaddr 00:1B:11:11:69:B0
          inet addr:200.181.65.174  Bcast:200.181.65.255  Mask:255.255.255.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Interrupt:16 Base address:0xd800

eth2      Link encap:Ethernet  HWaddr 00:1B:11:11:D6:1C
          inet addr:192.168.0.152  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::21b:11ff:fe11:d61c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:61499 errors:0 dropped:0 overruns:0 frame:0
          TX packets:147746 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:23123185 (22.0 MB)  TX bytes:20882163 (19.9 MB)
          Interrupt:20 Base address:0xdc00

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:2587 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2587 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:327792 (320.1 KB)  TX bytes:327792 (320.1 KB)

e as rotas necessárias estão configuradas (estão?):

[EMAIL PROTECTED]:/etc/shorewall$ sudo route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use 
Iface
192.168.0.0     *               255.255.255.0   U     0      0        0 eth2
200.181.65.0    *               255.255.255.0   U     0      0        0 eth1
200.181.65.0    *               255.255.255.0   U     0      0        0 eth0
default         192.168.0.1     0.0.0.0         UG    100    0        0 eth2
default         200.181.65.169  0.0.0.0         UG    100    0        0 eth0
default         200.181.65.169  0.0.0.0         UG    100    0        0 eth1


Tudo deveria estar funcionando, certo? De fato, tudo estava funcionando 
até sábado, quando fui configurar outra rota adicional para um link VPN 
entre nossa intranet e outra empresa. Em princípio, esta rota funcionou, 
e acredito que nem tenha influenciado no problema.

O que aconteceu é que, de sábado para cá, o acesso externo ao servidor, 
via HTTPS e HTTP, inclusive ao Webmin, estão 95% do tempo inalcançáveis. 
Na maioria das tentativas, tentando acessar de minha casa, o browser 
simplesmente ficava carregando. Após várias horas sem tentar acessar, ao 
efetuar nova tentativa, os sites foram acessados com sucesso. Mas um 
minuto após, o servidor pára de responder. Isto vem se repetindo: fico a 
manhã inteira tentando acessar e reconfigurar, e nada. Ao chegar para 
almoçar em casa, tento acessar, e consigo, por um minuto mais ou menos, 
depois cai. Isto ocorre não apenas com HTTP ou HTTPS. Se tento acessar 
via SSH, recebo a tela de login, mas após informar a senha, o site não 
responde, também.

Não há nada de exótico neste servidor, além do próprio Shorewall.

Algumas informações importantes:

Não é problema de DNS, ou de IP, pois, se dou shutdown nas interfaces 
desta máquina e configuro outro servidor com os IPs externos da 
primeira, consigo acessá-lo com sucesso.
Não é problema de cache de browser, ou nada parecido, pois tentei 
acessar de vários locais diferentes.

De fato, quando tento acessar, a tentativa de acesso é logada pelo 
syslog, como se houvesse sido aceita. Por exemplo:

Tentando acessar o Webmin via HTTPS (https://200.181.65.172:10000) a 
seguinte entrada é logada:

[EMAIL PROTECTED]:/var/log$ tail -f -n0 messages
Apr  7 14:52:34 eainet kernel: [167194.547406] 
Shorewall:net2fwall:ACCEPT:IN=eth0 OUT= 
MAC=00:1e:c9:1a:01:39:00:18:39:eb:14:2a:08:00 SRC=200.181.65.173 
DST=200.181.65.172 LEN=60 TOS=0x00 PREC=0x00 TTL=63 ID=56391 DF 
PROTO=TCP SPT=39402 DPT=10000 WINDOW=5840 RES=0x00 SYN URGP=0

Ou seja, o firewall dá um ACCEPT nesta tentativa de acesso. Entretanto, 
a requisição não chega ao apache2, ou ao menos, nada é registrado nos 
logs do webserver.

E é este o problema! Alguem tem alguma idéia do que pode estar 
acontecendo? Na maioria das vezes, a requisição não chega ao apache, 
mas, umas poucas vezes, o acesso é efetuado, por um pequeno tempo, para 
depois ser perdido novamente.

Há alguma outra configuração ou log que vocês desejem que eu exponha?

Muitíssimo obrigado a todos! Já estou considerando reinstalar o 
servidor, para garantir que não tenha feito alguma "burrada" de que não 
me lembre...

Novamente, agradeço por qualquer ajuda!

Abraços,

Filipe Fedalto
---------------------------------------------------------------------------
Esta lista é patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br

Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utilização da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html

Responder a