First, set up dynamic DNS (a subscription to a third party service such as DynDNS may be required). In most cases this can be done in your Internet router's settings. Otherwise you can use a small programme running on your computer to update the dynamic DNS with your current IP address.
Let's say that your dynamic DNS is mydns.example.com
Go to Components, Admin Tools, Web Application Firewall, Configure WAF, Exceptions
In the "Never block these IPs" enter @mydns.example.com (at-sign followed by your dynamic DNS). This tells Admin Tools to fetch the IP address from the dynamic DNS and whitelist it, i.e. not apply any security rules for it.
This trick works in all IP whitelist fields in Admin Tools since version 5.2.0. I implemented it for the same use case as yours. I, like my clients, do not have a static IP address. Since a few years ago my ISP removed that option. I needed a way to never block myself on certain sites. I am already paying for DynDNS and have set up my router to update the DynDNS assignment automatically. So it made perfect sense to let Admin Tools whitelist my DynDNS dynamic DNS assignment.
Caveat: Admin Tools asks your server to resolve the dynamic DNS on every page request. This is usually not a problem; DNS resolution is cached on most servers. Your web server will only contact the dynamic DNS server once every 1-5 minutes. On the requests when that happens you will have the page load time increase by approximately 0.2 to 0.5 seconds. This is typically not a problem. I just thought you should know.
Nicholas K. Dionysopoulos
Lead Developer and Director
🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!