Hello,
I tried to configure the same XMLRPC case to a RHEL7 platform with
kamailio 5.0.0 installed but Kamailio keeps sending me this after XMLRPC
POST:
HTTP/1.1 200 OK
Sia: SIP/2.0/TCP 10.40.6.127:49384
Content-Type: text/html
Server: kamailio (5.0.0 (x86_64/linux))
Content-Length: 40
<html><body>Wrong URL /RPC</body></html>
Any idea why the RHEL7 Kamailio installation does not work like the
Debian?
I have enabled debug level 4 but I see no errors concearning this reply.
The scenario which is working is configured on a Debian platform with
Kamailio 5.0.0.
Cheers,
--Olli
Oma kirjoitti 2017-05-23 22:33:
Hello,
Thanks for the tip Daniel. I added this before the dispatch_rpc() and
other xmlrpc related stuff:
...
if (!www_authorize(”somedomain.local", "subscriber")) {
www_challenge(”somedomain.local", "1");
exit;
};
…
Seems to work now with the correct username and password retrieved
from subscriber table:
After 200OK the dialplan gets reloaded in this example.
POST /RPC HTTP/1.1.
Accept: */*.
Host: 127.0.0.1:5060.
User-Agent: xmlrpcclient.
Content-Type: text/xml.
Content-Length: 0.
T 127.0.0.1:5060 -> 127.0.0.1:57265 [AP]
HTTP/1.1 401 Unauthorized.
Sia: SIP/2.0/TCP 127.0.0.1:57265.
WWW-Authenticate: Digest realm=”somedomain.local",
nonce="WSSNE1kki+cE7oCG5vjVrxI/BZRRfmOmXKecloA=", qop="auth".
Content-Length: 0.
T 127.0.0.1:57265 -> 127.0.0.1:5060 [AP]
POST /RPC HTTP/1.1.
Authorization: Digest username="testuser", realm=”somedomain.local",
nonce="WSSNE1kki+cE7oCG5vjVrxI/BZRRfmOmXKecloA=", uri="/RPC",
cnonce="Yjg5MWU3ZjdkYzYwNmNlMTc1ZmQyMmFmYmZkNGQyN2M=", nc=00000001,
qop=auth, response="c99a92d4c402ab592a908f92e82f08e1".
Accept: */*.
Host: 127.0.0.1:5060.
User-Agent: xmlrpcclient.
Content-Type: text/xml.
Content-Length: 167.
.
<?xml version="1.0"
encoding="UTF-8"?><methodCall><methodName>dialplan.reload</methodName><params><param><value><string></string></value></param></params></methodCall>
T 127.0.0.1:5060 -> 127.0.0.1:57265 [AP]
HTTP/1.1 200 OK.
Sia: SIP/2.0/TCP 127.0.0.1:57265.
Content-Length: 108.
Cheers!
PS. Could not help at noticing Kamailio replying with ”Sia” header in
200OK message. I dont know if this is a bug or not but it looks a lot
like ”Via” … :)
—Olli
Daniel-Constantin Mierla <[email protected]> kirjoitti 23.5.2017 kello
21.23:
You can use the auth/auth_db modules do the the www-digest
authentication (which was actually defined first for http) like for
sip traffic -- you probably want to do the www not proxy auth, so use
the appropriate functions.
Cheers,
Daniel
On Tue, May 23, 2017 at 3:09 PM, Oma <[email protected]
<mailto:[email protected]>> wrote:
Hello,
Username & password would be the desired way.
Cheers,
—Olli
Daniel-Constantin Mierla <[email protected]
<mailto:[email protected]>> kirjoitti 23.5.2017 kello 15.32:
Hello,
do you want authentication with username and password or IP based
authorization?
Cheers,
Daniel
On Tue, May 23, 2017 at 7:04 AM, Olli Attila <[email protected]
<mailto:[email protected]>> wrote:
Hello,
I got the POST request working now by adding the "listen
tcp:127.0.0.1:5060 <http://127.0.0.1:5060/>". I tested this with
dialplan.reload, dialplan.dump and htable.reload. Works ok.
Is there any way to authenticate the request in Kamailio?
Now all of the valid methods included in request:
"http://127.0.0.1/RPC <http://127.0.0.1/RPC>" are getting executed
and Kamailio returns 200 OK directly.
Cheers,
--Olli
Diego Nadares kirjoitti 2017-05-22 15:06:
Hi Olli,
Did configure kamailio to listen on tcp:127.0.0.1?
Diego
El 22 may. 2017, a las 02:54, Olli Attila <[email protected]
<mailto:[email protected]>> escribió:
Hi,
I'm using kamailio 5.0.0 and trying to use core commands through
xmlrpc interface but the requests are failing towards Kamailio.
I have compiled and enabled the xmlrpc module in config and I have
this on my kamailio.cfg:
# XMLRPC routing
#!ifdef WITH_XMLRPC
route[XMLRPC] {
# allow XMLRPC from localhost
if ((method=="POST" || method=="GET")
&& (src_ip==127.0.0.1)) {
# close connection only for xmlrpclib user agents (there is a bug
in
# xmlrpclib: it waits for EOF before interpreting the response).
if ($hdr(User-Agent) =~ "xmlrpclib")
set_reply_close();
set_reply_no_connect();
dispatch_rpc();
exit;
}
send_reply("403", "Forbidden");
exit;
}
#!endif
I have tried to test this by using curl and calling "core.uptime"
method in xml body (core.uptime works when executed through kamcmd
commandline tool).
The curl is called from the same machine that I have Kamailio
installed on:
"curl -X POST -H 'Host: 127.0.0.1:5060 <http://127.0.0.1:5060/>' -H
'User-Agent: xmlrpcclient' -H 'Content-Type: text/xml' -d '<?xml
version='1.0'?><methodCall><methodName>core.uptime</methodName><params></params></methodCall>'
http://127.0.0.1:5060 <http://127.0.0.1:5060/>"
This fails and I only get: "curl: (7) Failed to connect to 127.0.0.1
port 5060: Connection refused"
network traffic shows me this.. firewall is disabled completely when
doing the test:
1 0.000000 127.0.0.1 -> 127.0.0.1 TCP 74 55630→5060 [SYN]
Seq=0 Win=43690 Len=0 MSS=65495 SACK_PERM=1 TSval=1347930477 TSecr=0
WS=64
2 0.000032 127.0.0.1 -> 127.0.0.1 TCP 54 5060→55630 [RST,
ACK] Seq=1 Ack=1 Win=0 Len=0
Can anyone help me to get to the right direction with this?
Cheers,
--Olli
_______________________________________________
Kamailio (SER) - Users Mailing List
[email protected] <mailto:[email protected]>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
<https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>
_______________________________________________
Kamailio (SER) - Users Mailing List
[email protected] <mailto:[email protected]>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
<https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>
_______________________________________________
Kamailio (SER) - Users Mailing List
[email protected] <mailto:[email protected]>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
<https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>
--
Daniel-Constantin Mierla - http://www.asipto.com
<http://www.asipto.com/>
http://twitter.com/#!/miconda <http://twitter.com/#!/miconda> -
http://www.linkedin.com/in/miconda
<http://www.linkedin.com/in/miconda>_______________________________________________
Kamailio (SER) - Users Mailing List
[email protected] <mailto:[email protected]>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
<https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>
_______________________________________________
Kamailio (SER) - Users Mailing List
[email protected] <mailto:[email protected]>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
<https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>
--
Daniel-Constantin Mierla - http://www.asipto.com
<http://www.asipto.com/>
http://twitter.com/#!/miconda <http://twitter.com/#!/miconda> -
http://www.linkedin.com/in/miconda
<http://www.linkedin.com/in/miconda>_______________________________________________
Kamailio (SER) - Users Mailing List
[email protected]
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
_______________________________________________
Kamailio (SER) - Users Mailing List
[email protected]
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
_______________________________________________
Kamailio (SER) - Users Mailing List
[email protected]
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users