Hello!
We use 3CX on our own hardware - Linux version.
We use a VoIP gateway for stationary internal phones, mobile applications on smartphones, and a plugin for the 3CX talk site.
The following ports are open on the firewall for 3CX:
5060 (TCP UDP)
5090 (TCP UPD)
5001 (TCP)
9000-10999...