Difference between revisions of "Services:Chat"

From Kosmos Wiki
Jump to navigation Jump to search
(Add section about SASL being disabled once we switch to auth using LDAP)
 
(16 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== What is XMPP? ==
+
Kosmos Chat is a service for chat rooms and instant messaging. The service is separate from the chat apps you can use with your account. With a Kosmos Chat account, in the form of <em>username@kosmos.org</em>, you can chat with people on thousands of different servers.
  
XMPP is an open standard for instant messages as well as voice and video chat. With XMPP, you can send and receive messages between users on thousands of different chat providers.
+
== Apps ==
 +
 
 +
The service is based on XMPP<ref>[https://xmpp.org Official XMPP website]</ref><ref>[https://en.wikipedia.org/wiki/XMPP XMPP on Wikipedia]</ref> (also called ''Jabber'' when used for chat), meaning that most chat/messaging apps which support XMPP/Jabber will work with your account. Here are a few apps that we can recommend:
 +
 
 +
=== Android ===
 +
 
 +
'''[https://conversations.im/ Conversations]''' is a fantastic app, and currently the gold standard for XMPP chat on smartphones. It is easy to use, and supports modern end-to-end encryption between all your devices via OMEMO<ref>[https://en.wikipedia.org/wiki/OMEMO OMEMO Multi-End Message and Object Encryption]</ref>.
 +
 
 +
📦 [https://play.google.com/store/apps/details?id=eu.siacs.conversations Buy it on Google Play] (supports development of this open-source app), or 📦 [https://f-droid.org/en/packages/eu.siacs.conversations/ install it from F-Droid] and consider a [https://conversations.im/#donate donation] instead.
 +
 
 +
[[File:Play link for Conversations.png|100px|none]]
 +
 
 +
 
 +
=== iOS ===
 +
 
 +
'''[https://monal-im.org/ Monal]''' is a chat app for iOS, iPadOS, and macOS.
 +
 
 +
📦 [https://apps.apple.com/app/id317711500 Install it from the App Store]
 +
 
 +
[[File:App Store link for Monal.png|100px|none]]
 +
 
 +
 
 +
'''[https://siskin.im Siskin IM]''' is another option for iOS. It is made by the same people as Beagle IM, so if you use Beagle on a Mac, this option may work better for you.
 +
 
 +
📦 [https://apps.apple.com/us/app/tigase-messenger/id1153516838 Install it from the App Store]
 +
 
 +
[[File:App Store link for Siskin.png|100px|none]]
 +
 
 +
 
 +
=== Linux / BSD ===
 +
 
 +
'''[https://dino.im Dino]''' is a modern and simple chat app for Linux. Full support for OMEMO encryption, and easy to use.
 +
 
 +
📦 [https://github.com/dino/dino/wiki/Distribution-Packages Get a package for your distribution]
 +
 
 +
=== macOS ===
 +
 
 +
'''[https://beagle.im Beagle IM]''' is a promising new chat app for macOS users. It's still a bit rough around the edges, but supports a lot of modern XMPP features.
 +
 
 +
📦 [https://apps.apple.com/us/app/beagleim-by-tigase-inc/id1445349494 Install it from the App Store]
 +
 
 +
=== Windows ===
 +
 
 +
'''[https://gajim.org Gajim]''' is a full-featured chat app for Windows (also available on Linux and macOS). It has support for most modern XMPP features, including OMEMO encryption via an official plugin.
 +
 
 +
📦 [https://gajim.org/download/ Download it from the official website]
  
 
== How to connect ==
 
== How to connect ==
Line 23: Line 68:
 
;In-band Registration
 
;In-band Registration
 
: Closed
 
: Closed
 
=== Caveats ===
 
 
==== No SASL with LDAP ====
 
 
We are going to switch over the [[Services:Accounts|accounts to use LDAP]]. This has no happened yet, you will receive an email when that happens with a unique generated password and instructions to change it.
 
 
The LDAP implementation in ejabberd doesn't support SASL authentication.
 
 
<blockquote>You can authenticate users against an LDAP directory. '''Note that current LDAP implementation does not support SASL authentication'''.<ref>[https://docs.ejabberd.im/admin/configuration/#ldap-authentication Configuring ejabberd, LDAP Authentication].</ref>:</blockquote>
 
 
The implication is that '''the user does not send a salted & hashed password''' to ejabberd, so the ejabberd process has access to a user's password and sends it over to the LDAP server to authenticate. This is considered <code>PLAIN</code> auth, even when both the XMPP c2s connection and the LDAP connect using TLS
 
 
There is an RFC, "Lightweight Directory Access Protocol (LDAP) Schema for Storing Salted Challenge Response Authentication Mechanism (SCRAM) Secrets"<ref>[https://tools.ietf.org/html/rfc5803 Lightweight Directory Access Protocol (LDAP) Schema for Storing Salted Challenge Response Authentication Mechanism (SCRAM) Secrets].</ref>).
 
 
===== Impact =====
 
 
Some clients will display a warning because they detect that the auth used to be done with SASL, but not any longer. The most common one is [https://conversations.im/ Conversations, the Android client], so we are including instructions for it.
 
 
===== How to accept the warning in Conversations =====
 
 
In Conversations you can accept the warning by pressing "Accept" in the account details, that appears where the "Save" button is normally. <ref>[https://github.com/siacs/Conversations/issues/2498#issuecomment-556071993 No (obvious?) way to accept SASL downgrade]</ref>
 
  
 
== Multi-user Chat (MUC) ==
 
== Multi-user Chat (MUC) ==
Line 54: Line 77:
 
== Tor hidden service ==
 
== Tor hidden service ==
  
You can connect to the XMPP server directly from the Tor network. The configuration is the same as for clearnet, except for the server to connect to:
+
You can connect to the XMPP service directly from the Tor network. The configuration is the same as for clearnet, except for the server to connect to:
  
 
;Server/host
 
;Server/host
: ht6eqe754p3m2gif.onion
+
: fgitrdtw3slmsue6ghiaeatvpqvpd4gguakz5sjzyqid5ezyejmf5cyd.onion
  
 +
== References ==
  
 
<references />
 
<references />

Latest revision as of 06:30, 16 March 2023

Kosmos Chat is a service for chat rooms and instant messaging. The service is separate from the chat apps you can use with your account. With a Kosmos Chat account, in the form of username@kosmos.org, you can chat with people on thousands of different servers.

Apps

The service is based on XMPP[1][2] (also called Jabber when used for chat), meaning that most chat/messaging apps which support XMPP/Jabber will work with your account. Here are a few apps that we can recommend:

Android

Conversations is a fantastic app, and currently the gold standard for XMPP chat on smartphones. It is easy to use, and supports modern end-to-end encryption between all your devices via OMEMO[3].

📦 Buy it on Google Play (supports development of this open-source app), or 📦 install it from F-Droid and consider a donation instead.

Play link for Conversations.png


iOS

Monal is a chat app for iOS, iPadOS, and macOS.

📦 Install it from the App Store

App Store link for Monal.png


Siskin IM is another option for iOS. It is made by the same people as Beagle IM, so if you use Beagle on a Mac, this option may work better for you.

📦 Install it from the App Store

App Store link for Siskin.png


Linux / BSD

Dino is a modern and simple chat app for Linux. Full support for OMEMO encryption, and easy to use.

📦 Get a package for your distribution

macOS

Beagle IM is a promising new chat app for macOS users. It's still a bit rough around the edges, but supports a lot of modern XMPP features.

📦 Install it from the App Store

Windows

Gajim is a full-featured chat app for Windows (also available on Linux and macOS). It has support for most modern XMPP features, including OMEMO encryption via an official plugin.

📦 Download it from the official website

How to connect

Usually, you only need your user address and password to configure your chat application.

Your user address is your-username@kosmos.org.

Details

For advanced users and/or troubleshooting:

Server/host
xmpp.kosmos.org
C2S port
5222 (StartTLS), 5223 (TLS)
S2S port
5269
Bosh URL
xmpp.kosmos.org:5443/bosh
In-band Registration
Closed

Multi-user Chat (MUC)

The server is host to a variety of chat rooms. The server's MUC domain is kosmos.chat. Thus, room addresses look like chatroom-name@kosmos.chat. Only local users (with a kosmos.org address) are currently allowed to create chat rooms on kosmos.chat.

Come talk to us in kosmos@kosmos.chat!

Tor hidden service

You can connect to the XMPP service directly from the Tor network. The configuration is the same as for clearnet, except for the server to connect to:

Server/host
fgitrdtw3slmsue6ghiaeatvpqvpd4gguakz5sjzyqid5ezyejmf5cyd.onion

References