OpenVPN und ICMP Type 3

OpenVPN nutzt zur Bestimmung der Maximum Transmission Unit (MTU) ICMP Pakete des Typs 3. Dafür ist es dringend erforderlich das man diese auch an der Firewall zulässt.

If a software or hardware firewall is in place (especially if the firewall is whitelisting connections), make sure it is allowing ICMP Destination Unreachable: Fragmentation Needed (ICMP Type 3, Code 4) into your network. Windows Firewall, by default, has this rule configured, and there is no need to add this rule explicitly on Windows machines.
Quelle: docs.openvpn.net

Wenn man sich das auf dem VPN Server anschaut sieht das so aus:

tcpdump -i eth0 -p icmp
11:01:01.298080 IP 1.1.1.1 > vpn.chr.istoph.de: ICMP 1.1.1.1 unreachable - need to frag (mtu 1418), length 36
11:01:01.298084 IP 1.1.1.1 > vpn.chr.istoph.de: ICMP 1.1.1.1 unreachable - need to frag (mtu 1418), length 36

Als Empfehlung gebe ich mit mindestens die folgende Pakete freizuschalten.

iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT -m comment --comment "ICMP  Echo Reply"
iptables -A INPUT -p icmp --icmp-type 3 -j ACCEPT -m comment --comment "ICMP  Destination Unreachable"
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT -m comment --comment "ICMP  Echo Request"
iptables -A INPUT -p icmp --icmp-type 11 -j ACCEPT -m comment --comment "ICMP  Time Exceeded"

Tags: