Is is a long time ago that we introduced a simple, but powerful way to keep unwanted traffic away from the PBX: Just look at the domain name of incoming requests.
It seems, however, that this feature becomes useful only after the world really starts to use hosted PBX. Unfortunately not only the customers are starting to use the PBX in the cloud. As the hosted PBX goes mainstream, it also becomes a target for Crime, Inc.
One disadvantage of IPv4 is that there are only a relatively few IP addresses in the world. Scanners can and they do go from one IP address to the next and check out if there is anything coming back from that address. In the old times they primarily checked port 80 for HTTP or some other easy-to-exploit ports like an open FTP. Today the gangsters have added port 5060 to their checklist.
The problem will get a lot smaller when the world has switched to IPv6. There is will be a lot harder to just dumb-scan the possible IP addresses. In an IPv6 environment, scanners would have to first get the DNS name for the server before it can know a valid IPv6 address. Unless the service providers are assigning IPv6 addresses in a way that the hackers can predict.
The simple filter on our PBX for the domain name was that we were throwing the baby out with the bathwater. It was simply not possible to define exceptions. That made it practically impossible to use the feature in a real deployment. If the system administrator white-listed IP addresses, traffic from there would still be ignored if the domain name did not match. Adding that back in to the filter solves many of the trunk related problems, as admins can just add the IP addresses for the trunks.
While adding IP addresses would make it possible to use the domain filter feature, it would still be inconvenient. In environments where tenants can bring their own trunks, it would be even a pain to keep up with the changes that clients make to their trunks.
Because of this, we added a second reason why a packet would let through even though the domain does not match. This would be if the packet comes from a trunk, and the IP address where it was coming from was associated with that trunk. This can happen by automatic resolving of the DNS addresses for the trunk, or by explicit association of certain IP addresses with trunks.
With the new filter method the domain filter becomes a powerful, yes fast and easy way to fend off most of the unwanted traffic on the PBX. The domain name serves like an addition to the password, something that an outside attacker will not guess easily.
The new domain name filter will be available in version 5.3.