O Asterisk poderá fazer facilmente o que você precisa. Não há motivo para não poder ser usado para um sistema telefônico interno. Se for verdadeiramente apenas interno, não há necessidade de envolver uma empresa de VoIP para o serviço.
Além disso, acrescentarei que o asterisco de aprendizado, embora divertido, é uma curva de aprendizado bastante íngreme. A menos que você tenha demandas muito específicas ou muito tempo livre em mãos, eu usaria uma das muitas distribuições de asteriscos que vêm pré-configuradas com uma interface gráfica, painel de controle, etc. Eu normalmente faço careta nos painéis de controle GUI (cPanel , Webmin, etc.), mas neste caso sinto que é uma boa alternativa. Eu usei o Trixbox e o Elastix, ambos funcionam muito bem. Eles não farão qualquer coisa que você não poderia fazer manualmente com uma instalação de asterisco baunilha, mas facilitarão muito mais a implementação de roteamento de chamadas, aplicativos, coisas de IVR mais complexas, etc.