Posts

Showing posts with the label OpenSIPS

OpenSIPS command line tricks

OpenSIPS provides powerful and flexible tool called "opensipsctl". Here I put some useful commands I am using while working with OpenSIPS to: restart phone, change MWI, change presence, remote dial with REFER.

OpenSIPS RLS (Resource List Server) with integrated XCAP

Resource List Servers (RLS) is an extension for S IP protocol which provides mechanism for subscribing to a homogeneous list of resources (RFC 4662). Usually end-to-end presence requires SUBSCRIBE packet for each buddy which user wants to watch. As a result, for each single presence or dialog etc. event, server would send separate NOTIFY packet.  While RLS would require only one SUBSCRIBE packet which refers to the list of buddies that user wants to watch. RLS server will respond with one NOTIFY packet with information for all contacts packed in NOTIFY body as XML document. Obviously this can dramatically decrease network traffic in installation with thousands of users. RLS usually configured in with XCAP servers, which also allows to manages buddy list and access.  OpenSIPS can be integrated with OpenXCAP server which is a fully  featured XCAP server written in python. There are also some additional information about RILS...

OpenSIPS intrusion detection

A popular way to control intrusion attempts is fail2ban framework. There is a tutorial  that explains how to setup fail2ban with OpenSIPS. This solution is easy to setup but, on my humble opinion, it has certain limitations and disadvantages:  Fail2ban is parsing log files and if OpenSIPS will start to generate lots of logs (debug level 4 for example) there is a good chance that fail2ban will fail to detect intruder's IP. Besides, fail2ban uses regex pattern when checking logs, and it brings some extra charge on the system. Fail2ban is using iptables to block intruder by IP address. This seems to be correct, but what if user configure its  softphone with wrong credentials and after several attempts PC address will be blocked. If server with OpenSIPS is providing other services, like DNS, then it would bring problems not related to telephony and problems like this are not easy to debug.  If you are using cluster of OpenSIPS servers with lots of n...