Se que esta lista esta un poco inactiva pero si bien envie a la de
ingles esto lo coloco aqui para ver si alguien tambien puede opinar
Estoy experimentando el poner kamailio desnudo y usar en los clientes
ip dinamicas, es el peor escenario de seguridad, y bueno lo primero
que comenza es lo mas facil el modulo pike para bajar los escaneos y
intentos de excesivos request , no se si la configuracion que hice es
la mejor la comparto y explico, asi alguien podra opinar si esta bien
o no
modparam("pike", "sampling_time_unit", 4)
modparam("pike", "reqs_density_per_unit", 80)
modparam("pike", "remove_latency", 60)
...
route {
if (!pike_check_req()) {
xlog("L_ALERT","ALERT: pike block $rm from $fu (IP:$si:$sp)\n");
exit;
}
...
}
la latencia remota la puse en 60, es decir revisara cada ip durante 60
segundos si esa provoca problemas, esto le puse bastante tiempo porque
es una ip dinamica, y que la banee si esta 180 (60*3) peticiones
(request) cada 4 seconds,
Espero haber interpretado bien la documantacion.. sino que alguien me
ayude y me corrija si estoy mal.
it's a good configuration or maybe i'm wrong please help me!
--
Lenz McKAY Gerardo (PICCORO)
http://qgqlochekone.blogspot.com
Hola,
Mi nombre es Javier, primero debo pedir disculpas por mi poco
conocimiento sobre la herramienta. Estoy intentando conectar un core
funcional de red LTE (EPC) con Kamailio y he utilizado la solución de
Polaris Networks que viene en una imagen con ambas funcionalidades.
El EPC está correctamente configurado y funcionando ya que puedo tener
conexión de datos en mi UE, también he activado todas las opciones de
IMS en el EPC: He creado el APN con identificador ims, el QCI de la
portadora por defecto que asigna es 5 (para señalización SIP), el MME
tiene activado la opción de soportar Voz IMS sobre la sesión PS y los
nodos HSS y PCRF están configurados con las interfaces en las
direcciones y puertos Cx-HSS 127.0.0.1:3868 y Cx-PCRF 10.11.0.35.
Hay varios parámetros que no sé si es necesario activar como por
ejemplo, en el PCRF la personalización del QCI para el tipo de media, si
debo incluir el OCS y OFCS como nodos, o si en el perfil de mi APN debo
incluir autenticación por PDN AAA.
La configuración que utilizo para el IMS es la siguiente:
imsrealm = net1.test
imsport = 5060
pcscfgmip = 10.77.0.35
pcscfgmipintf = eth6
pcscfrxip = 10.102.81.111
pcscfrxipintf = eth1
icscfmwip = 127.0.0.21
icscfmwipintf = lo:21
icscfcxip = 127.0.0.20
icscfcxipintf = lo:20
scscfmwip = 127.0.0.23
scscfmwipintf = lo:23
scscfcxip = 127.0.0.22
scscfcxipintf = lo:22
audiobandwidth = 64
videobandwidth = 128
epcrealm = epc.mnc001.mcc001.3gppnetwork.org
pcrfhost = pcrf2.morsecore
pcrfrxip = 10.11.0.35
pcrfrxport = 3868
hsshost = hss6.morsecore
hsscxdxip = 127.0.0.1
hsscxdxport = 3868
Ambos núcleos están corriendo en la misma máquina pero tengo
deshabilitada la opción de PCRF Co-located with IMS para poder editar el
pcrf host name ya que si lo habilito no alcanza la peer pcrf.localhost
aunque en el DNS esté bien configurado. Mi UE no es capaz de lanzar el
REGISTER por él mismo, cuando va a realizar una llamada y estoy
utilizando la aplicación de Google IMSDroid para poder lanzar las
peticiones SIP y comprobar el funcionamiento del IMS. En la aplicación
del UE la configuración es la siguiente:
Identidad: Alice
Public Identity: sip:<MSISDN>@net1.test (MSISDN=8800000451 configurado
previamente en el EPC)
Private Identity: sip:<IMSI>@net1.test (IMSI incluyendo MCC y MNC)
Password: alice
Realm: net1.test (Aunque no sé si debo poner aquí
epc.mnc001.mcc001.3gppnetwork.org, pero entonces la petición da error)
Network: Proxy-CSCF Host: 10.77.0.35:5060 Transport UDP and NO
Proxy-CSCF discovery.
Entonces, lanzo mi petición y el log del nodo P-CSCF es es siguiente:
Aug 2 12:50:04 morsecore kamailio[53656]: INFO: <script>: REGISTER
(sip:8800000451@net1.test (10.77.0.196:37651) to
sip:8800000451@net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)
Aug 2 12:50:04 morsecore kamailio[53656]: INFO: cdp
[authstatemachine.c:200]: auth_client_statefull_sm_process(): after
callback of event 1
Aug 2 12:50:04 morsecore kamailio[53802]: INFO: cdp
[authstatemachine.c:200]: auth_client_statefull_sm_process(): after
callback of event 7
Aug 2 12:50:04 morsecore kamailio[53655]: INFO: <script>: REGISTER
(sip:8800000451@net1.test (10.77.0.196:37651) to
sip:8800000451@net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)
Aug 2 12:50:05 morsecore kamailio[53664]: INFO: <script>: REGISTER
(sip:8800000451@net1.test (10.77.0.196:37651) to
sip:8800000451@net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)
Aug 2 12:50:07 morsecore kamailio[53659]: INFO: <script>: REGISTER
(sip:8800000451@net1.test (10.77.0.196:37651) to
sip:8800000451@net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)
Aug 2 12:50:11 morsecore kamailio[53666]: INFO: <script>: REGISTER
(sip:8800000451@net1.test (10.77.0.196:37651) to
sip:8800000451@net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)
Que entiendo que hasta ahí todo es correcto, pero en el nodo I-CSCF me
aparece:
Aug 2 12:50:04 morsecore kamailio[53397]: INFO: ims_icscf
[cxdx_uar.c:71]: create_uaa_return_code(): created AVP successfully :
[uaa_return_code]
Aug 2 12:50:04 morsecore kamailio[53465]: INFO: ims_icscf
[cxdx_avp.c:137]: cxdx_get_avp(): cxdx_get_server_name: Failed finding
avp
Aug 2 12:50:04 morsecore kamailio[53465]: INFO: ims_icscf
[cxdx_avp.c:137]: cxdx_get_avp(): cxdx_get_capabilities: Failed finding
avp
Aug 2 12:50:04 morsecore kamailio[53465]: INFO: ims_icscf
[cxdx_avp.c:137]: cxdx_get_avp(): cxdx_get_result_code: Failed finding
avp
Aug 2 12:50:04 morsecore kamailio[53465]: ERROR: ims_icscf
[cxdx_uar.c:152]: async_cdp_uar_callback():
RC_IMS_DIAMETER_ERROR_USER_UNKNOWN
Aug 2 12:50:04 morsecore kamailio[53465]: INFO: ims_icscf
[cxdx_uar.c:71]: create_uaa_return_code(): created AVP successfully :
[uaa_return_code]
Aug 2 12:50:04 morsecore kamailio[53465]: ERROR: <script>: UAR failure
- error response sent from module
Donde creo que ni si quiera se reenvía el mensaje de REGISTER, sin
embargo parece que da error de que el usuario es desconocido o no está
registrado pero si accedo a la base de datos MySQL, los usuarios
registrados son:
+----+------------+-----------+----------+---------------+----------------------------------+----------------------------------+------+
| id | username | domain | password | email_address | ha1
| ha1b | rpid |
+----+------------+-----------+----------+---------------+----------------------------------+----------------------------------+------+
| 1 | alice | net1.test | alice | |
91cc8c652ef5f37e91c468c7319d0086 | 044776963e2661788e8db076b393333e |
NULL |
| 2 | bob | net1.test | bob | |
6ef7f9c924f1385d83cf22cbb94cfbbb | 0d893d2d8c10a044b918e4bd73b6bee5 |
NULL |
| 3 | 8800000451 | net1.test | alice | |
46811c4e58f298953a6f9efccf6c32f1 | 49c7a7ad84fe797fbefa2185be4cd226 |
NULL |
+----+------------+-----------+----------+---------------+----------------------------------+----------------------------------+------+
Sin embargo, no sé si está accediendo a la base de datos MySQL montada o
al HSS y en este nodo, en las bases de datos que contiene no está el
usuario (aunque debe estarlo porque se registra en la red
correctamente).
Por si sirve de algo, esta es la traza de wireshark filtrada por los
protocolos S1AP, SIP y Diameter justo cuando se lanza una petición
REGISTER:
"596","2019-08-02
12:50:00.705985000","127.0.0.20","127.0.0.1","DIAMETER","130","cmd=Device-Watchdog
Request(280) flags=R--- appl=Diameter Common Messages(0) h2h=fedcb89
e2e=4df0bbf5 | "
"597","2019-08-02
12:50:00.706133000","127.0.0.1","127.0.0.20","DIAMETER","210","cmd=Device-Watchdog
Answer(280) flags=---- appl=Diameter Common Messages(0) h2h=fedcb89
e2e=4df0bbf5 | "
"599","2019-08-02
12:50:00.786878000","127.0.0.22","127.0.0.1","DIAMETER","130","cmd=Device-Watchdog
Request(280) flags=R--- appl=Diameter Common Messages(0) h2h=fedcb89
e2e=4df0bbf5 | "
"600","2019-08-02
12:50:00.787019000","127.0.0.1","127.0.0.22","DIAMETER","210","cmd=Device-Watchdog
Answer(280) flags=---- appl=Diameter Common Messages(0) h2h=fedcb89
e2e=4df0bbf5 | "
"602","2019-08-02
12:50:00.914405000","10.102.81.111","10.11.0.35","DIAMETER","130","cmd=Device-Watchdog
Request(280) flags=R--- appl=Diameter Common Messages(0) h2h=fedcb89
e2e=4df0bbf5 | "
"603","2019-08-02
12:50:00.914549000","10.11.0.35","10.102.81.111","DIAMETER","214","cmd=Device-Watchdog
Answer(280) flags=---- appl=Diameter Common Messages(0) h2h=fedcb89
e2e=4df0bbf5 | "
"622","2019-08-02 12:50:04.027238000","10.77.0.196","10.77.0.35","GTP
<SIP>","1034","Request: REGISTER sip:net1.test (1 binding) | "
"623","2019-08-02 12:50:04.027347000","10.77.0.196","10.77.0.35","GTP
<SIP>","1034","Request: REGISTER sip:net1.test (1 binding) | "
"624","2019-08-02
12:50:04.027448000","10.77.0.196","10.77.0.35","SIP","998","Request:
REGISTER sip:net1.test (1 binding) | "
"625","2019-08-02
12:50:04.028850000","10.102.81.111","10.11.0.35","DIAMETER","426","cmd=AA
Request(265) flags=RP-- appl=3GPP Rx(16777236) h2h=fedcb8a e2e=4df0bbf6
| "
"626","2019-08-02
12:50:04.029862000","10.11.0.35","10.102.81.111","DIAMETER","350","cmd=AA
Answer(265) flags=-P-- appl=3GPP Rx(16777236) h2h=fedcb8a e2e=4df0bbf6 |
"
"630","2019-08-02
12:50:04.031113000","10.77.0.35","127.0.0.21","SIP","1280","Request:
REGISTER sip:net1.test (1 binding) | "
"631","2019-08-02
12:50:04.031794000","127.0.0.21","10.77.0.35","SIP","440","Status: 100
Trying | "
"632","2019-08-02
12:50:04.032382000","127.0.0.20","127.0.0.1","DIAMETER","354","cmd=User-Authorization
Request(300) flags=RP-- appl=3GPP Cx(16777216) h2h=fedcb8a e2e=4df0bbf6
| "
"633","2019-08-02
12:50:04.033101000","127.0.0.1","127.0.0.20","DIAMETER","298","cmd=User-Authorization
Answer(300) flags=-P-- appl=3GPP Cx(16777216) h2h=fedcb8a e2e=4df0bbf6 |
"
"636","2019-08-02
12:50:04.033557000","127.0.0.21","10.77.0.35","SIP","504","Status: 403
Forbidden - HSS User Unknown | "
No sé si falta alguna información o algún detalle sobre la configuración
pero puedo adjuntarlo en cualquier momento sin ningún problema.
Un saludo y muchas gracias de antemano,
Javier Espinosa.