Prosody

Software Screenshot:
Prosody
Software Details:
Version: 0.9.3
Upload Date: 19 Feb 15
Developer: Prosody Team
Distribution Type: Freeware
Downloads: 14

Rating: nan/5 (Total Votes: 0)

Prosody is a free and open source, flexible communications server for Jabber/XMPP written in Lua.

Prosody aims to be easy to use, and light on resources. For developers Prosody aims to be easy to extend and give a flexible system on which to rapidly develop added functionality, or prototype new protocols.

What is new in this release:

  • A config file passed as command line argument is no longer forgotten when config is reloaded
  • MUC: Allow admins to always bypass restrict_room_creation
  • Strip trailing '.' when normalizing hostnames
  • HTTP: Prevent silent connection failures
  • Components: Allow easier overriding of component authentication by plugins
  • Components: Enable TCP keepalives
  • Migrator: Better error reporting and improved robustness
  • S2S: Include IP in log messages, if hostname is unavailable
  • TLS: Log error when initialization fails

What is new in version 0.9.2:

  • Debian/Ubuntu packages fixed to always generate per-system certs (see below)
  • TLS: Improved cipher string, and use Prosody's preferred ciphers (see below)
  • MUC: Fix for Spark clients not displaying room lists

What is new in version 0.9.0:

  • This version brings full support for IPv6 throughout the server, the top feature request since 0.8.
  • It also makes a number of security enhancements, including support for server-to-server authentication using certificates instead of traditional DNS-based authentication ('dialback').
  • Other improvements include a new HTTP subsystem supporting virtual hosts and fully reloadable modules, pubsub support (XEP-0060), and more.

What is new in version 0.8.0:

  • Support for authentication and storage modules to integrate Prosody with 3rd-party databases, directories, and other systems. The first new storage plugin is for SQL databases and supports MySQL, PostgreSQL, and SQLite3. Also included is a migrator to move data between the file-based and SQL storage. Ad-hoc command support is now included by default to allow configuration and control of Prosody remotely from an XMPP client. Multi-user conferences now support members-only, invite-only, and password-protected rooms.

What is new in version 0.7.0:

  • Efficient connection handling:
  • One of the most significant changes in Prosody 0.7 is the added support for libevent, meaning Prosody can efficiently handle very large numbers of connections on a variety of platforms using epoll, kqueue, and a range of other mechanisms.
  • For more information see our libevent documentation.
  • Cyrus SASL authentication:
  • There is also now support for Cyrus SASL to handle authentication, allowing the use of LDAP, PAM, SQL or a range of other authentication methods such as GSSAPI.
  • For more information see our Cyrus SASL backend documentation.
  • SCRAM authentication:
  • Tobias Markmann has also added support for SCRAM, a new authentication mechanism that solves a lot of the problems and weaknesses found in the current and widely-used mechanisms. Prosody's SCRAM support has been successfully tested against development versions of Pidgin, Pandion, Gajim, Psi, Telepathy and the newcomer Swift.
  • Also in the area of authentication and security, we have decided to make Prosody advertise the 'PLAIN' SASL mechanism by default only when the client's connection to the server is encrypted. This means that even when encryption isn't enforced, clients will never be transmitting passwords in a form that can easily be reversed.
  • Privacy lists:
  • For a while Thilo Cestonaro has been busy contributing plugins to our prosody-modules project. Finally this release pulls in two of his plugins, mod_privacy and mod_proxy65.
  • Privacy lists allow users to configure custom filters for messages, presence and queries. This is already supported by most clients, which allow you to create very flexible rule-based filters.
  • Sometimes privacy lists are far more powerful than you need though, so we also have a plugin (currently experimental) for a protocol known as "Simple Communications Blocking", which allows you to simply configure a list of JIDs you wish to block all communications with.
  • File transfer proxying:
  • File transfer in XMPP has been notoriously unreliable. This is in large part due to ever-increasing presence of firewalls and NAT routers between users, preventing connections directly between clients.
  • Using mod_proxy65, a client can request that Prosody acts as an intermediary in a file transfer - both clients connect to the server, and the server will relay data between them.
  • Most clients already support this protocol (XEP-0065, as the name suggests), and so once configured on the server it should work with any modern client out of the box.
  • Setting up the file transfer proxy is described in our mod_proxy65 documentation.
  • Port multiplexing:
  • An experimental new feature allows you to configure Prosody to run more than one kind of service on a single port. As an example you can handle both client-to-server and server-to-server connections on a single port, in fact, it even supports HTTP and BOSH! This means that you could serve XMPP clients on port 80, and still serve files over HTTP and allow BOSH connections on that port.
  • To try it out, simply set the list of ports in the config, for example: "ports = { 5222, 80 }" - no need to specify which service(s) each port is for.
  • Further port configuration is described in our documentation.
  • Error notification:
  • Another relatively minor, but very useful change is that when Prosody fails to deliver a message over a server-to-server connection, it includes in the generated error message what caused the failure. The feature is probably best described with a screenshot (this is of Gajim):
  • Image showing connection failed message from Prosody:
  • By providing this information we can allow client developers to provide better user interfaces. Error handling and reporting is in our experience one area where all the major clients have a lot of room for improvement. Hopefully this can help them on their way to more explanatory errors.
  • Proxy-less BOSH:
  • BOSH is a great technology which allows XMPP to be used from web pages. However it has traditionally been rather restricted by Javascript's "same-origin" policy, which prevents a page from connecting to the XMPP server unless it is on the same domain and port.
  • Until now this has been solved by using a server proxy on the page's domain to forward requests to the XMPP server, or to use Flash to make the requests, via flxhr.
  • However browsers now are beginning to support a new specification known as Cross-Origin Resource Sharing (CORS). This allows a browser to ask for permission from the remote domain to send requests there.
  • Support for CORS is now implemented in Prosody, and a browser also supporting CORS can connect to Prosody via BOSH without using a proxy, and without using Flash. CORS works out of the box with Strophe.js.
  • Details on configuring CORS support to suit your setup can be found in our BOSH documentation.
  • Other changes:
  • This release includes many other changes, features and improvements. These include compression for server-to-server streams, disabling support for the insecure SSLv2 protocol, fixes to make PEP support compatible with User Avatar, and non-anonymous rooms and room destruction for MUC.
  • There have also been numerous changes to improve performance, and compliance with the latest XMPP specifications.

What is new in version 0.6.1:

  • Wow, that was quick. Unfortunately some users identified a critical bug in the roster storage in our 0.6.0 release. We've identified and fixed the problem as soon as we can, and strongly recommend that everyone running 0.6.0 back up their data directory (as always!) and upgrade to 0.6.1 at the earliest opportunity.

What is new in version 0.5.2:

  • PEP: Fix sending of iq replies on publish
  • MUC: Add MUC namespace to errors (fixes Gajim's behaviour)
  • BOSH: Fix reply for host-unknown errors
  • More reliably prevent adding yourself to your roster
  • Fix leaked session object when XEP-0114 components disconnect
  • Apply nodeprep (i.e. case normalization) to usernames at login
  • Implement timeout for s2s dialback responses
  • Correctly fall back on alternate DNS nameservers if one fails
  • More robust parsing of resolv.conf
  • mod_httpserver: Allow configuration of HTTP base path
  • mod_console: Gracefully close streams when using s2s:close()
  • Fix libidn crash on Vista and some other Windows systems

What is new in version 0.5.2:

  • This is a bugfix release for the stable 0.5 branch. It contains several DNS-related fixes, resolving issues that could cause "stuck" s2s connections. It also fixes some compatibility... issues with clients. Lastly it fixes a libidn-related crash on Vista and some other Windows versions.

What is new in version 0.5.1:

  • Prosody 0.5.1 is a minor release to fix some of the issues that have been reported since the release of 0.5.0. It includes a fix to correctly send the room subject when a user joins a MUC room, and a (harmless) traceback caused when sending subscription requests to the server itself.

Similar Software

Trillian
Trillian

17 Jul 15

GFeedLine
GFeedLine

27 Sep 15

Eva
Eva

3 Jun 15

Comments to Prosody

Comments not found
Add Comment
Turn on images!