Hola, buenas tardes. Agradezco mucho su guía. No termino de entender que recomiendan que haga en ese if...que no devuelva una respuesta y que lo saque automáticamente del sistema? if(src_ip!=192.168.224.184) { exit; } Me doy cuenta que también podría haber aplicado las condiciones en un solo if. if(src_ip!=192.168.224.184 && st_port!=8080) { exit; }
La regla de iptables la voy a tener en en cuenta para un ambiente productivo.
El lun, 6 jun 2022 a las 16:20, Joel Serrano (joel@textplus.com) escribió:
+1 a lo que comenta David:
Es mucho más fácil (hablando de rapidez y recursos) para el sistema descartar un paquete a nivel de kernel que para la aplicación a nivel de usuario.
Saludos!!
On Mon, Jun 6, 2022 at 11:08 AM David Villasmil < david.villasmil.work@gmail.com> wrote:
quizás un "exit;" es mejor aquí:
if(src_ip!=192.168.224.184) {
Y también es recomendable que pongas una regla en iptables al menos.
Regards,
David Villasmil email: david.villasmil.work@gmail.com phone: +34669448337
On Mon, Jun 6, 2022 at 4:13 PM damian cassidyno@gmail.com wrote:
Gente, ya se encuentra funcionando, muchas gracias por toda la colaboración.
La conf. quedó de la siguiente manera, por si alguno le interesa.
disable_tcp=no tcp_accept_no_cl=yes
listen=tcp:eth0:8080 listen=udp:eth0:5060 listen=udp:127.0.0.1:5060
#####Modulos para Request Reload mtree##### loadmodule "xhttp.so" loadmodule "jsonrpcs.so" #sudo apt-get install kamailio-json-modules# loadmodule "json.so" #######
event_route[xhttp:request] { if!(dst_port==8080) { xlog("L_NOTICE", "[XHTTP:REQUEST] $si FORBIDDEN! ***\n"); exit; } if(src_ip!=192.168.224.184) { xhttp_reply("403", "Forbidden", "text/html", "<html><body>Not allowed from $si</body></html>"); xlog("L_NOTICE", "[XHTTP:REQUEST] NOT ALLOWED FROM $si! ***\n"); exit; } if ($hu =~ "^/mtree") { $var(dbmtree) =$(rb{json.parse,db}); xlog("L_NOTICE", "[XHTTP:REQUEST] $si:$sp - db: $var(dbmtree) ACCEPTED ***\n"); $var(json_rpc)='{"jsonrpc": "2.0", "method": "mtree.reload", "id": "$var(dbmtree)"}'; jsonrpc_exec($var(json_rpc)); xlog("L_NOTICE","jsonrpc response code: $jsonrpl(code) - the body is: $jsonrpl(body)\n"); xhttp_reply("200", "Forbidden", "text/html", "<html><body>OK - [$si:$sp - db: $var(dbmtree)]</body></html>");
} else { xhttp_reply("200", "OK", "text/html", "<html><body>Wrong URL $hu</body></html>"); xlog("L_NOTICE", "[XHTTP:REQUEST] WRONG URL $hu! ***\n"); } return; }
Saludos.
El lun, 6 jun 2022 a las 9:49, damian (cassidyno@gmail.com) escribió:
Disculpen, encontré el error porque el que no levantaba el puerto 8080, Tenia en el archivo de configuración disable_tcp=yes. Ire por el camino del Request y veré si me funciona.
Saludos.
El lun, 6 jun 2022 a las 9:41, damian (cassidyno@gmail.com) escribió:
Eh intentado lo del event_route[xhttp:request] pero no logro que Kamailio escuche el puerto que configuro (80, 8080 o cualquier puerto que defina) para enviar el request via http.
Tengo configurado: listen=tcp:eth0:8080 listen=udp:eth0:5060
Resultado.
Listening on udp: 172.x.x.x:5060 udp: 127.0.0.1:5060 Aliases: udp: localhost:5060 udp: LAB-SERVER:5060
Solo me escucha el 5060.
El sáb, 4 jun 2022 a las 12:55, Jose Fco. Irles Durá (< josefu@gmail.com>) escribió:
Otra opción es que hagas un GET a un path específico en el event_route[xhttp:request] y ahí ejecutes lo que quieras, como por ejemplo un script local para hacer lo que quieras.
El sáb, 4 jun 2022 a las 15:13, Joel Serrano (joel@textplus.com) escribió:
> También puedes usar el propio jsonrpcs_exec() y hacer el reload > desde la config cuando te de la gana. > > On Fri, Jun 3, 2022 at 15:15 David Villasmil < > david.villasmil.work@gmail.com> wrote: > >> Eso lo puedes hacer con un archivo de texto simple. Kamailio puede >> monitorizar el archivo y recargarlo automáticamente. >> Si no, puedes hacer un un timer que dispare un trigger y recargarlo. >> >> On Fri, 3 Jun 2022 at 20:38, damian cassidyno@gmail.com wrote: >> >>> Hola, buenas tardes. >>> Tengo una duda, espero que puedan orientarme o ayudarme. >>> Tengo montado un Sistema de Redirect Server con Kamailio, >>> funcionando OK. >>> Este server lee una tabla que sale de un MYSQL y con el modulo >>> mtree la cargo en memoria. >>> Cuando hago modificaicones en la DB refresco los datos en memoria >>> con el comando: kamcmd mtree.reload mytabla. >>> >>> Ahora bien, hay alguna forma de que haga este reload en forma >>> remota. es decir, no tener que conectarme al server por ssh y tirar el >>> comando localmente. >>> Hay alguna posibilidad de que kamailio este escuchando y hacerle >>> el request de reload? >>> Si lo hay, cuentan con algun ejemplo que puede utilizar de >>> referencia? >>> >>> Saludos. >>> _______________________________________________ >>> sr-users-es mailing list >>> sr-users-es@lists.kamailio.org >>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users-es >>> >> -- >> Regards, >> >> David Villasmil >> email: david.villasmil.work@gmail.com >> phone: +34669448337 >> _______________________________________________ >> sr-users-es mailing list >> sr-users-es@lists.kamailio.org >> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users-es >> > _______________________________________________ > sr-users-es mailing list > sr-users-es@lists.kamailio.org > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users-es >
-- Jose Fco. Irles Durá _______________________________________________ sr-users-es mailing list sr-users-es@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users-es
sr-users-es mailing list sr-users-es@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users-es
sr-users-es mailing list sr-users-es@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users-es
sr-users-es mailing list sr-users-es@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users-es