Skip to main content

Cerca

Elementi taggati con: Prosody


 
Ayer con f del @Partido Interdimensional Pirata de Argentina nos* juntamos a armar esto:

Prosody Moderno @ 0xacab.org GitLab


La idea del proyecto es facilitar la tarea de levantar un servicio de #chat moderno, seguro** e interoperable.

Son dos archivos de configuración y un script que crea un container.

Detalles técnicos


Los archivos de configuración son: uno para la #monitorización incluída #Monit, y otro para el servidor de chat #Prosody.

El script es un Dockerfile: un achivo con instrucciones sobre cómo fabricar una imagen de #Docker (como los archivos Makefile de make).

El container está basado en #Alpine, y usa variables de entorno y envsubst para adaptar la configuración.

Eh! Yo quiero, también!


Quienes se den maña, están invitadxs a probarla, y colaborar o hacer su propia versión en base a esta.

Para reportar problemas, documentar o bifurcar (fork) el repositorio, se tienen que registrar en 0xacab.org.

Para clonar el repositorio, pueden tirar git clone https://0xacab.org/partido-interdimensional-pirata/prosody-moderno.git, sin necesidad de registrarse.
#XMPP #Jabber #IM
#XEPs #ComplianceTester #XEP-0387 #HTTPFileUpload #OMEMO #MAM #PushNotifications #MessageCarbons #StreamManagement
#containers #virtualización #aislamiento #automatización #orquestación
#español #ñ

*: más que nada lo armó él, en realidad :P yo fui a acompañar y a aprender (levanté un Prosody una vez, pero nunca había usado Docker)
**: a seguro se lo llevaron preso

 
Ayer con f del @Partido Interdimensional Pirata de Argentina nos* juntamos a armar esto:

Prosody Moderno @ 0xacab.org GitLab


La idea del proyecto es facilitar la tarea de levantar un servicio de #chat moderno, seguro** e interoperable.

Son dos archivos de configuración y un script que crea un container.

Detalles técnicos


Los archivos de configuración son: uno para la #monitorización incluída #Monit, y otro para el servidor de chat #Prosody.

El script es un Dockerfile: un achivo con instrucciones sobre cómo fabricar una imagen de #Docker (como los archivos Makefile de make).

El container está basado en #Alpine, y usa variables de entorno y envsubst para adaptar la configuración.

Eh! Yo quiero, también!


Quienes se den maña, están invitadxs a probarla, y colaborar o hacer su propia versión en base a esta.

Para reportar problemas, documentar o bifurcar (fork) el repositorio, se tienen que registrar en 0xacab.org.

Para clonar el repositorio, pueden tirar git clone https://0xacab.org/partido-interdimensional-pirata/prosody-moderno.git, sin necesidad de registrarse.
#XMPP #Jabber #IM
#XEPs #ComplianceTester #XEP-0387 #HTTPFileUpload #OMEMO #MAM #PushNotifications #MessageCarbons #StreamManagement
#containers #virtualización #aislamiento #automatización #orquestación
#español #ñ

*: más que nada lo armó él, en realidad :P yo fui a acompañar y a aprender (levanté un Prosody una vez, pero nunca había usado Docker)
**: a seguro se lo llevaron preso

 

Prosody 0.10.1 released



Congratulations to the developers!



As always, the release features many improvements and bug fixes.

The package is already in Debian unstable, and will be in testing and stable backports soon.

#prosody #xmpp #debian

 

XMPP with anonymous network I2P



Interesting article with configuration hints for prosody, which I should try at some point:
The idea of building decentralized messenger run by users, not corporations, is not new. But the process of building it costs a lot of money and takes a lot of time. But what if we take the old good XMPP protocol, which has everything already implemented for us?
That's not "real P2P", you may argue, for using XMPP one needs to have a server running with a registered domain name. Yes, but we can run our server software on a local host and use virtual I2P network for connecting with other servers. I2P (Invisible Internet Protocol) allows us to use virtual .i2p address instead of a real domain name, plus it gives us advanced protection against illegal dragnet surveillance.
That way we have:
* Hybrid P2P messenger, which can be run both on end-user devices and on high-performance server infrastructure.
* Features which many of "real P2P" messengers miss: offline message delivery, "cloud storage" for history and contacts, using one account on multiple devices.
* All kinds of end-user applications are available (desktop, mobile, web).
* Censorship resistance and advanced privacy protection as a bonus from using I2P.

Let's get it!
#xmpp #i2p #i2pd #decentralization #p2p #privacy #prosody

 

Use IRC from XMPP with Debian



Biboumi 6.1-1~bpo9+1 and Prosody 0.10.0-1~bpo9+1 are now available in Debian 9 (stable, stretch) via backports. Biboumi is a gateway from XMPP to IRC and can be used with Prosody or any other XMPP server. It allows XMPP users to join IRC channels as if they were MUCs. Very useful!

#biboumi #prosody #xmpp #debian #freesoftware #irc #muc

 

Movim migrates its official server to ejabberd

Movim is a distributed social networking platform founded in 2010. It can be accessed using existing XMPP clients and Jabber accounts, and is a free and open source software licensed under the AGPL.

With version 0.12 released in October, Movim migrated its official server to ejabberd. Before, they were using Metronome, a Prosody fork. Today, we are chatting with Timothée Jaussoin, the founder of Movim, about this very complex migration.
...
We now have a proper packaging for our Linux distribution – Debian, which certainly makes it easier to maintain. There’s also an improved scalability and more stable CPU and memory consumption, which helps to predict hardware requirements.
...
Even if I see ejabberd more as a tool that needs integration and tuning to create a proper platform, ejabberd seems to be the more serious solution to build proper messaging systems using the XMPP protocol.
#movim #ejabberd #socialnetwork #federation #xmpp #agpl #prosody #debian #freesoftware

 

Prosody 0.10.0 now in Debian unstable



Users of Debian unstable can now apt install prosody prosody-modules to get the latest version. I run the packages (so far without issues) on a Debian stable system. The "clean" way would be to wait for a backport, but at the moment, it is not strictly necessary.

#debian #prosody #xmpp #federation

 

Prosody 0.10.0 released



Congratulations to the developers!



Note to Debian users: You can try 0.10 now, but it is a two months old pre-release in experimental. You have to use also the prosody-modules from experimental, which are pretty recent. Works perfectly for me on a production server, but still... Expect the new release in unstable in some days.

#prosody #xmpp #debian

Prosody 0.10.0 released - Prosodical Thoughts

Prosody 0.10.0 released - Prosodical Thoughts

 
for the chat, i started reading about this addition to the #Prosody chat service that Diaspora Pods can run, seems you can connect to additional services that you have an account with. I'd like to get some other #Podmins to weigh in, if anyone has tried this already?

 

Modern XMPP Server



by Elena ``of Valhalla''



reposted here to get the tags right


I've published a new HOWTO on my website:

Enrico already wrote about the Why (and the What, Who and When), so I'll just quote his conclusion and move on to the How.
I now have an XMPP setup which has all the features of the recent fancy chat systems, and on top of that it runs, client and server, on Free Software, which can be audited, it is federated and I can self-host my own server in my own VPS if I want to, with packages supported in Debian.

How



I've decided to install prosody, mostly because it was recommended by the RTC QuickStart Guide; I've heard that similar results can be reached with ejabberd and other servers.

I'm also targeting Debian stable (+ backports); as I write this is jessie; if there are significant differences I will update this article when I will upgrade my server to stretch. Right now, this means that I'm using prosody 0.9 (and that's probably also the version that will be available in stretch).

Installation and prerequisites



You will need to enable the backports repository and then install the packages prosody and prosody-modules.

You also need to setup some TLS certificates (I used Let's Encrypt); and make them readable by the prosody user; you can see Chapter 12 of the RTC QuickStart Guide for more details.

On your firewall, you'll need to open the following TCP ports:
  • 5222 (client2server)
  • 5269 (server2server)
  • 5280 (default http port for prosody)
  • 5281 (default https port for prosody)
The latter two are needed to enable some services provided via http(s), including rich media transfers.

With just a handful of users, I didn't bother to configure LDAP or anything else, but just created users manually via:
prosodyctl adduser alice@example.org
In-band registration is disabled by default (and I've left it that way, to prevent my server from being used to send spim).

prosody configuration



You can then start configuring prosody by editing /etc/prosody/prosody.cfg.lua and changing a few values from the distribution defaults.

First of all, enforce the use of encryption and certificate checking both for client2server and server2server communications with:
c2s_require_encryption = true<br></br>s2s_secure_auth = true
and then, sadly, add to the whitelist any server that you want to talk to and doesn't support the above:
s2s_insecure_domains = { "gmail.com" }

virtualhosts



For each virtualhost you want to configure, create a file /etc/prosody/conf.avail/chat.example.org.cfg.lua with contents like the following:
VirtualHost "chat.example.org"
enabled = true
ssl = {
key = "/etc/ssl/private/example.org-key.pem";
certificate = "/etc/ssl/public/example.org.pem";
}

For the domains where you also want to enable MUCs, add the follwing lines:
Component "conference.chat.example.org" "muc"
restrict_room_creation = "local"

the "local" configures prosody so that only local users are allowed to create new rooms (but then everybody can join them, if the room administrator allows it): this may help reduce unwanted usages of your server by random people.

You can also add the following line to enable rich media transfers via http uploads (XEP-0363):
Component "upload.chat.trueelena.org" "http_upload"
The defaults are pretty sane, but see https://modules.prosody.im/mod_http_upload.html for details on what knobs you can configure for this module

Don't forget to enable the virtualhost by linking the file inside /etc/prosody/conf.d/.

additional modules



Most of the other interesting XEPs are enabled by loading additional modules inside /etc/prosody/prosody.cfg.lua (under modules_enabled); to enable mod_something just add a line like:
"something";
Most of these come from the prosody-modules package (and thus from https://modules.prosody.im/ ) and some may require changing when prosody 0.10 will be available; when this is the case it is mentioned below.
  • mod_carbons (XEP-0280) To keep conversations syncronized while using multiple devices at the same time.

    This will be included by default in prosody 0.10.
  • mod_privacy + mod_blocking (XEP-0191) To allow user-controlled blocking of users, including as an anti-spim measure.

    In prosody 0.10 these two modules will be replaced by mod_privacy.
  • mod_smacks (XEP-0198) Allow clients to resume a disconnected session before a customizable timeout and prevent message loss.
  • mod_mam (XEP-0313) Archive messages on the server for a limited period of time (default 1 week) and allow clients to retrieve them; this is required to syncronize message history between multiple clients.

    With prosody 0.9 only an in-memory storage backend is available, which may make this module problematic on servers with many users. prosody 0.10 will fix this by adding support for an SQL backed storage with archiving capabilities.
  • mod_throttle_presence + mod_filter_chatstates (XEP-0352) Filter out presence updates and chat states when the client announces (via Client State Indication) that the user isn't looking. This is useful to reduce power and bandwidth usage for "useless" traffic.
#xmpp #prosody #debian #jabber