[OpenSER-Users-ES] ¿Es válido cambiar el From NAME en vez del From username?
Iñaki Baz Castillo
ibc at aliax.net
Mon May 5 23:32:03 CEST 2008
El Lunes, 5 de Mayo de 2008, Victor Pascual Ávila escribió:
> Retomando el thread,
>
> ¿Cómo puede un UA verificar que el From del Invite que recibe es
> realmente de quien dice ser?
En teoría el UA (UAS destino) debe "fiarse" de su proxy del cuál recibe ese
INVITE. Y se supone que el proxy se ha encargado de autenticar al usuario, o
tal vez el INVITE venga a su vez de otro proxy que tiene relación de
confianza con nuestro proxy, etc etc...
> 2008/4/2 Jesus Rodriguez <jesusr at voztele.com>:
> > Por desgracia, como siempre pasa, los fabricantes implementan lo que
> > les rota y el P-Preferred-Identity todavía no está muy extendido y
> > casi todo el mundo tira de RPID/PAI.
>
> ¿Qué diferencias hay entre el PPI y el RPID/PAI?
El PPI lo pone un UAC solicitando a su proxy qué PAI poner. O sea, en teoría
un UAC no puede enviar un PAI a su proxy puesto que, en teoría, un proxy
nunca ve a un UAC como "trusted" (pero sí al contrario). De hecho si un proxy
recibe un PAI de un elemento no considerado como "trusted" debe ignorarlo (y
eliminarlo) o rechazar el mensaje directamente.
También creo recordar de cuando me leí el RFC sobre PAI/PPI, que un UAC puede
poner un PPI para indicar al proxy quién es (y cómo autenticarse) a la vez
que solicita a su proxy que el INVITE salga como "anónimo". Por ejemplo
Twinkle implementa este comportamiento si marcas la casilla "Llamada anónima"
y genera un INVITE así:
---------
INVITE sip:pepe at dominio.com SIP/2.0
Max-Forwards: 70
To: <sip:pepe at dominio.com>
From: "Anonymous" <sip:anonymous at anonymous.invalid>;tag=fqtlx
Contact: <sip:192.168.0.129;transport=udp>
Privacy: id
P-Preferred-Identity: "IBC" <sip:ibc at aliax.net>
----------
Fíjate que el From no indica un URI sobre el que el proxy podría exigir
autenticación, pero para evitar sea rechazado se supone que el proxy debería
mirar el PPI y exigir autenticación para ese PPI (ibc at aliax.net).
Además, como valor añadido, Twinkle "esconde" el username en el "Contact" y
añade el "Privacy: id".
Así pues, el proxy debería exigir autenticación para el usuario ibc at aliax.net.
Tras recibirla, y suponiendo que el proxy envía el INVITE a otro nodo trusted
de su red (por ejemplo un gateway o lo que sea), el proxy generaría un INVITE
así:
---------
INVITE sip:pepe at dominio.com SIP/2.0
Max-Forwards: 70
To: <sip:pepe at dominio.com>
From: "Anonymous" <sip:anonymous at anonymous.invalid>;tag=fqtlx
Contact: <sip:192.168.0.129;transport=udp>
Privacy: id
P-Asserted-Identity: "IBC" <sip:ibc at aliax.net>
----------
Ya no hay PPI sino PAI, que es lo que tiene sentido entre nodos trusted. Y se
mantiene el "Privacy: id".
El siguiente proxy/gateway/cosa_sip envía finalmente el INVITE a un elemento
no trusted (un UAS registrado en él por ejemplo) que tendría esta pinta:
---------
INVITE sip:pepe at dominio.com SIP/2.0
Max-Forwards: 70
To: <sip:pepe at dominio.com>
From: "Anonymous" <sip:anonymous at anonymous.invalid>;tag=fqtlx
Contact: <sip:192.168.0.129;transport=udp>
----------
Es decir, el destino finalmente no se entera de quién llama.
PD: No sé para qué me esfuerzo en entender esto si luego no lo usa ni cristo
XDDD
--
Iñaki Baz Castillo
More information about the Users-es
mailing list