I run Asterisk (plain) on CentOS. Learned Linux AND Asterisk together, was fun. At the end, just follow "Asterisk. The definite guide" and you will be fine. There is only handful of config files you will need to touch to add line or tweak dial plan. I did check wrappers (like FreePBX) and didn't want it.
I'm software developer, writing dial plans is kind of fun, not so with GUI wrappers.
Security: I did try to expose Asterisk to WWW and immediately got scanners. Then I got Fail2Ban configured, but because of some bug (not remember exactly what) it still allowed some to come through and logs were filled with login attempts. So, I just closed it up.
Now I buy $20 Mikrotik router and set it up as VPN client for my home router. Then any VOIP phone connects to this router anywhere in a world and it works. I did try Yealink phone with built-in OpenVPN but just can't make it work with my Mikrotik router.
I picked CISCO SPA504G as a phone and just buy those. Enough features for what we need, cheap. And I got TFTP service up on same CentOS which works for provisioning. Now all my phones provisioned automatically, all configs on same CentOS VM and whole thing just runs under Hyper-V. I can move my setup to any hardware, just 3Gb image.
I'm software developer, writing dial plans is kind of fun, not so with GUI wrappers.
Security: I did try to expose Asterisk to WWW and immediately got scanners. Then I got Fail2Ban configured, but because of some bug (not remember exactly what) it still allowed some to come through and logs were filled with login attempts. So, I just closed it up.
Now I buy $20 Mikrotik router and set it up as VPN client for my home router. Then any VOIP phone connects to this router anywhere in a world and it works. I did try Yealink phone with built-in OpenVPN but just can't make it work with my Mikrotik router.
I picked CISCO SPA504G as a phone and just buy those. Enough features for what we need, cheap. And I got TFTP service up on same CentOS which works for provisioning. Now all my phones provisioned automatically, all configs on same CentOS VM and whole thing just runs under Hyper-V. I can move my setup to any hardware, just 3Gb image.