ping e traceroute não funcionam quando o UFW nega a saída por padrão

3

Como fazer o ping e o traceroute funcionarem depois de configurar o UFW com deny outgoing por padrão?

Aqui está minha configuração do UFW:

sudo ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), deny (outgoing), disabled (routed)
New profiles: skip

To                         Action      From
--                         ------      ----
123/udp                    ALLOW IN    Anywhere
80/tcp                     ALLOW IN    Anywhere
443/tcp                    ALLOW IN    Anywhere
123/udp (v6)               ALLOW IN    Anywhere (v6)
80/tcp (v6)                ALLOW IN    Anywhere (v6)
443/tcp (v6)               ALLOW IN    Anywhere (v6)

53                         ALLOW OUT   Anywhere
80/tcp                     ALLOW OUT   Anywhere
443/tcp                    ALLOW OUT   Anywhere
587/tcp                    ALLOW OUT   Anywhere
123/udp                    ALLOW OUT   Anywhere
53 (v6)                    ALLOW OUT   Anywhere (v6)
80/tcp (v6)                ALLOW OUT   Anywhere (v6)
443/tcp (v6)               ALLOW OUT   Anywhere (v6)
587/tcp (v6)               ALLOW OUT   Anywhere (v6)
123/udp (v6)               ALLOW OUT   Anywhere (v6)

Aqui estão os resultados do ping e do traceroute:

ping google.com
PING google.com (173.194.121.34) 56(84) bytes of data.
ping: sendmsg: Operation not permitted

traceroute google.com
traceroute to google.com (173.194.121.34), 30 hops max, 60 byte packets
send: Operation not permitted

Encontrei este post ( link ) que recomenda adicionar essas linhas para /etc/ufw/before.rules :

# allow outbound icmp
-A ufw-before-output -p icmp -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
-A ufw-before-output -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT

Parece funcionar para ping, mas não para traceroute. Alguma idéia?

Obrigado

    
por Michael 06.12.2014 / 23:11

3 respostas

0

Sugiro que você permita uma resposta ICMP mais ampla.

-A ufw-before-input -p icmp --icmp-type destination-unreachable -j ACCEPT
-A ufw-before-input -p icmp --icmp-type source-quench -j ACCEPT
-A ufw-before-input -p icmp --icmp-type time-exceeded -j ACCEPT
-A ufw-before-input -p icmp --icmp-type parameter-problem -j ACCEPT
-A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT
    
por 06.12.2014 / 23:58
0

Para traceroute você precisa permitir pacotes UDP de saída no intervalo 33434: 33524. Algumas ferramentas permitem que você use solicitações de eco ICMP também. Como você tem o PING funcionando, você deve habilitar os pacotes de solicitações de eco ICMP.

Os pacotes de retorno serão principalmente pacotes com tempo excedido de ICMP. Se você ativou os tipos de ICMP necessários, não precisará configurar nada.

    
por 07.12.2014 / 21:02
0

Eu tive que usar o sudo para traceroute e a opção -I ( Use ICMP ECHO for tracerouting ):

sudo traceroute google.com -I
    
por 08.12.2014 / 05:33