Problemas con allowguest=no . Llamadas entrantes.

2,093 views
Skip to first unread message

gentoosiasta

unread,
Mar 8, 2011, 5:30:02 PM3/8/11
to asterisk-es
Hola a todos, que tal?

Hoy he estado intentando hacer mi asterisk un poco más seguro y he
deshabilitado las llamadas por usuarios no registrados con:

alowguest=no

Funciona perfectamente, los usuarios no registrados con asterisk no
pueden remitir llamadas.

Por otro lado me surgió un problema al solucionar otro, ahora las
llamadas entrantes con un número geográfico que tengo asignados a mi
extension "ramon" no consiguen entrar y asterisk muestra lo siguiente:


####
[Mar 9 00:08:49] NOTICE[24325]: chan_sip.c:20235
handle_request_invite: Failed to authenticate device "Anonymous" <sip:
0...@46.19.209.13>;tag=as2a193378
####

Como bien indica no se puede autenticar el usuario "Anonymous", esto
aparece si llamo desde otro terminal voip de una cuenta SIP externa a
mi servidor. Si llamo desde cualquier telefono tradicional en vez de
"Anonymous" saldria el numero desde el que llamo, mostrando el mismo
error.


Fijo otra vez allowguest en 'yes' y funciona perfectamente las
llamadas entrantes, pero no interesa porque sin usuario ni contraseña
podrian hacer llamadas gente externa...

¿Que podria hacer para solucinar esta cuestión?
saludos

Jon Bonilla

unread,
Mar 9, 2011, 6:10:51 PM3/9/11
to aster...@googlegroups.com
El Tue, 8 Mar 2011 14:30:02 -0800 (PST)
gentoosiasta <legi...@hotmail.com> escribió:

> Hola a todos, que tal?
>
> Hoy he estado intentando hacer mi asterisk un poco más seguro y he
> deshabilitado las llamadas por usuarios no registrados con:
>
> alowguest=no
>
> Funciona perfectamente, los usuarios no registrados con asterisk no
> pueden remitir llamadas.
>

Repitiendo hasta la saciedad:

Estar registrado no tiene nada que ver con poder hacer llamadas.

Iñaki Baz Castillo

unread,
Mar 9, 2011, 6:47:16 PM3/9/11
to aster...@googlegroups.com, gentoosiasta
El día 8 de marzo de 2011 23:30, gentoosiasta <legi...@hotmail.com> escribió:
> Fijo otra vez allowguest  en 'yes' y funciona perfectamente las
> llamadas entrantes, pero no interesa porque sin usuario ni contraseña
> podrian hacer llamadas gente externa...
>
> ¿Que podria hacer para solucinar esta cuestión?
> saludos

¿Las llamadas entrantes entran por un peer definido en sip.conf (de
tipo "peer")?

--
Iñaki Baz Castillo
<i...@aliax.net>

gentoosiasta

unread,
Mar 9, 2011, 6:38:03 PM3/9/11
to asterisk-es
Hola de nuevo.

¿No? entonces en que influye? cambiando este valor, si mis
dispositivos ATA no tienen marcada la opción Registratino 'Yes' no
deja hacer llamadas, y en la consola de asterisk se puede observar
como no deja autentificarse a dicho dispositivo...

salu2

Jon Bonilla

unread,
Mar 10, 2011, 4:23:23 AM3/10/11
to aster...@googlegroups.com
El Wed, 9 Mar 2011 15:38:03 -0800 (PST)
gentoosiasta <legi...@hotmail.com> escribió:

> Hola de nuevo.


Eso es un comportamiento de tus terminales. Que tus terminales no dejen hacer
llamadas is no estás registrado, esto no quiere decir que hacer llamadas y
estar registrado tengan relación.

El registro únicamente tiene relación con la recepción de llamadas. Es digamos,
"decirle a la PBX dónde estoy ara que me pueda enviar llamadas". Para hacer
llamadas no necesitas estar registrado en absoluto. Tú ya sabes dónde está la
PBX :P

gentoosiasta

unread,
Mar 10, 2011, 7:10:05 AM3/10/11
to asterisk-es
Okey entiendo...

Pero una inquietud... si estar registrado no importa para remitir
llamadas...entonces sin usuario ni contraseña valido de ninguna
extensión se podrán hacer llamadas?

salu2

gentoosiasta

unread,
Mar 10, 2011, 7:15:09 AM3/10/11
to asterisk-es

> ¿Las llamadas entrantes entran por un peer definido en sip.conf (de
> tipo "peer")?

> Iñaki Baz Castillo
> <i...@aliax.net>


Hola de nuevo.

Iñaki, para el tema de las llamadas entrantes no he creado nada en
sip.conf ¿deberia de hacerlo? si es asi..no comprendo porqué.

Las llamadas entrantes, entran por un numero geográfico apuntando a la
ip de mi centralita.

Gracias a todos por vuestra ayuda.

salu2

Saúl Ibarra Corretgé

unread,
Mar 10, 2011, 7:28:54 AM3/10/11
to aster...@googlegroups.com
> Hola de nuevo.
>
> Iñaki, para el tema de las llamadas entrantes no he creado nada en
> sip.conf ¿deberia de hacerlo? si es asi..no comprendo porqué.
>

Si no has creado nada, *qué* diferencia una llamada a tu geográfico de
un intruso? Pregúntate eso.

--
/Saúl
http://saghul.net | http://sipdoc.net

Jon Bonilla

unread,
Mar 10, 2011, 7:30:00 AM3/10/11
to aster...@googlegroups.com
El Thu, 10 Mar 2011 04:10:05 -0800 (PST)
gentoosiasta <legi...@hotmail.com> escribió:

> Okey entiendo...

sin usuario y contraseña no puedes hacer llamadas si no tienes lo del
allowguest o el secret en blanco (?) o el insecure.

para hacer llamadas nada de registro sino autenticación en cada llamada que
haces.

ra...@dimension-virtual.com

unread,
Mar 10, 2011, 8:53:09 AM3/10/11
to aster...@googlegroups.com
gentoosiasta <legi...@hotmail.com> escribió:

La teoría dice ... "depende" ... de como tengas configura la seguridad
de asterisk.

Saludos

----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.

ra...@dimension-virtual.com

unread,
Mar 10, 2011, 8:54:44 AM3/10/11
to aster...@googlegroups.com
gentoosiasta <legi...@hotmail.com> escribió:


> Hola de nuevo.
>
> Iñaki, para el tema de las llamadas entrantes no he creado nada en
> sip.conf ¿deberia de hacerlo? si es asi..no comprendo porqué.
>
> Las llamadas entrantes, entran por un numero geográfico apuntando a la
> ip de mi centralita.

Pero cuando esas peticiones lleguen a la centralita, la centralita
tiene que saber "de quien son" ... ya se autenticando por ip, o porque
tu has hecho un regiter => en el proxy del proveedor.
Y cuando sepa "de quien es la llamada entrante", tendrá que saber a
donde mandarla.

Richard Alvarez

unread,
Mar 10, 2011, 8:19:26 AM3/10/11
to aster...@googlegroups.com
Tienes que registrar en sip.conf tu proveedor ip


Richard Alvarez



--
Este email pertenece a la lista de Asterisk-ES (http://www.asterisk-es.org)

Entra ahora en el canal de irc de Asterisk-ES para charlar en directo sobre VoIP y
Asterisk: http://www.asterisk-es.org/

~~~~~ Normas de la lista Asterisk-ES: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
http://comunidad.asterisk-es.org/index.php?title=Lista:normas-asterisk-es
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Para anular la suscripción: asterisk-es...@googlegroups.com

Iñaki Baz Castillo

unread,
Mar 10, 2011, 12:46:08 PM3/10/11
to aster...@googlegroups.com, gentoosiasta
El día 10 de marzo de 2011 13:10, gentoosiasta <legi...@hotmail.com> escribió:
> Pero una inquietud... si estar registrado no importa para remitir
> llamadas...entonces sin usuario ni contraseña valido de ninguna
> extensión se podrán hacer llamadas?

Dices que lo entiendes pero sigues asumiendo que "registrarse" y
"autenticarse" significa lo mismo. No es así.

En SIP no te "logueas" al principio y luego ya no hace falta en el
resto de llamadas. No. Desconozco porqué todo el mundo tiene a pensar
que funciona así. En cada llamada hay qeu autenticarse, el serer lo
solicita respondiendo 407 al primer INVITE y el usuario debe generar
un segundo INVITE añadiendo credenciales en base al "nonce" recibido
en el 407. Todo esto no tiene NAAADA que ver con el hecho de que el
tfno se haya registrado previmente o no (cosa que SOLO sirve para
recibir llamadas allí donde esté, punto).

gentoosiasta

unread,
Mar 10, 2011, 1:35:56 PM3/10/11
to asterisk-es


On 10 mar, 18:46, Iñaki Baz Castillo <i...@aliax.net> wrote:
Hola de nuevo y muchisimas gracias por sus respuestas.

Vamos a ver....si el allowguest no se encarga de "permitir/denegar
quien se registra" supongo que de lo que se encargará es de la
autentificación del usuario antes de hacer la llamada,no? Si no son
correctos, no se autentificará contra el asterisk. ¿no?

Como he dicho anteriormente, mi numero geográfico apunta a la
dirección IP publica de mi asterisk. Dicho numero geográfico va a
sociado con una URI de mi servidor (que apunta a una extensión).

Cuando entran las llamadas desde el numero geográfico, en la consola
de asterisk se autentifica el numero que me llama (Si me llama el
numero 943423651, muestra +34943423651) y al activar el allowguest=no,
no se consigue autentificar. ¿Que podria hacer?


salu2

gentoosiasta

unread,
Mar 10, 2011, 1:37:03 PM3/10/11
to asterisk-es
> Tienes que registrar en sip.conf tu proveedor ip

Esto lo he hecho para las llamadas salientes ya que utilizo betamax.
Para las llamadas entrantes, entran directamente a mi asterisk.

salu2

Iñaki Baz Castillo

unread,
Mar 10, 2011, 2:36:06 PM3/10/11
to aster...@googlegroups.com, gentoosiasta
El día 10 de marzo de 2011 19:35, gentoosiasta <legi...@hotmail.com> escribió:
> Vamos a ver....si el allowguest no se encarga de "permitir/denegar
> quien se registra" supongo que de lo que se encargará es de la
> autentificación del usuario antes de hacer la llamada,no? Si no son
> correctos, no se autentificará contra el asterisk. ¿no?

No. Que a un peer/user de asterisk se le exija autenticación SIP o no
depende de los atributos del peer correspondiente en sip.conf, y no
del parámetro allowguest.


> Como he dicho anteriormente, mi numero geográfico apunta a la
> dirección IP publica de mi asterisk. Dicho numero geográfico va a
> sociado con una URI de mi servidor (que apunta a una extensión).
>
> Cuando entran las llamadas desde el numero geográfico, en la consola
> de asterisk se autentifica el numero que me llama (Si me llama el
> numero 943423651, muestra +34943423651) y al activar el allowguest=no,
> no se consigue autentificar. ¿Que podria hacer?

Pero... ¿en qué te *basas* para decir que "se autentifica el numero
que me llama"? A ver: autenticarse conlleva usuario y password,
generación de credenciales, respuesta 407/401 del servidor informando
del noonce a usar para generar las credenciales, etc.

Por favor, deja de llamar "autenticar" a cualquier cosa, porque no es
cualquier cosa.

Iñaki Baz Castillo

unread,
Mar 10, 2011, 2:37:38 PM3/10/11
to aster...@googlegroups.com, gentoosiasta
El día 10 de marzo de 2011 19:37, gentoosiasta <legi...@hotmail.com> escribió:
> Esto lo he hecho para las llamadas salientes ya que utilizo betamax.


> Para las llamadas entrantes, entran directamente a mi asterisk.

Y para que se identifiquen con un determinado peer tendrás que tener
un peer definido en tu sip.conf con la IP del proveedor y "type=peer".
Si no haces eso, la llamada te entrará por el [general] vía el
contexto definido en "defaultcontext", y si allowguess es "no"
entonces directamente no entrará y será rechazada.

Richard Alvarez

unread,
Mar 10, 2011, 3:05:22 PM3/10/11
to aster...@googlegroups.com
Si después de esto no comprendes ...
Podes pasar por asterisk negocios para que te presupuesten la solución a tu problema.

 

--
Iñaki Baz Castillo
<i...@aliax.net>

--
Este email pertenece a la lista de Asterisk-ES (http://www.asterisk-es.org)

~~~ Normas de la lista Asterisk-ES: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~

gentoosiasta

unread,
Mar 10, 2011, 2:37:31 PM3/10/11
to asterisk-es
Me respnodo a mi mismo...

Ya he encontrado la solución...como bien deciais tenia que declarar el
proveedor sip que me vende el numero DID en el sip.conf (era
obvio,como no).

Este proveedor tiene varios servidores, los cuales he tenido que ir
declarando cada ip con cada extension en mi sip.conf, por ejemplo:

[servidor-1]
host=IP_del_proveedor
port=5060
context=entrantes
type=peer
insecure=very

[servidor-2]
host=IP_del_proveedor
port=5060
context=entrantes
type=peer
insecure=very


Con esto, asterisk al intentar autentificarse alguna ip de esas 3
extensiones, lo asociara al contexto 'entrantes'. Despues dentro de
extensions.conf, en el contexto [entrantes] he hecho un include =>
usuarios, lo cual contiene el dial para hacer sonar el telefono de los
usuarios internos de asterisk.


Mi duda ahora es... ¿yo no podria hacer todo esto sin tener que
declarar el proveedor sip que vende los números DID en el sip.conf?

Imaginense que yo doy acceso a un usuario a mi asterisk, con usuario y
password. Y el sin mi consentimiento decide comprar un numero DID a
cualquier proveedor y asociarlo a su cuenta, no podria ya que no tengo
declarado tal host en mi sip.conf.. ¿Se podria hacer?

Un saludo.

gentoosiasta

unread,
Mar 10, 2011, 2:44:55 PM3/10/11
to asterisk-es
Porcierto Iñaki, gracias a tí y a todos por sus reexplicacionesa
(jeje).

Ya entiendo la diferencia entre 'registrar' y 'autentificar', voy a
citarla a continuación, si tengo cualquier error porfavor corriganme
gracias :D...


'Autentificar': El telefono se autentifica contra la centralita
cuando va a realizar una llamada. Este envia un INVITE sin las
credenciales definidas, más tarde la centralita responde con un
'Unauthorized'. Entonces el telefono mandará otro INVITE con las
credenciales definidas.
Si todo fué bien la llamada podrá ser ejecutada. Allowguest=no .
Evita que se AUTENTIFIQUEN usuarios no definidios en sip.conf

'Registrar': Simplemente es para decirle a la centralita en que lugar
nos encontramos, por ejemplo, en que ip nos encontramos para poder
mandarnos llamadas. Sin no nos registramos no podemos recibir llamadas
ya qué, asterisk no "sabe donde estamos"..


salu2.

ra...@dimension-virtual.com

unread,
Mar 11, 2011, 4:46:30 AM3/11/11
to aster...@googlegroups.com
gentoosiasta <legi...@hotmail.com> escribió:

> Me respnodo a mi mismo...

Mas bíen le haces caso a lo que te han explicado como 4 veces.

> Ya he encontrado la solución...como bien deciais tenia que declarar el
> proveedor sip que me vende el numero DID en el sip.conf (era
> obvio,como no).

Te la han dado, se humilde y da las gracias.

> Con esto, asterisk al intentar autentificarse alguna ip de esas 3
> extensiones, lo asociara al contexto 'entrantes'.

Demuestras con este párrafo no haber entendido una mierda de lo que
Iñaki te explicó, con esa configuración que has puesto NO le estás
pidiendo autenticación al proveedor, simplemente estás aceptando sus
invites SIN pedirle autenticación y estás diciendole a Asterisk que
hacer y a donde mandar esa peticiones. Solo estás IDENTIFICANDO y
ASOCIANDO las peticiones desde esas IP's, NO las estás autenticando.

A ver si aprendes que Autenticación no lo es mismo que Autorización,
ni tampoco es lo mismo que Registro.

> Mi duda ahora es... ¿yo no podria hacer todo esto sin tener que
> declarar el proveedor sip que vende los números DID en el sip.conf?

No deberías ni plantearte eso. Destierralo de tu mente, a no ser que
quieras ser carnaza de los hackers, y no precisamente de los de
sombrero blanco.

> Imaginense que yo doy acceso a un usuario a mi asterisk, con usuario y
> password. Y el sin mi consentimiento decide comprar un numero DID a
> cualquier proveedor y asociarlo a su cuenta, no podria ya que no tengo
> declarado tal host en mi sip.conf.. ¿Se podria hacer?

Que te quites esa idea de la cabeza, que vas por mal camino. Eso es
como ponerse a limpiar una escopeta cargada con el cañón apuntando a
tu cara.

ra...@dimension-virtual.com

unread,
Mar 11, 2011, 4:49:28 AM3/11/11
to aster...@googlegroups.com
gentoosiasta <legi...@hotmail.com> escribió:

> Porcierto Iñaki, gracias a tí y a todos por sus reexplicacionesa
> (jeje).

;-), es de sabios rectificar. Así que te pido disculpas por lo que te
puse en el otro mail.

> Ya entiendo la diferencia entre 'registrar' y 'autentificar', voy a
> citarla a continuación, si tengo cualquier error porfavor corriganme
> gracias :D...
>
>
> 'Autentificar': El telefono se autentifica contra la centralita
> cuando va a realizar una llamada. Este envia un INVITE sin las
> credenciales definidas, más tarde la centralita responde con un
> 'Unauthorized'. Entonces el telefono mandará otro INVITE con las
> credenciales definidas.
> Si todo fué bien la llamada podrá ser ejecutada. Allowguest=no .
> Evita que se AUTENTIFIQUEN usuarios no definidios en sip.conf

Vale, mas o menos ... XDD

> 'Registrar': Simplemente es para decirle a la centralita en que lugar
> nos encontramos, por ejemplo, en que ip nos encontramos para poder
> mandarnos llamadas. Sin no nos registramos no podemos recibir llamadas
> ya qué, asterisk no "sabe donde estamos"..

No, a la segunda parte, se pueden recibir llamadas si estar
registrado, de hecho es lo que te está pasando con tu proveedor de
DID, tu no te has registrado en el proveedor, pero estás recibiendo
llamadas, pues lo mismo se puede hacer con el Asterisk y los UAC's con
los que trabaje, le puedes enviar llamadas a un UAC sin necesidad de
que esté registrado.

Iñaki Baz Castillo

unread,
Mar 11, 2011, 3:51:54 AM3/11/11
to aster...@googlegroups.com, gentoosiasta

Están bien definidos ambos conceptos ;)

Yo añadiría una cosa: Durante el registro *también* se pide
autenticación (en el 99,99% de las veces). Es decir, el tfno desde
alguna IP cualquiera envía el REGISTER, asterisk le responde 401 con
un nonce y el teléfono envía un nuevo REGISTER con credenciales.

Iñaki Baz Castillo

unread,
Mar 11, 2011, 3:55:04 AM3/11/11
to aster...@googlegroups.com, gentoosiasta
El día 10 de marzo de 2011 20:37, gentoosiasta <legi...@hotmail.com> escribió:
> Con esto, asterisk al intentar autentificarse alguna ip de esas 3
> extensiones, lo asociara al contexto 'entrantes'.

En el otro correo lo has dicho muy bien, pero en éste estás
mencionando "autenticarse" incorrectamente. Las IP's no se autentican,
como mucho se autorizan. Para evitar líos yo sugiero asociar
"autenticación" única y exactamente al concepto de envío de request
SIP (INVITE/REGISTER/etc), respuesta 401/407 del server con un nonce y
envío de un nuevo request con credenciales.

> Mi duda ahora es... ¿yo no podria hacer todo esto sin tener que
> declarar el proveedor sip que vende los números DID en el sip.conf?

Podrías tal y como lo tenías antes, o sea, con allowguess=yes y todas
las llamadas entrarían al contexto que tengas en el parámetro
"defaultcontext" de la sección [global] en sip.conf.


> Imaginense que yo doy acceso a un usuario a mi asterisk, con usuario y
> password. Y el sin mi consentimiento decide comprar un numero DID a
> cualquier proveedor y asociarlo a su cuenta, no podria ya que no tengo
> declarado tal host en mi sip.conf.. ¿Se podria hacer?

Tal y como lo tienes ahora ya lo tienes hecho así, ¿no?

gentoosiasta

unread,
Mar 12, 2011, 9:34:47 PM3/12/11
to asterisk-es
Hola de nuevo.

Esta todo 'casi' entendido jeje,pero quiero aclrar varias
cosas,veamos... ahi 2 respuestas dadas que se contradicen un poco:


Manwe Jon Bonilla:

>El registro únicamente tiene relación con la recepción de llamadas. Es digamos,
>"decirle a la PBX dónde estoy ara que me pueda enviar llamadas". Para hacer
>llamadas no necesitas estar registrado en absoluto. Tú ya sabes dónde está la
>PBX :P

r...@dimension-virtual.com
>No, a la segunda parte, se pueden recibir llamadas si estar
>registrado, de hecho es lo que te está pasando con tu proveedor de
>DID, tu no te has registrado en el proveedor, pero estás recibiendo
>llamadas, pues lo mismo se puede hacer con el Asterisk y los UAC's con
>los que trabaje, le puedes enviar llamadas a un UAC sin necesidad de
>que esté registrado.


¿Entonces técnicamente como consigue asterisk enviar la llamada a tal
dirección IP si no se ha registrado con la centralita?



r...@dimension-virtual.com
> Vale, mas o menos ... XDD


jeje, ¿¿ mas o menos ?? ¿que más añadirias tu a esa parrafo?



Iñaki Baz Castillo:

>Podrías tal y como lo tenías antes, o sea, con allowguess=yes y todas
>las llamadas entrarían al contexto que tengas en el parámetro
>"defaultcontext" de la sección [global] en sip.conf.

Si pero con esto volveriamos al problema principal,¿no? una persona
sin usuario ni password,podria realizár llamadas por mi
asterisk ya que no estariamos pidiendo autentificación, ¿cierto?


Iñaki Baz Castillo:

>Tal y como lo tienes ahora ya lo tienes hecho así, ¿no?

No. Ahora mismo he añadido las IP de los servidores SIP de un
proveedor SIP en concreto. Si yo ahora compro otro DID en otro
proveedor
con diferentes ips, mi asterisk no aceptará el tráfico de este último
proveedor ya que no estarian asignadas en el sip.conf..



Muchisimas gracias a todos por vuestra gran ayuda.
Saludos.

Elio Rojano

unread,
Mar 14, 2011, 4:18:52 AM3/14/11
to aster...@googlegroups.com
El 13 de marzo de 2011 03:34, gentoosiasta <legi...@hotmail.com> escribió:
Hola de nuevo.

Esta todo 'casi' entendido jeje,pero quiero aclrar varias
cosas,veamos... ahi 2 respuestas dadas que se contradicen un poco:

Si te fijas bien, no se contradicen, al contrario, son complementarias. 

Manwe Jon Bonilla:

>El registro únicamente tiene relación con la recepción de llamadas. Es digamos,
>"decirle a la PBX dónde estoy ara que me pueda enviar llamadas". Para hacer
>llamadas no necesitas estar registrado en absoluto. Tú ya sabes dónde está la
>PBX :P


Esto es correcto... si tu red utiliza DHCP, los terminales pueden cambiar de IP cada cierto tiempo.
Si los terminales no se registrasen (le dicen al Asterisk cual es su IP) Asterisk no tiene porqué saber dónde se encuentra el terminal para cuando Asterisk quiera enviarle una llamada a dicho terminal.
 
r...@dimension-virtual.com
>No, a la segunda parte, se pueden recibir llamadas si estar
>registrado, de hecho es lo que te está pasando con tu proveedor de
>DID, tu no te has registrado en el proveedor, pero estás recibiendo
>llamadas, pues lo mismo se puede hacer con el Asterisk y los UAC's con
>los que trabaje, le puedes enviar llamadas a un UAC sin necesidad de
>que esté registrado.


Esto también es correcto. Si los terminales tienen una IP fija y los usuarios SIP tienen definidos en su configuración la dirección IP en la que se encuentran, no es necesario el registro para que Asterisk le envíe la llamada.
Es decir, si el Asterisk, por el motivo que sea, sabe cual es la IP de la máquina a la que le tiene que enviar una llamada, entonces tampoco es necesario el registro.

¿Entonces técnicamente como consigue asterisk enviar la llamada a tal
dirección IP si no se ha registrado con la centralita?


Como te he dicho arriba... ahora bien ¿qué parámetro necesitas definir para que Asterisk sepa la IP del terminal?

Te lo dejo como ejercicio, aquí tienes la lista de parámetros, a ver si das con el que és:

r...@dimension-virtual.com
> Vale, mas o menos ... XDD


jeje, ¿¿ mas o menos ??  ¿que más añadirias tu a esa parrafo?



Iñaki Baz Castillo:

>Podrías tal y como lo tenías antes, o sea, con allowguess=yes y todas
>las llamadas entrarían al contexto que tengas en el parámetro
>"defaultcontext" de la sección [global] en sip.conf.

Si pero con esto volveriamos al problema principal,¿no? una persona
sin usuario ni password,podria realizár llamadas por mi
asterisk ya que no estariamos pidiendo autentificación, ¿cierto?


Iñaki Baz Castillo:

>Tal y como lo tienes ahora ya lo tienes hecho así, ¿no?

No. Ahora mismo he añadido las IP de los servidores SIP de un
proveedor SIP en concreto. Si yo ahora compro otro DID en otro
proveedor
con diferentes ips, mi asterisk no aceptará el tráfico de este último
proveedor ya que no estarian asignadas en el sip.conf..



Muchisimas gracias a todos por vuestra gran ayuda.
Saludos.
--
Este email pertenece a la lista de Asterisk-ES (http://www.asterisk-es.org)

~~~ Normas de la lista Asterisk-ES: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
http://comunidad.asterisk-es.org/index.php?title=Lista:normas-asterisk-es
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Para anular la suscripción: asterisk-es...@googlegroups.com



--
http://www.sinologic.net/

Iñaki Baz Castillo

unread,
Mar 14, 2011, 10:18:30 AM3/14/11
to aster...@googlegroups.com, Elio Rojano
El día 14 de marzo de 2011 09:18, Elio Rojano <hel...@gmail.com> escribió:
> Esto también es correcto. Si los terminales tienen una IP fija y los
> usuarios SIP tienen definidos en su configuración la dirección IP en la que
> se encuentran, no es necesario el registro para que Asterisk le envíe la
> llamada.
> Es decir, si el Asterisk, por el motivo que sea, sabe cual es la IP de la
> máquina a la que le tiene que enviar una llamada, entonces tampoco es
> necesario el registro.

Un ejemplo más fácil de verlo sería la configuración de un proveedor
SIP el cuál obviamente tiene una IP fija.

Iñaki Baz Castillo

unread,
Mar 14, 2011, 10:19:37 AM3/14/11
to aster...@googlegroups.com, gentoosiasta
El día 13 de marzo de 2011 03:34, gentoosiasta <legi...@hotmail.com> escribió:
>>Podrías tal y como lo tenías antes, o sea, con allowguess=yes y todas
>>las llamadas entrarían al contexto que tengas en el parámetro
>>"defaultcontext" de la sección [global] en sip.conf.
>
> Si pero con esto volveriamos al problema principal,¿no? una persona
> sin usuario ni password,podria realizár llamadas por mi
> asterisk ya que no estariamos pidiendo autentificación, ¿cierto?

Depende de lo que le permitas hacer en el contexto por defecto.

gentoosiasta

unread,
Mar 15, 2011, 6:02:48 PM3/15/11
to asterisk-es
Hola de nuevo y vayas respuestazas que os habeis brindado señores,
gracias, gracias y 1000 gracias jeje...

Voy a dar un poquito más la lata...


Para el usuario Elio Rojano:

Creo que dicho parametro es host=dynamic. Pero creo recordar que este
parámetro solo conseguia la IP de los peers conectados una vez
registrados en asterisk. ¿cierto? si esto es asi, como conseguiria las
direcciones de los peers no registrados obteniendo dichos peers la ip
por DHCP (dinámica) ??


Iñaki Baz Castillo:

¿Que podria hacer para fijar el allowguest=yes, ahorrarme el declarar
cada ip de cada proveedor y demás? ¿Que podria fijar en el contexto
por defecto para tener algo de seguridad eficiente?



Muchisisisiissmas gracias a todos.
Bye :P

Elio Rojano

unread,
Mar 16, 2011, 8:47:52 AM3/16/11
to aster...@googlegroups.com, gentoosiasta
El 15 de marzo de 2011 23:02, gentoosiasta <legi...@hotmail.com> escribió:
Hola de nuevo y vayas respuestazas que os habeis brindado señores,
gracias, gracias y 1000 gracias jeje...

Voy a dar un poquito más la lata...


Para el usuario Elio Rojano:

Creo que dicho parametro es host=dynamic. Pero creo recordar que este
parámetro solo conseguia la IP de los peers conectados una vez
registrados en asterisk. ¿cierto? si esto es asi, como conseguiria las
direcciones de los peers no registrados obteniendo dichos peers la ip
por DHCP (dinámica) ??

No te lo voy a poner tan fácil... lee un poco y seguro que lo encuentras y no se te olvida. :D
 


Iñaki Baz Castillo:

¿Que podria hacer para fijar el allowguest=yes, ahorrarme el declarar
cada ip de cada proveedor y demás? ¿Que podria fijar en el contexto
por defecto para tener algo de seguridad eficiente?



Muchisisisiissmas gracias a todos.
Bye :P
--
Este email pertenece a la lista de Asterisk-ES (http://www.asterisk-es.org)

~~~ Normas de la lista Asterisk-ES: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
http://comunidad.asterisk-es.org/index.php?title=Lista:normas-asterisk-es
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Para anular la suscripción: asterisk-es...@googlegroups.com



--
http://www.sinologic.net/

Iñaki Baz Castillo

unread,
Mar 16, 2011, 9:38:00 AM3/16/11
to aster...@googlegroups.com, gentoosiasta
El día 15 de marzo de 2011 23:02, gentoosiasta <legi...@hotmail.com> escribió:
> ¿Que podria hacer para fijar el allowguest=yes, ahorrarme el declarar
> cada ip de cada proveedor y demás? ¿Que podria fijar en el contexto
> por defecto para tener algo de seguridad eficiente?

Creo que ya se ha comentado esto bastante. Si quieres permitir
entrantes desde cualquier IP entonces allowguest=yes, pero insisto,
eso permite desde cualquier IP. Y obviamente no puedes añadir reglas
de Iptables porque, según parece, precisamente lo que quieres es no
tener que dar de alta peers por cada nuevo proveedor de envío de
llamadas entrantes.

De todas formas, lo mejor es, precisamente, que te encargues de dar de
alta esos peers.

gentoosiasta

unread,
Mar 16, 2011, 6:45:11 PM3/16/11
to asterisk-es


On 16 mar, 14:38, Iñaki Baz Castillo <i...@aliax.net> wrote:
> El día 15 de marzo de 2011 23:02, gentoosiasta <legion...@hotmail.com> escribió:
>
> > ¿Que podria hacer para fijar el allowguest=yes, ahorrarme el declarar
> > cada ip de cada proveedor y demás? ¿Que podria fijar en el contexto
> > por defecto para tener algo de seguridad eficiente?
>
> Creo que ya se ha comentado esto bastante. Si quieres permitir
> entrantes desde cualquier IP entonces allowguest=yes, pero insisto,
> eso permite desde cualquier IP. Y obviamente no puedes añadir reglas
> de Iptables porque, según parece, precisamente lo que quieres es no
> tener que dar de alta peers por cada nuevo proveedor de envío de
> llamadas entrantes.
>


Hola Iñaki y gracias de nuevo.

Si ya me quedó claro para que sirve allowguest.El objetivo es ese,
algo de seguridad sin tener que estar dando de alta cada peer que
accedera a mi asterisk. Respecto a lo de la "seguridad" no me referia
tirar de iptables, simplemente que podria implementar en el Asterisk.
Si en [default] fijo el allowguest=yes, las llamadas de cualquier
proveedor DID entran sin problemas, pero tambien dentro de mi red un
usuario sin autentificar puede remitir llamadas.
¿Podria dejar que accederia cualquier ip a mi asterisk y evitar que un
usuario sin autentificar pueda remitir llamadas?

Elio Rojano, muchisimas gracias a ti tambien, le hechare un vistazo,
aunque leer en inglés me cuesta un poco y tengo que tirar de
tráductor.


Gracias a todos una vez más.
Saludos.

gentoosiasta

unread,
Mar 16, 2011, 7:10:42 PM3/16/11
to asterisk-es
Elio Rojano...

Según dice del parámetro host....


host = dynamic|hostname|IPAddr : How to find the client - IP # or host
name. If you want the phone to register itself, use the keyword
dynamic instead of Host IP.

Dice que si se quiere saber la ip del cliente, envez de la IP que se
fije el valor de host en 'dynamic'..


Creo que seria host el parámetro que hace "encontrar" la ip del peer.

Saludos.


Iñaki Baz Castillo

unread,
Mar 16, 2011, 7:54:19 PM3/16/11
to aster...@googlegroups.com, gentoosiasta
El día 16 de marzo de 2011 23:45, gentoosiasta <legi...@hotmail.com> escribió:
> ¿Podria dejar que accederia cualquier ip a mi asterisk y evitar que un
> usuario sin autentificar pueda remitir llamadas?

Sí. Ya respondí a eso en otro correo pero no analizaste la respuesta.

Iñaki Baz Castillo

unread,
Mar 16, 2011, 7:57:04 PM3/16/11
to aster...@googlegroups.com, gentoosiasta
El día 17 de marzo de 2011 00:10, gentoosiasta <legi...@hotmail.com> escribió:
> host = dynamic|hostname|IPAddr : How to find the client - IP # or host
> name. If you want the phone to register itself, use the keyword
> dynamic instead of Host IP.
>
> Dice que si se quiere saber la ip del cliente, envez de la IP que se
> fije el valor de host en 'dynamic'..
>
>
> Creo que seria host el parámetro que hace "encontrar" la ip del peer.

=> *** If you want the phone to register itself ***

ra...@dimension-virtual.com

unread,
Mar 17, 2011, 6:31:08 AM3/17/11
to aster...@googlegroups.com
gentoosiasta <legi...@hotmail.com> escribió:


> Hola Iñaki y gracias de nuevo.
>
> Si ya me quedó claro para que sirve allowguest.El objetivo es ese,
> algo de seguridad sin tener que estar dando de alta cada peer que
> accedera a mi asterisk.

Tu sigues empeñado en apuntarte a la cabeza con una recortada ¿verdad?
... tu mismo.

> Respecto a lo de la "seguridad" no me referia
> tirar de iptables, simplemente que podria implementar en el Asterisk.

Asterisk no es fiable para temas de seguridad. Hay que complementarla.

> Si en [default] fijo el allowguest=yes, las llamadas de cualquier
> proveedor DID entran sin problemas, pero tambien dentro de mi red un
> usuario sin autentificar puede remitir llamadas.

Un usuario no ... CUALQUIER USUARIO, ya sea desde dentro o desde fuera
de tu red. PERO ya te lo ha dicho Iñaki como 4 veces ... si activas
allowguest=yes, las llamadas van a un sitio CONCRETO, ya dependerá de
lo que hagas ahí con las llamadas que recibas.

> ¿Podria dejar que accederia cualquier ip a mi asterisk y evitar que un
> usuario sin autentificar pueda remitir llamadas?

¿Si te regalo 2 mts de soga, prometes colgarte del árbol mas alto que
encuentres?

> Elio Rojano, muchisimas gracias a ti tambien, le hechare un vistazo,
> aunque leer en inglés me cuesta un poco y tengo que tirar de
> tráductor.

No te lo tomes a mal, pero las cosas que te comentan en castellano,
tampoco pareces entenderlas.

ra...@dimension-virtual.com

unread,
Mar 17, 2011, 6:35:31 AM3/17/11
to aster...@googlegroups.com
gentoosiasta <legi...@hotmail.com> escribió:

> Elio Rojano...
>
> Según dice del parámetro host....
>
>
> host = dynamic|hostname|IPAddr : How to find the client - IP # or host
> name. If you want the phone to register itself, use the keyword
> dynamic instead of Host IP.
>
> Dice que si se quiere saber la ip del cliente, envez de la IP que se
> fije el valor de host en 'dynamic'..

No dice eso, dice que si quieres que el terminal se registre el mismo,
que uses "dynamic". Hay que reconocer que la propia explicación en
inglés está mal, pero eso es otro tema.


> Creo que seria host el parámetro que hace "encontrar" la ip del peer.

Te equivocas de cabo a rabo ... el parámetro host, no es para
"encontrar" nada, es una forma más de hacer el pésimo peer-matching de
asterisk. Se tiene que combinar su uso con los parámetros username,
secret y la definición del peer [..] (otra espantosa limitación de
asterisk, dicho sea de paso).
Si pones host='dynamic', el peer-matching se hará en función de los
otros parámetros, si pones una IP concreta, el peer-matching se hará
por IP. Punto pelota.

gentoosiasta

unread,
Mar 24, 2011, 12:20:23 PM3/24/11
to asterisk-es
Hola de nuevo.

Muchisimas gracias a todos por vuestras respuestas y perdonar por el
retraso pero he ido bastante liado con el trabajo.

He entendido algo más, o eso parece. En todos los documentos que leí
indicaba que host = dynamic se encargaba de "adivinar la ip del
terminal", al parecer como comentais vosotros no es asi. Al indicar
host=dynamic dejas paso a que el "match" se haga por otros parámetros
como username y secret por ejemplo.

Ahora como comentaba Elio Rojano...
¿cual es el parámetro que se encarga de obtener la ip de los
terminales?

Debido a mi fatal ingles no he dado con el parámetro o eso parece,
agradeceria que lo compartierais.


Sobre el tema del allowguest lo dejaré fijado en no, ya qué comenta el
usuario anterior (varias veces) es un suicidio.

Muchisimas gracias por vuestro tiempo.
saludos.

Saúl Ibarra Corretgé

unread,
Mar 25, 2011, 4:16:11 AM3/25/11
to aster...@googlegroups.com
2011/3/24 gentoosiasta <legi...@hotmail.com>:

> Hola de nuevo.
>
> Muchisimas gracias a todos por vuestras respuestas y perdonar por el
> retraso pero he ido bastante liado con el trabajo.
>
> He entendido algo más, o eso parece. En todos los documentos que leí
> indicaba que host = dynamic se encargaba de "adivinar la ip del
> terminal", al parecer como comentais vosotros no es asi. Al indicar
> host=dynamic dejas paso a que el "match" se haga por otros parámetros
> como username y secret por ejemplo.
>
> Ahora como comentaba Elio Rojano...
> ¿cual es el parámetro que se encarga de obtener la ip de los
> terminales?
>

Son los propios terminales los que le comunican a Asterisk su
ubicación (IP y puerto) mediante los mensajes REGISTER. La sección
10.1 (Registrations overview) del RFC3261 lo explica con algo más de
detalle.

Un proveedor SIP en cambio, no se va a registrar contigo, y su IP será
estática, por lo que usarás el host=X.X.X.X

Saludos,

--
/Saúl
http://saghul.net | http://sipdoc.net

Iñaki Baz Castillo

unread,
Mar 25, 2011, 6:25:42 AM3/25/11
to aster...@googlegroups.com, gentoosiasta
El día 24 de marzo de 2011 17:20, gentoosiasta <legi...@hotmail.com> escribió:
> He entendido algo más, o eso parece. En todos los documentos que leí
> indicaba que host = dynamic se encargaba de "adivinar la ip del
> terminal", al parecer como comentais vosotros no es asi. Al indicar
> host=dynamic dejas paso a que el "match" se haga por otros parámetros
> como username y secret por ejemplo.
>
> Ahora como comentaba Elio Rojano...
> ¿cual es el parámetro que se encarga de obtener la ip de los
> terminales?

No es nada correcto eso que dices, ni lo que comentas haber entendido
ni la pregunta formulada. SIP es SIP y está definido en el RFC 3261.
Si no sabes cómo funciona el mecanismo de registro SIP (REGISTER) todo
lo que digas serán meras especulaciones incorrectas.

Haz caso del mail que te acaba de enviar Saúl.

gentoosiasta

unread,
Mar 25, 2011, 6:49:01 AM3/25/11
to asterisk-es
Hola.

Saúl e Iñaki gracias por vuestras respuestas una vez más jeje.

Iñaki entiendo como bien dice Saúl que son los terminales los que
facilitan su IP a Asterisk con los mensajes REGISTER.. Pero la
cuestión que yo estoy cuestionandome es....

¿Y como lo hacen sin registrarse? Quizás no me expliqué lo
suficientemente bien anteriormente.


Iñaki,comentas que la pregunta formulada tambien es incorrecta, es
"casi" un copy-paste de Elio Rojano:

----------------------------------------------------------------------------------------------------
¿Entonces técnicamente como consigue asterisk enviar la llamada a tal
> dirección IP si no se ha registrado con la centralita?

> Como te he dicho arriba... ahora bien ¿qué parámetro necesitas definir para

que Asterisk sepa la IP del terminal?

Te lo dejo como ejercicio, aquí tienes la lista de parámetros, a ver
si das
con el que és:
----------------------------------------------------------------------------------------------------

Como no encontré dicho parámetro, debido a mi bajo nivel de ingles, me
gustaria saber la solución a la pregunta de Elio Rojano.


Un saludo y de verdad muchisimas gracias.

Elio Rojano

unread,
Mar 25, 2011, 9:24:01 AM3/25/11
to aster...@googlegroups.com, gentoosiasta
A ver,  primero Asterisk no adivina nada... 
o se lo dice el terminal (registrándose) si tienes el host=dynamic,
o se lo añades tú a mano (en caso de IP fija) con el parámetro defaultip=xxx.xxx.xxx.xxx 

De esta manera no es necesario que el terminal esté registrado ya que Asterisk sabrá ya la IP a la que tiene que enviar la llamada cuando alguien pregunte por ese usuario.




--
http://www.sinologic.net/

ra...@dimension-virtual.com

unread,
Mar 25, 2011, 10:56:20 AM3/25/11
to aster...@googlegroups.com
gentoosiasta <legi...@hotmail.com> escribió:

A ver ... que pareces estar liandote mas de la cuenta ...

TODO lo que necesitas se hace con el parámetro host, si host=dynamic
... Asterisk no podrá enviar llamadas a ese UAC, hasta que el UAC se
registre, si host=<IP>, Asterisk le podrá enviar llamadas a ese UAC
aúnque ese UAC no se haya registrado.

Atento a lo que he dicho en el prárrafo, el sentido de llamadas que
estamos hablando es Asterisk -> UAC .... en el caso de UAC ->
Asterisk, el parámetro host vale como una forma más (no la única) de
autenticar las llamadas provinientes de ese UAC.

Y sobre todo ... espero que te haya quedado claro ya, que REGISTER, no
es lo mismo que INVITE, y que una cosa es Autenticación y otra muy
diferente Autorización, y eso son solo 2 'A' ... del famoso AAA
(Autentication,Authorization,Accounting)

Iñaki Baz Castillo

unread,
Mar 25, 2011, 2:49:07 PM3/25/11
to aster...@googlegroups.com, ra...@dimension-virtual.com
El día 25 de marzo de 2011 15:56, <ra...@dimension-virtual.com> escribió:
> en el caso de UAC -> Asterisk, el parámetro host vale como una forma más (no
> la única) de autenticar las llamadas provinientes de ese UAC.

Más que autenticar sería autorizar, como bien explicas en tu siguiente
párrafo :)

ra...@dimension-virtual.com

unread,
Mar 25, 2011, 3:59:05 PM3/25/11
to aster...@googlegroups.com
Iñaki Baz Castillo <i...@aliax.net> escribió:

> El día 25 de marzo de 2011 15:56, <ra...@dimension-virtual.com> escribió:
>> en el caso de UAC -> Asterisk, el parámetro host vale como una forma más (no
>> la única) de autenticar las llamadas provinientes de ese UAC.
>
> Más que autenticar sería autorizar, como bien explicas en tu siguiente
> párrafo :)

Es Viernes ... se benévolo que te prometo que esta semana ya me he
leído 2 veces par de RFC's de autocastigo por montar mal un servidor
de conferencias ...


;-)

Iñaki Baz Castillo

unread,
Mar 25, 2011, 3:01:36 PM3/25/11
to aster...@googlegroups.com, ra...@dimension-virtual.com
El día 25 de marzo de 2011 20:59, <ra...@dimension-virtual.com> escribió:
> Es Viernes ... se benévolo que te prometo que esta semana ya me he leído 2
> veces par de RFC's de autocastigo por montar mal un servidor de conferencias
> ...
>
>
> ;-)

Peor que autoflagelarse es leerse este RFC:

http://tools.ietf.org/html//rfc4825

Auténtica mierda. Muy recomendable para autodeprimirse.

gentoosiasta

unread,
Mar 25, 2011, 9:24:59 PM3/25/11
to asterisk-es


> TODO lo que necesitas se hace con el parámetro host, si host=dynamic  
> ... Asterisk no podrá enviar llamadas a ese UAC, hasta que el UAC se  
> registre, si host=<IP>, Asterisk le podrá enviar llamadas a ese UAC  
> aúnque ese UAC no se haya registrado.
>
> Atento a lo que he dicho en el prárrafo, el sentido de llamadas que  
> estamos hablando es Asterisk -> UAC .... en el caso de UAC ->  
> Asterisk, el parámetro host vale como una forma más (no la única) de  
> autenticar las llamadas provinientes de ese UAC.
>
> Y sobre todo ... espero que te haya quedado claro ya, que REGISTER, no  
> es lo mismo que INVITE, y que una cosa es Autenticación y otra muy  
> diferente Autorización, y eso son solo 2 'A' ... del famoso AAA  
> (Autentication,Authorization,Accounting)
>
> Saludos
>


Menuda explicación amigo, ya quedó el tema 100% claro.

Lo que comentas en tu segundo parrafo es lo que tuve que hacer para
poder recibir llamadas de un numero geográfico.

Pues de nuevo, un placer haber atendido vuestras sugerencias y
explicaciones.
Un gran GRACIAS para vosotros por todo el tiempo perdido, pero como
bien comentabais si, andaba bastante liado respecto a los diferentes
terminos y sus diferencias y aunque se me dibujara enfrente un 1 yo lo
seguia viendo borroso jeje. Ahora ya quedó todo claro perfectamente.


Un gran saludo a esta comunidad y muchisimas gracias.
Reply all
Reply to author
Forward
0 new messages