Solução correta - pergunte ao provedor todos os ips e adicione todos como trunk1-trunk2 ... trunkX
Estou tentando configurar uma caixa do Asterisk (Elastix) para receber chamadas SIP de um provedor sem exigir que allowguest=yes
seja ativado em sip.conf
.
Basicamente, o provedor de tronco SIP usa vários IPs para enviar as chamadas para nosso PBX e, assim, sem o campo host=
correspondente, a chamada é descartada. No entanto, ao ativar allowguest=yes
, qualquer pessoa pode enviar chamadas para o nosso PBX. Poderíamos fazer o firewall do PBX para permitir apenas o SIP de entrada do nosso provedor, mas isso impede que nossos aparelhos SIP possam se registrar em qualquer parte do mundo.
Isso deve ser um problema comum, e eu posso ver no passado que o Asterisk não tem suporte para dizer host={subnet}
ou várias host=
entradas. Este ainda é o caso? Como devo contornar este problema?
Solução correta - pergunte ao provedor todos os ips e adicione todos como trunk1-trunk2 ... trunkX
Acho que você pode definir host=dynamic
e restringir o acesso com as cláusulas permit
/ deny
, como em:
[trunk]
...
host=dynamic
deny=0.0.0.0/0.0.0.0 ; deny access
permit=192.168.0.0/255.255.255.0 ; allow 192.168.0.0/24 subnet
...
Além disso, você pode facilmente configurar uma cadeia de iptables para restringir o acesso ao 5060 port
(ou qualquer que seja sua porta SIP), o que você deve fazer de qualquer maneira.