SSL Performance in FortiGate

Da SSL VPN über TCP abgewickelt wird, wird TCP in TCP gekapselt. Die damit verbundene Flusskontrolle und das Retransmitting von Paketen, kann zu mehr Neuübertragungen und Paketverlusten führen und damit zu einer schlechteren SSL VPN Performance.

Vermutlich ist damit TCP über TCP eine schlechte Idee. Wie wäre es wenn wir UDP für VPN-Tunneling in Verbindung mit DTLS verwenden. Der Verkehr wird damit immer noch mit TLS geschützt, aber in diesem Fall verwenden wir DTLS für die Kommunikationssicherheit und UDP für die Verbesserung der Übertragungsgeschwindigkeit. Daher muss sich die untere Schicht nicht um die erneute Übertragung von Segmenten und Flusskontrolle kümmern, da diese Aufgabe die Schicht oben drüber übernimmt.

Ab FortiOS 5.4 wird SSL VPN über UDP unterstützt. Diese Funktion kann aktuell nur über die Commandline konfiguriert werden.

config vpn ssl settings
          set dtls-tunnel enable/disable
end

Konfiguration des FortiClients für diese Funktion.

<sslvpn>
            <options>
                <enabled>1</enabled>
                <prefer_sslvpn_dns>1</prefer_sslvpn_dns>
                <dnscache_service_control>0</dnscache_service_control>
                <use_legacy_ssl_adapter>0</use_legacy_ssl_adapter>
                <preferred_dtls_tunnel>1</preferred_dtls_tunnel>
                <no_dhcp_server_route>0</no_dhcp_server_route>
             </options>