GNU SIP Witch
Contents
Description
GNU SIP Witch is a secure peer-to-peer VoIP server that uses the SIP protocol. Calls can be made peer-to-peer behind NAT firewalls, and without needing a service provider. GNU SIP Witch does not perform codec operations and thereby enables SIP endpoints to directly peer negotiate call setting and process peer to peer media streaming even when multiple SIP Witch call nodes at multiple locations are involved. This means GNU SIP Witch operates without introducing additional media latency or offering a central point for media intercept or capture. GNU SIP Witch can be used to build secure and intercept-free telephone systems that can operate over the public Internet.
GNU SIP Witch is designed to support network scaling of telephony services, rather than the heavily compute-bound solutions we find in use today. This means a call node has a local authentication/registration database, and this will be mirrored, so that any active call node in a cluster will be able to accept and service a call. This allows for the possibility of live failover support in the future as well.
GNU SIP Witch is not a SIP “router,” and does not try to
address the same things as a project like Iptel “Ser.” GNU SIP
Witch is being designed to create on-premise SIP telephone systems,
telecenter servers, and Internet-hosted SIP telephone systems. One important
feature will include use of URI routing to support direct peer-to-peer calls
between service domains over the public internet without needing mediation
of an intermediary “service provider,” so that people can publish
and call sip:
URI's unconstrained. GNU SIP Witch is about
freedom to communicate and the removal of artifical barriers and constraints,
whether imposed by monopoly service providers or by governments (see the Free Call project).
GNU SIP Witch can also be used to construct embedded telephony services as part of GNU Telephony Open Embedded.
GNU SIP Witch depends on GNU uCommon, which optionally offers a complete runtime C++ library environment for developing deeply embedded targets without requiring the use of the ANSI C++ standard library, RTTI, exception handling, or STL templates. GNU SIP Witch will build with all versions of GCC from 2.95 through 4.4, and with many other C++ compilers as well, as on most platforms including GNU/Linux, xBSD systems, MacOS X, and Microsoft Windows.
Development
[2017] The latest version is SIP Witch 1.9.15.
[2011] Current goals include improving usability in the desktop mediation role, and as a local SIP telephone server.
Downloading
GNU SIP Witch may be found at ftp.gnu.org or, preferably, one of its mirrors via the generic URL http://ftpmirror.gnu.org/gnu/sipwitch. GNU SIP Witch requires GNU Common C++/uCommon, the GNU oSIP library, and the eXosip extension library for GNU oSIP. GNU SIP Witch may optionally use libgcrypt for alternate authentication digest algorithms, as well as either openSSL or GNU TLS for TLS support over SIP. GNU SIP Witch is licensed under the GNU General Public License Version 3 or later.
Development sources are available through the Sipwitch project on Savannah.
For other packages that you may need to set up your installation, please refer to the GNU Telephony Download page.
Documentation
- Doxygen Reference manual for sipwitch-1.9.15, libosip2-5.0.0 and libeXosip2-4.0.0;
- Sipwitch(1);
- Sipcontrol(1) at mankier.com;
- Sippasswd(1) at mankier.com;
- Sipquery(1) at mankier.com;
- Sipw(8) at mankier.com;
- Sipwitch.cgi(8) at mankier.com;
- How to read installed documentation;
- GNU SIP Witch configuration;
- How to Deploy SIP Witch On Ubuntu;
- Ubuntu Desktop Telephony Stack, a slide presentation on how GNU SIP Witch might be used as a desktop SIP mediation stack in conjunction with Empathy and Telepathy VoIP support;
- Communication Privacy For Free Societies, a slide presentation on how to create wiretap-immune peer-to-peer communication services for direct public use in GNU Telephony.
Support and Other Resources
To simplify management and bug tracking for the different packages I currently maintain, I have consolidated management of GNU SIP Witch, related GNU Common C++ packages, and GNU Telephony projects including GNU Bayonne. These are being managed through the GNU Telephone subsystem on Savannah.
The SIP Witch mailing list is <sipwitch-devel@gnu.org>. It has a web interface for subscribing, modifying subscription options and searching the list archives. Feel free to send any bug reports, patches, and questions to this list.
Related
- GNU SIP Witch uses libeXosip2 and GNU oSIP.
- Antisipate is a cross-platform, easy-to-use, secure VoIP client that uses ZRTP and that will auto-configure with SIP Witch. Version 0.0.2 is archived at the Wayback Machine.
- A Friendica plugin offers realtime secure voice and video with GNU SIP Witch and ZRTP-enabled clients.
- GNU SIP Witch has been used in Ubuntu GNU/Linux and Fedora GNU/Linux with the intended role of being a desktop SIP media service and means to create bottom-up secure voice-calling networks in conjunction with secure peer-to-peer VoIP clients such as those based on the ZRTP protocol.
Contact Information
The current maintainer for this package is <dyfet at gnu dot org>.
The existing page was completed with additional info retrieved from the Wayback Machine archive of the GNU Telephony website (licensed under the Free Documentation License 1.3).