First off, I’m not a network/firewall engineer. I’ve inherited a terrible MSP that can’t seem to help.
Here’s my situation. I have a Forticlient VPN. It has a host of sslvpn.acme.com with a public A record pointing to the public IP of my firewall. I have a remote gateway of https://sslvpn.acme.com:443/Okta. We have a server hosting an Okta radius agent that we use for MFA on the VPN. We are getting flooded with brute force password attacks. I’ve created a workflow in Okta that if an invalid user requests login to the VPN from an IP outside of the US or from an anonymizing proxy then the IP is added to the Okta blocklist. It’s a hammer approach but it’s mostly working.
I would like to block this traffic before it gets to the firewall. I have Imperva as a WAF solution. I figured I had nothing to lose by trying to use it to filter traffic. I changed my hosts file to point to sslvpn.acme.com to Imperva and pointed Imperva to my firewall. Initially, I couldn’t establish a VPN connection because Imperva saw the Forticlient agent (FortiSSLVPN) as a bot making an illegal resource request. I whitelisted the agent and attempted to connect. I got my MFA prompt, responded, and it connected…and then disconnected two seconds later.
I ran wireshark to see if I could see anything around the drop. I see a SYN & FIN flags from the VPN to my client. I see my client poll the internal domain controller. Then I see yellow text on a red background with an RST & ACK.
This might be a terrible idea. While I’d like to WAF the public 443 connection, I certainly don’t want to route all my traffic through the WAF. Clearly, I know just enough to be dangerous. My hope is to get enough info to take back to my MSP and have them *do something*. Any help or ideas are appreciated.