Sem iptables, telnet smtp.gmail.com 465 bem. Com, não vá. No entanto, portas de saída aberta ...?

2

Pergunta aqui sobre o iptables.

Eu tenho portas 465 e 587 abertas na cadeia OUTPUT para meus iptables. No entanto, tentar fazer um telnet smtp.gmail.com 465 ou telnet smtp.gmail.com 587 do meu servidor Fedora Core 10, sem sorte, expira.

No entanto, quando eu tento a mesma sequência de telnet sem o iptables rodando, eu estou conectado instantaneamente.

De qualquer forma, obrigado se alguém puder ajudar. O 1.2.3.4 é meu ip home estático para chegar ao servidor (mudou de curso).

Chain INPUT (policy ACCEPT 1375 packets, 161K bytes)
 pkts bytes target     prot opt in     out     source               destination         
  210 17483 ACCEPT     all  --  any    any     1.2.3.4  anywhere            state NEW,RELATED,ESTABLISHED 
    0     0 ACCEPT     tcp  --  any    any     anywhere             serverA.myserver.com   tcp dpt:smtps 
    0     0 ACCEPT     tcp  --  any    any     1.2.3.4  serverA.myserver.com   tcp dpt:mysql 
    0     0 ACCEPT     tcp  --  any    any     1.2.3.4  serverA.myserver.com   tcp dpt:ndmp 
    0     0 ACCEPT     tcp  --  any    any     localhost.localdomain  anywhere            tcp dpt:mysql 
    0     0 ACCEPT     udp  --  any    any     localhost.localdomain  anywhere            udp dpt:mysql 
   29  3442 ACCEPT     all  --  any    any     hostingco.ipsubnet/24       serverA.myserver.com   
   36  2052 ACCEPT     tcp  --  any    any     anywhere             serverA.myserver.com   tcp dpt:http 
    0     0 ACCEPT     tcp  --  any    any     anywhere             serverA.myserver.com   tcp dpt:https 
    0     0 ACCEPT     icmp --  any    any     anywhere             serverA.myserver.com   
  152  7920 REJECT     all  --  any    any     anywhere             serverA.myserver.com   reject-with icmp-port-unreachable 
    0     0 ACCEPT     tcp  --  any    any     1.2.3.4  anywhere            tcp dpt:mysql state NEW,ESTABLISHED 

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 4 packets, 392 bytes)
 pkts bytes target     prot opt in     out     source               destination         
   29  2490 ACCEPT     udp  --  any    any     anywhere             anywhere            udp dpt:domain 
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:domain 
    2   120 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:smtp 
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:pop3 
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:smtps 
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:https 
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:submission 
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:http 
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:ftp-data 
  320 33300 ACCEPT     all  --  any    any     anywhere             anywhere            state RELATED,ESTABLISHED 
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:telnet 
    0     0 ACCEPT     tcp  --  any    eth0    anywhere             anywhere            tcp spt:smtps dpt:smtps 
    
por miamisoftware 07.12.2009 / 05:43

2 respostas

6

pode ser que você aceite pacotes de saída:

iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -p tcp --dport 465 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 587 -j ACCEPT

mas sua política de entrada é DROP e você não aceita pacotes que respondem às suas perguntas? Certifique-se de que sua cadeia de entrada contém [para benefícios de desempenho - como primeira instrução]:

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

?

    
por 07.12.2009 / 08:13
1

Tente adicionar um log à regra da fila de saída:

-A OUTPUT -j LOG --log-prefix "BLOCK_OUT: " --log-level info
-A OUTPUT -j REJECT

Você poderá então assistir / var / log / messages (grep para BLOCK_OUT) para ver o que o iptables está perdendo.

Se você estiver usando:

telnet smtp.gmail.com 465

(o nslookup / dig smtp.gmail.com também falharia)

então eu suspeito que você vai acabar precisando de pelo menos algumas regras para passar o DNS:

 -A OUTPUT -p tcp --dport 53 -j ACCEPT
 -A OUTPUT -p udp --dport 53 -j ACCEPT

Use ferramentas como "nmap" para verificar se o seu conjunto de regras está realmente fazendo o que você quer.

    
por 07.12.2009 / 10:16

Tags