Padrões estranhos do iptables de portas fechadas

1

Coçando minha cabeça com este ... Estou usando o Shields Up enquanto proxy em um servidor que acabei de configurar com o Rackspace. Aqui está minha configuração do iptables:

*filter

#  Allow all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0
-A INPUT -i lo -j ACCEPT
-A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT

#  Accept all established inbound connections
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#  Allow all outbound traffic - you can modify this to only allow certain traffic
-A OUTPUT -j ACCEPT

#  Allow HTTP and HTTPS connections from anywhere (the normal ports for websites and SSL).
-A INPUT -p tcp --dport 80 -j ACCEPT
-A INPUT -p tcp --dport 443 -j ACCEPT

#  Allow SSH connections
-A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT

#  Allow ping
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT

#  Reject all other inbound - default deny unless explicitly allowed policy
-A INPUT -j REJECT
-A FORWARD -j REJECT

COMMIT

Eu salvei isso em um arquivo de configuração e o carreguei usando o iptables-restore. Aqui está a aparência da minha varredura de portas:

O que poderia causar esse padrão de portas fechadas?

EDIT: saída do iptables -L

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
REJECT     all  --  anywhere             127.0.0.0/8          reject-with icmp-port-unreachable
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:https
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ssh
ACCEPT     icmp --  anywhere             anywhere             icmp echo-request
REJECT     all  --  anywhere             anywhere             reject-with icmp-port-unreachable

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
REJECT     all  --  anywhere             anywhere             reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
    
por ebarch 16.04.2013 / 21:49

1 resposta

3

What could possibly cause this pattern of closed ports?

Um scanner de baixa qualidade. Você está adicionando um

-A INPUT -j REJECT

regra que resultaria em seu host respondendo com ICMP type 3 / code 3 message ( destino inacessível - porta inacessível ) para todos exceto as portas aceitas anteriormente 22, 80 e 443 (a última não aparecendo na varredura também). Isso não deve resultar em portas "invisíveis" por qualquer meio.

O Gibson não é confiável e outros fizeram observações similares sobre o infame "Shields Up!" < em> anos atrás :

GRCs ‘nanoprobes’ diligently connect() to the server and then wander on. The port test, however, tells me my HTTP port is closed. Strange. Very strange. A look at the logs I am sniffing from this connection shows my web server responded - still the test program reports it to be closed. I repeated the exercise with both Windows and Unix based web servers and got an overall hit rate of less than thirty percent, in other words, more than often the test program would not detect my open web server.

Parece que algumas coisas nunca mudam.

Como alternativa, reverta para ferramentas de código aberto disponíveis publicamente. O Nmap é um scanner universal que você obteria com praticamente qualquer distribuição em um host VPS de $ 5 / mês. Se você precisar apenas de varreduras ocasionais, você pode usar serviços nmap on-line como o de Ferramentas on-line de domínio .

    
por 16.04.2013 / 22:27