First and foremost, any decent 3CX deployment sits behind a decent router. You should be able to do the restriction via the ACL on the router, additionally, at a time when people have nothing better to do and quite often scan your network for ANY way to hack/steal info, (not specifically about 3CX), I believe that you must force road warriors to use VPN, PPTP at a minimum.
This is a very subjective topic but I's like to share our experience. We have over 200 host servers serving on average 25 guest VMs. Not only are we concerned about our data but that of the clients we host. We setup honeypots to have a more proactive approach at blocking specific IPs, this does cause some false positives but it's worth it. Certain IPs have ports 25,110,143,80,443,5060 open ONLY to catch abusive scanners. We use Mikrotik routers and we have scripts to block, log,email admin and redirect those IP addresses. There is no legitimate reason to hit those hosts. Next come the clients that have many road warriors working from public wifi. I consult for several large companies that set those up in restaurants/shops and you'd be amazed at the info collected for marketing purposes. NEVER allow anyone to track you port 80 activity and be able to associate it with (by IP addess) to you port 25/110/143 activity. You are generating a terrific marketing list with your e-mail address (relate URL to the FROM field on all outboud port 25 activity), Besides forcing road warriors to use SSMTP and SIMAP, the safest way to deal with this is a VPN. Most places pass PPTP and L2TP. Bottom line, FORCE VPN on your remote users. This handles all of your security issues and all of the 3CX issues. You can use this on Windows, Android and iOS easily.
Obviously the common denominator is a proper router. Grab one! ($100.00 or so gets you a Mikrotik 450G)