Differences between revisions 41 and 53 (spanning 12 versions)
Revision 41 as of 2021-02-03 08:32:45
Size: 7742
Editor: fioddor
Comment: Inhibit Moinmoin autolinks
Revision 53 as of 2022-02-04 21:24:58
Size: 9727
Editor: ?BenedekNagy
Comment:
Deletions are marked like this. Additions are marked like this.
Line 17: Line 17:

=== What is ejabberd? ===

Ejabberd is a chat server which uses the Extensible Messaging and Presence Protocol (XMPP).
Line 43: Line 47:
=== Use Let's encrypt certificate for ejabberd ===

If your !FreedomBox server uses a Let's Encrypt certificate, you will also want to use it for ejabberd. To do so, as your !FreedomBox admin, go to '''System''' > '''Let's Encrypt''', and select the checkbox at `Use certificate for ejabberd`:

{{attachment:certificate-for-ejabberd.png|Use of certificate for Ejabberd}}
Line 58: Line 56:
 * TCP 5280 (?)
Line 63: Line 60:
 * [[https://xmpp.org/software/clients.html|XMPP clients]] are available for various desktop and mobile platforms.  * [[https://xmpp.org/software/clients.html|XMPP clients]] are available for various desktop and mobile platforms. !FreedomBox links to the download sources of some of them. Feel free to include more [[https://wiki.debian.org/FreedomBox/Manual/ejabberd?action=edit&editor=text|here]] (needs free registration). We'll notice and might list them in !FreedomBox.

 {{attachment:xmpp-clients_en_V01.png|XMPP clients}}


==== FreedomBox webclient ====

For maximum simplicity !FreedomBox provides a web client: [[FreedomBox/Manual/JSXC|JSXC]]. No need for your users to install additional software on their side. They'll be able to just use their browser. This is usually the first choice for new and eventual users.
Line 71: Line 75:
[[https://conversations.im/|Conversations]] is an Android XMPP client available on [[https://f-droid.org/packages/eu.siacs.conversations|F-Droid]] or the [[https://play.google.com/store/apps/details?id=eu.siacs.conversations|Play Store]]. In addition to text messaging, you can use Conversations to send images and have group chats. [[https://conversations.im/|Conversations]] is an Android XMPP client with videochat support available on [[https://f-droid.org/packages/eu.siacs.conversations|F-Droid]] or the [[https://play.google.com/store/apps/details?id=eu.siacs.conversations|Play Store]]. In addition to text messaging, you can use Conversations to send images and have group chats.
Line 83: Line 87:
===== Movim (Android) =====

[[https://movim.eu/|Movim]] is a free software XMPP client with videochat support for Android available on [[https://f-droid.org/packages/com.movim.movim/|F-Droid]].

===== ChatSecure (iOS) =====

[[https://chatsecure.org|ChatSecure]] is a free software XMPP client with videochat support available from the [[https://apps.apple.com/us/app/chatsecure/id464200063|App Store]].

===== Monal (iOS) =====

[[https://monal.im|Monal]] is a free software XMPP client with videochat support available from the [[https://apps.apple.com/us/app/monal-free-xmpp-chat/id317711500|App Store]].

===== Siskin (iOS) =====

[[https://siskin.im|Siskin]] is a free software XMPP client with videochat support available from the [[https://apps.apple.com/us/app/tigase-messenger/id1153516838|App Store]].
Line 87: Line 107:
[[https://gajim.org/|Gajim]] is a XMPP open-source client for the desktop, available for Windows, MacOS and Linux. You can download this application for your operating system from [[https://gajim.org/download/|this page]] and find instructions about installation. [[https://gajim.org/|Gajim]] is a XMPP open-source client for the desktop, available for Windows, MacOS and Linux. This application is available in Debian, and for other operating systems you can download it from [[https://gajim.org/download/|this page]] and find instructions about installation.
Line 93: Line 113:
A popup shows up right after you start Gajim for the first time (1), asking you to either login to your XMPP (FreedomBox) account or to register for a new account.
When you choose to login, after clicking "Forward", you will be asked a Jabber ID and a password (2): you have to enter your FreedomBox account and password here.
A popup shows up right after you start Gajim for the first time (1), asking you to either login to your XMPP (!FreedomBox) account or to register for a new account.
When you choose to login, after clicking "Forward", you will be asked a Jabber ID and a password (2): you have to enter your !FreedomBox account and password here.
Line 96: Line 116:
Finally, after logging in successfully, you will see the main Gajim screen (3). From there, you can add a contact ('''Account''' > '''Add contact...''') then you can start a conversation ('''Gajim''' > '''Start chat'''). Finally, after logging in successfully, you will see the main Gajim screen (3). From there, you can add a contact (''Account'' > ''Add contact...'') then you can start a conversation (''Gajim'' > ''Start chat'').
Line 100: Line 120:
[[https://dino.im/|Dino]] is another XMPP free software client for the desktop. It is available only for [[https://github.com/dino/dino/wiki/Distribution-Packages||multiple Linux distributions]]. [[https://dino.im/|Dino]] is another XMPP free software client for the desktop. It is available for [[https://github.com/dino/dino/wiki/Distribution-Packages||multiple Linux distributions]].
Line 110: Line 130:
===== Movim (Linux) =====

[[https://movim.eu/|Movim]] is a free software XMPP client with videochat support for Linux. The project provides an unofficial Debian package.

===== Monal (MacOS) =====

[[https://monal.im|Monal]] is a free software XMPP client with videochat support available from the [[https://apps.apple.com/app/id1499227291?mt=12|Mac App Store]].
Line 113: Line 141:
==== Ejabberd ====
Line 115: Line 144:

==== Clients' sites ====
 * Conversations: https://conversations.im
 * Gajim: https://gajim.org
 * Dino: https://github.com/dino/dino
 * Movim: https://movim.eu
 * !ChatSecure: https://chatsecure.org
 * Monal: https://monal.im
 * Siskin: https://siskin.im

==== XMPP Protocol ====
 * Website: https://xmpp.org
 * Summary at Wikipedia: https://en.wikipedia.org/wiki/XMPP

Deutsch - English - Español - (+)

Ejabberd (Chat Server)

ejabberd icon

Available since: version 0.3

What is ejabberd?

Ejabberd is a chat server which uses the Extensible Messaging and Presence Protocol (XMPP).

What is XMPP?

XMPP is a federated server-client protocol for Instant Messaging. This means that users who have accounts on one server, can talk to users that are on another server.

XMPP can also be used for voice and video calls, if supported by the clients.

Currently FreedomBox offers both, a server (ejabberd) and a web client (JSXC) from its web interface.

Privacy

With XMPP, there are two ways that conversations can be secured:

  1. TLS: This secures the connection between the client and server, or between two servers. This should be supported by all clients and is highly recommended.
  2. End-to-end: This secures the messages sent from one client to another, so that even the server cannot see the contents. The latest and most convenient protocol is called OMEMO, but it is only supported by a few clients. There is another protocol called OTR that may be supported by some clients that lack OMEMO support. Both clients must support the same protocol for it to work.

Setting the Domain Name

For XMPP to work, your FreedomBox needs to have a Domain Name that can be accessed over the network.

If you only need the local network (LAN) users to chat with each other you can invent your domain name, but if you want users from the internet to join your rooms you need a public domain name. You can read more about obtaining a Domain Name in the Dynamic DNS section of this manual.

Once you have a Domain Name, you can tell your FreedomBox to use it by setting the Domain Name in the System Configuration.

Note: After changing your Domain Name, the Chat Server (XMPP) page may show that the service is not running. After a minute or so, it should be up and running again.

Please note that PageKite does not support the XMPP protocol at this time.

Registering FreedomBox users to use XMPP

Currently, all users created through FreedomBox will be able to login to the XMPP server. You can add new users through the System module Users and Groups. It does not matter which Groups are selected for the new user.

Port Forwarding

If your FreedomBox is behind a router, you will need to set up port forwarding on your router. You should forward the following ports for XMPP:

  • TCP 5222 (client-to-server)
  • TCP 5269 (server-to-server)

Compatible clients

  • FreedomBox provides a web client: JSXC.

  • XMPP clients are available for various desktop and mobile platforms. FreedomBox links to the download sources of some of them. Feel free to include more here (needs free registration). We'll notice and might list them in FreedomBox.

    XMPP clients

FreedomBox webclient

For maximum simplicity FreedomBox provides a web client: JSXC. No need for your users to install additional software on their side. They'll be able to just use their browser. This is usually the first choice for new and eventual users.

Mobile clients

You can download an XMPP client for your smartphone or tablet among the ones listed below.

Conversations (Android)

Conversations is an Android XMPP client with videochat support available on F-Droid or the Play Store. In addition to text messaging, you can use Conversations to send images and have group chats.

Conversations - First screen Conversations - Login Conversations - Add contacts

From left to right: (1) First screen - (2) Login screen - (3) Add contacts.

When first starting the Conversations app, you will be asked whether you want to create a new account or if you want to use an existing account. Choose "I already have an account" (1)

With ejabberd installed, the FreedomBox provides an XMPP account for every FreedomBox user. Additional (non-admin) FreedomBox user accounts can be created under System > Users and Groups.

Once logged into a FreedomBox/XMPP account (2), the Conversation app provides a + button that brings up a few choices to contact other people (3).

Movim (Android)

Movim is a free software XMPP client with videochat support for Android available on F-Droid.

ChatSecure (iOS)

ChatSecure is a free software XMPP client with videochat support available from the App Store.

Monal (iOS)

Monal is a free software XMPP client with videochat support available from the App Store.

Siskin (iOS)

Siskin is a free software XMPP client with videochat support available from the App Store.

Desktop clients

Gajim (Windows, MacOS, Linux)

Gajim is a XMPP open-source client for the desktop, available for Windows, MacOS and Linux. This application is available in Debian, and for other operating systems you can download it from this page and find instructions about installation.

Gajim - First screen Gajim - Login Gajim - Main Window

From left to right: (1) First screen - (2) Login screen - (3) Main window

A popup shows up right after you start Gajim for the first time (1), asking you to either login to your XMPP (FreedomBox) account or to register for a new account. When you choose to login, after clicking "Forward", you will be asked a Jabber ID and a password (2): you have to enter your FreedomBox account and password here.

Finally, after logging in successfully, you will see the main Gajim screen (3). From there, you can add a contact (Account > Add contact...) then you can start a conversation (Gajim > Start chat).

Dino (Linux)

Dino is another XMPP free software client for the desktop. It is available for https://github.com/dino/dino/wiki/Distribution-Packages.

Dino - First screen Dino - Login Dino - Start a conversation

From left to right: (1) First screen - (2) Login screen - (3) Start conversation

When first starting Dino after installation, click on the Setup account button. You will be then asked your JID: this is your FreedomBox account. Enter it then click Next (2). Alternatively, you can click on Create account if you don't have a FreedomBox account.

Once you have logged in, you will be able to either start a conversation with one of your XMPP contacts or to join a channel (3).

Movim (Linux)

Movim is a free software XMPP client with videochat support for Linux. The project provides an unofficial Debian package.

Monal (MacOS)

Monal is a free software XMPP client with videochat support available from the Mac App Store.

Ejabberd

Clients' sites

XMPP Protocol

Back to Features introduction or manual pages.


Intro

Information

Support

Contribute

Reports

Promote

Vision

Hardware

Live Help

Where To Start

Translate

Calls

Talks

Overview

Download

Q&A

To Do

Design

Releases

Press

Features

Manual

Contributors

Code

Blog

FreedomBox for Communities

FreedomBox Developer Manual

HELP & DISCUSSIONS: Discussion Forum - Matrix - Mailing List - #freedombox irc.debian.org | CONTACT Foundation | JOIN Project

Next call: Sunday, March 24 at 17:00 UTC

This page is copyright its contributors and is licensed under the Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.


CategoryFreedomBox