Suivant: Services de téléphonie, Précédent: Services de courriels, Monter: Services [Table des matières][Index]
Le module (gnu services messaging)
fournit des définitions de
services Guix pour les services de messageries instantanées. Actuellement
il fournit les services suivants :
C’est le type pour le le serveur de communication
XMPP Prosody. Sa valeur doit être un enregistrement
prosody-configuration
comme dans cet exemple :
(service prosody-service-type
(prosody-configuration
(modules-enabled (cons* "groups" "mam" %default-modules-enabled))
(int-components
(list
(int-component-configuration
(hostname "conference.example.net")
(plugin "muc")
(mod-muc (mod-muc-configuration)))))
(virtualhosts
(list
(virtualhost-configuration
(domain "example.net"))))))
Voir plus bas pour des détails sur prosody-configuration
.
Par défaut, Prosody n’a pas besoin de beaucoup de configuration. Seul un
champ virtualhosts
est requis : il spécifie le domaine que vous
voulez voir Prosody servir.
Vous pouvez effectuer plusieurs vérifications de la configuration générée
avec la commande prosodyctl check
.
Prosodyctl vous aidera aussi à importer des certificats du répertoire
letsencrypt
pour que l’utilisateur prosody
puisse y accéder.
Voir https://prosody.im/doc/letsencrypt.
prosodyctl --root cert import /etc/letsencrypt/live
Les paramètres de configuration disponibles sont les suivants. Chaque
définition des paramètres est précédé par son type ; par exemple,
‘liste-de-chaines toto’ indique que le paramètre toto
devrait
être spécifié comme une liste de chaînes de caractères. Les types précédés
de peut-être-
signifient que le paramètre n’apparaîtra pas dans
prosody.cfg.lua
lorsque sa valeur est non spécifiée.
Il y a aussi une manière de spécifier la configuration en tant que chaîne de
caractères si vous avez un vieux fichier prosody.cfg.lua
que vous
voulez porter depuis un autre système ; voir la fin pour plus de détails.
Le type file-object
désigne soit un objet simili-fichier
(voir file-like objects), soit un nom de fichier.
Les champs de prosody-configuration
disponibles sont :
prosody-configuration
:package prosody ¶Le paquet Prosody.
prosody-configuration
:file-name data-path ¶Emplacement du répertoire de stockage des données de Prosody. Voir https://prosody.im/doc/configure. La valeur par défaut est ‘"/var/lib/prosody"’.
prosody-configuration
:file-object-list plugin-paths ¶Répertoires de greffons supplémentaires. Ils sont analysés dans l’ordre spécifié. Voir https://prosody.im/doc/plugins_directory. La valeur par défaut est ‘()’.
prosody-configuration
:file-name certificates ¶Chaque hôte virtuel et composant a besoin d’un certificat pour que les clients et les serveurs puissent vérifier son identité. Prosody chargera automatiquement les clefs et les certificats dans le répertoire spécifié ici. La valeur par défaut est ‘"/etc/prosody/certs"’.
prosody-configuration
:string-list admins ¶C’est une liste des comptes administrateurs de ce serveur. Remarquez que
vous devez créer les comptes séparément. Voir
https://prosody.im/doc/admins et
https://prosody.im/doc/creating_accounts. Par exemple : (admins
'("user1@example.com" "user2@example.net"))
. La valeur par défaut est
‘()’.
prosody-configuration
:boolean use-libevent? ¶Active l’utilisation de libevent pour de meilleures performances sous une forte charge. Voir https://prosody.im/doc/libevent. La valeur par défaut est ‘#f’.
prosody-configuration
:module-list modules-enabled ¶C’est la liste des modules que Prosody chargera au démarrage. Il cherchera
mod_modulename.lua
dans le répertoire des greffons, donc assurez-vous
qu’il existe aussi. La documentation des modules se trouve sur
https://prosody.im/doc/modules. La valeur par défaut est
‘("roster" "saslauth" "tls" "dialback" "disco" "carbons" "private"
"blocklist" "vcard" "version" "uptime" "time" "ping" "pep" "register"
"admin_adhoc")’.
prosody-configuration
:string-list modules-disabled ¶‘"offline"’,‘"c2s"’ et ‘"s2s"’ sont chargés automatiquement, mais si vous voulez les désactiver, ajoutez-les à cette liste. La valeur par défaut est ‘()’.
prosody-configuration
:file-object groups-file ¶Chemin vers un fichier texte où les groupes partagés sont définis. Si ce chemin est vide alors ‘mod_groups’ ne fait rien. Voir https://prosody.im/doc/modules/mod_groups. La valeur par défaut est ‘"/var/lib/prosody/sharedgroups.txt"’.
prosody-configuration
:boolean allow-registration? ¶Désactive la création de compte par défaut, pour la sécurité. Voir https://prosody.im/doc/creating_accounts. La valeur par défaut est ‘#f’.
prosody-configuration
:peut-être-ssl-configuration ssl ¶Ce sont les paramètres liés à SSL/TLS. La plupart sont désactivés pour pouvoir utiliser les paramètres par défaut de Prosody. Si vous ne comprenez pas complètement ces options, ne les ajoutez pas à votre configuration, il est aisé de diminuer la sécurité de votre serveur en les modifiant. Voir https://prosody.im/doc/advanced_ssl_config.
Les champs de ssl-configuration
disponibles sont :
ssl-configuration
:peut-être-chaine protocol ¶Cela détermine la poignée de main à utiliser.
ssl-configuration
:peut-être-nom-de-fichier key ¶Chemin vers votre fichier de clef privée.
ssl-configuration
:peut-être-nom-de-fichier certificate ¶Chemin vers votre fichier de certificat.
ssl-configuration
:file-object capath ¶Chemin vers le répertoire contenant les certificats racines que vous voulez voir Prosody utiliser lors de la vérification des certificats des serveurs distants. La valeur par défaut est ‘"/etc/ssl/certs"’.
ssl-configuration
:peut-être-fichier-objet cafile ¶Chemin vers un fichier contenant les certificats racines auxquels Prosody
devra faire confiance. Comme capath
mais avec les certificats
concaténés ensemble.
ssl-configuration
:peut-être-liste-de-chaine verify ¶Une liste d’options de vérification (qui correspondent globalement aux
drapeaux set_verify()
d’OpenSSL).
ssl-configuration
:peut-être-liste-de-chaine options ¶Une liste d’options générales liées à SSL/TLS. Elles correspondent
globalement à set_options()
d’OpenSSL. Pour une liste complète des
options disponibles dans LuaSec, voir les sources de LuaSec.
ssl-configuration
:peut-être-entier-non-négatif depth ¶Longueur maximale d’une chaîne d’autorités de certifications avant la racine.
ssl-configuration
:peut-être-chaine ciphers ¶Une chaîne de méthodes de chiffrement OpenSSL. Cela choisi les méthodes de chiffrement que Prosody offrira aux clients, et dans quel ordre de préférence.
ssl-configuration
:peut-être-nom-de-fichier dhparam ¶Un chemin vers un fichier contenant les paramètres pour l’échange de clef
Diffie-Hellman. Vous pouvez créer un tel fichier avec : openssl
dhparam -out /etc/prosody/certs/dh-2048.pem 2048
ssl-configuration
:peut-être-chaine curve ¶Courbe pour Diffie-Hellman sur courbe elliptique. La valeur par défaut de Prosody est ‘"secp384r1"’.
ssl-configuration
:peut-être-liste-de-chaine verifyext ¶Une liste d’options de vérification « supplémentaires ».
ssl-configuration
:peut-être-chaine password ¶Mot de passe pour les clefs privées chiffrées.
prosody-configuration
:boolean c2s-require-encryption? ¶S’il faut forcer toutes les connexions client-serveur à être chiffrées ou non. Voir https://prosody.im/doc/modules/mod_tls. La valeur par défaut est ‘#f’.
prosody-configuration
:string-list disable-sasl-mechanisms ¶Ensemble de mécanismes qui ne seront jamais offerts. Voir https://prosody.im/doc/modules/mod_saslauth. La valeur par défaut est ‘("DIGEST-MD5")’.
prosody-configuration
:boolean s2s-require-encryption? ¶S’il faut forcer toutes les connexion serveur-serveur à être chiffrées ou non. Voir https://prosody.im/doc/modules/mod_tls. La valeur par défaut est ‘#f’.
prosody-configuration
:boolean s2s-secure-auth? ¶S’il faut requérir le chiffrement et l’authentification du certificat. Cela fournit une sécurité idéale, mais demande que les serveurs avec lesquels vous communiquez supportent le chiffrement ET présentent un certificat valide et de confiance. Voir https://prosody.im/doc/s2s#security. La valeur par défaut est ‘#f’.
prosody-configuration
:string-list s2s-insecure-domains ¶Beaucoup de serveurs ne supportent pas le chiffrement ou ont un certificat invalide ou auto-signé. Vous pouvez lister les domaines ici qui n’ont pas besoin de s’authentifier avec des certificats. Ils seront authentifiés par DNS. Voir https://prosody.im/doc/s2s#security. La valeur par défaut est ‘()’.
prosody-configuration
:string-list s2s-secure-domains ¶Même si vous laissez s2s-secure-auth?
désactivé, vous pouvez toujours
demander un certificat valide pour certains domaine en spécifiant la liste
ici. Voir https://prosody.im/doc/s2s#security. La valeur par défaut
est ‘()’.
prosody-configuration
:string authentication ¶Choisi le moteur d’authentification à utiliser. Le moteur par défaut stocke les mots de passes en texte clair et utilise la configuration de stockage des données de Prosody pour stocker les données authentifiées. Si vous n’avez pas confiance dans le serveur, lisez https://prosody.im/doc/modules/mod_auth_internal_hashed pour plus d’information sur l’utilisation du moteur hashed. Voir aussi https://prosody.im/doc/authentication. La valeur par défaut est ‘"internal_plain"’.
prosody-configuration
:peut-être-chaine log ¶Indique les options de journalisation. La configuration avancée des journaux n’est pas encore supportée par le service Prosody. Voir https://prosody.im/doc/logging. La valeur par défaut est ‘"*syslog"’.
prosody-configuration
:file-name pidfile ¶Fichier où écrire le PID. Voir https://prosody.im/doc/modules/mod_posix. La valeur par défaut est ‘"/var/run/prosody/prosody.pid"’.
prosody-configuration
:peut-être-entier-non-négatif http-max-content-size ¶Taille maximum autorisée pour le corps HTTP (en octets).
prosody-configuration
:peut-être-chaine http-external-url ¶Certains modules exposent leur propre URL de diverses manières. Cette URL
est construite à partir du protocole, de l’hôte et du port utilisé. Si
Prosody se trouve derrière un proxy, l’URL publique sera
http-external-url
à la place. Voir
https://prosody.im/doc/http#external_url.
prosody-configuration
:virtualhost-configuration-list virtualhosts ¶Un hôte dans Prosody est un domaine sur lequel les comptes utilisateurs sont créés. Par exemple si vous voulez que vos utilisateurs aient une adresse comme ‘"john.smith@example.com"’ vous devrez ajouter un hôte ‘"example.com"’. Toutes les options de cette liste seront appliquées uniquement à cet hôte.
Remarque : Le nom d’hôte virtuel est utilisé dans la configuration pour éviter de le confondre avec le nom d’hôte physique réel de la machine qui héberge Prosody. Une seule instance de Prosody peut servir plusieurs domaines, chacun défini comme une entrée VirtualHost dans la configuration de Prosody. Ainsi, un serveur qui n’héberge qu’un seul domaine n’aura qu’une entrée VirtualHost.
Voir https://prosody.im/doc/configure#virtual_host_settings.
Les champs de virtualhost-configuration
disponibles sont :
tous ces champs de prosody-configuration
: admins
,
use-libevent?
, modules-enabled
, modules-disabled
,
groups-file
, allow-registration?
, ssl
,
c2s-require-encryption?
, disable-sasl-mechanisms
,
s2s-require-encryption?
, s2s-secure-auth?
,
s2s-insecure-domains
, s2s-secure-domains
,
authentication
, log
, http-max-content-size
,
http-external-url
, raw-content
, plus :
virtualhost-configuration
:string domain ¶Domaine que vous souhaitez que Prosody serve.
prosody-configuration
:int-component-configuration-list int-components ¶Les composant sont des services supplémentaires qui sont disponibles pour les clients, habituellement sur un sous-domaine du serveur principal (comme ‘"mycomponent.example.com"’). Des exemples de composants sont des serveurs de chatroom, des répertoires utilisateurs ou des passerelles vers d’autres protocoles.
Les composants internes sont implémentés dans des greffons spécifiques à Prosody. Pour ajouter un composant interne, vous n’avez qu’à remplir le champ de nom d’hôte et le greffon que vous voulez utiliser pour le composant.
Voir https://prosody.im/doc/components. La valeur par défaut est ‘()’.
Les champs de int-component-configuration
disponibles sont :
tous ces champs de prosody-configuration
: admins
,
use-libevent?
, modules-enabled
, modules-disabled
,
groups-file
, allow-registration?
, ssl
,
c2s-require-encryption?
, disable-sasl-mechanisms
,
s2s-require-encryption?
, s2s-secure-auth?
,
s2s-insecure-domains
, s2s-secure-domains
,
authentication
, log
, http-max-content-size
,
http-external-url
, raw-content
, plus :
int-component-configuration
:string hostname ¶Nom d’hôte du composant.
int-component-configuration
:string plugin ¶Greffon que vous voulez utiliser pour ce composant.
int-component-configuration
:peut-être-mod-muc-configuration mod-muc ¶Le chat multi-utilisateur (MUC) est le modules de Prosody qui vous permet de créer des chatrooms/conférences pour les utilisateurs XMPP.
Des informations générales sur la configuration des salons de discussion multiutilisateurs se trouvent dans la documentation sur les salons (https://prosody.im/doc/chatrooms), que vous devriez lire si vous découvrez les salons XMPP.
Voir aussi https://prosody.im/doc/modules/mod_muc.
Les champs de mod-muc-configuration
disponibles sont :
mod-muc-configuration
:string name ¶Le nom à renvoyer dans les réponses de découverte de services. La valeur par défaut est ‘"Prosody Chatrooms"’.
mod-muc-configuration
:string-or-boolean restrict-room-creation ¶Si la valeur est ‘#t’, cela permettra uniquement aux admins de créer de nouveaux salons. Sinon n’importe qui peut créer un salon. La valeur ‘"local"’ restreint la création aux utilisateurs du domaine parent du service. P. ex. ‘user@example.com’ peut créer des salons sur ‘rooms.example.com’. La valeur ‘"admin"’ restreint ce service aux administrateurs. La valeur par défaut est ‘#f’.
mod-muc-configuration
:entier-non-négatif max-history-messages ¶Nombre maximum de messages d’historique qui seront envoyés aux membres qui viennent de rejoindre le salon. La valeur par défaut est ‘20’.
prosody-configuration
:ext-component-configuration-list ext-components ¶Les composants externes utilisent XEP-0114, que la plupart des composants supportent. Pour ajouter un composant externe, vous remplissez simplement le champ de nom d’hôte. Voir https://prosody.im/doc/components. La valeur par défaut est ‘()’.
Les champs de ext-component-configuration
disponibles sont :
tous ces champs de prosody-configuration
: admins
,
use-libevent?
, modules-enabled
, modules-disabled
,
groups-file
, allow-registration?
, ssl
,
c2s-require-encryption?
, disable-sasl-mechanisms
,
s2s-require-encryption?
, s2s-secure-auth?
,
s2s-insecure-domains
, s2s-secure-domains
,
authentication
, log
, http-max-content-size
,
http-external-url
, raw-content
, plus :
ext-component-configuration
:string component-secret ¶Mot de passe que le composant utilisera pour s’authentifier.
ext-component-configuration
:string hostname ¶Nom d’hôte du composant.
prosody-configuration
:liste-d'entiers-non-négatifs component-ports ¶Ports sur lesquels Prosody écoutera les connexions des composants. La valeur par défaut est ‘(5347)’.
prosody-configuration
:string component-interface ¶Interface sur laquelle Prosody écoutera les connexions des composants. La valeur par défaut est ‘"127.0.0.1"’.
prosody-configuration
:peut-être-contenu-brut raw-content ¶Contenu brut qui sera ajouté au fichier de configuration.
Il se peut que vous ayez juste envie de lancer un fichier
prosody.cfg.lua
directement. Dans ce cas, vous pouvez passer un
enregistrement opaque-prosody-configuration
comme valeur à
prosody-service-type
. Comme son nom l’indique, une configuration
opaque n’a pas de capacités de réflexion simples. Les champs disponibles de
opaque-prosody-configuration
sont :
opaque-prosody-configuration
:package prosody ¶Le paquet prosody.
opaque-prosody-configuration
:string prosody.cfg.lua ¶Le contenu de prosody.cfg.lua
à utiliser.
Par exemple, si votre prosody.cfg.lua
est juste la chaîne vide, vous
pouvez instancier un service prosody comme ceci :
(service prosody-service-type
(opaque-prosody-configuration
(prosody.cfg.lua "")))
BitlBee est une passerelle qui fournit une interface IRC vers une variété de protocoles de messagerie instantanée comme XMPP.
C’est le type de service pour le démon de passerelle IRC
BitlBee. Sa valeur est un
bitlbee-configuration
(voir plus bas).
Pour que BitlBee écoute sur le port 6667 sur localhost, ajoutez cette ligne à vos services :
C’est la configuration de BitlBee, avec les champs suivants :
interface
(par défaut : "127.0.0.1"
)port
(par défaut : 6667
)Écoute sur l’interface réseau correspondant à l’adresse IP dans interface, sur port.
Lorsque interface vaut 127.0.0.1
, seuls les clients locaux
peuvent se connecter ; lorsqu’elle vaut 0.0.0.0
, les connexions
peuvent venir de n’importe quelle interface réseau.
bitlbee
(par défaut : bitlbee
)Le paquet BitlBee à utiliser.
plugins
(par défaut : '()
)Liste des paquets de greffons à utiliser — p. ex.
bitlbee-discord
.
extra-settings
(par défaut : ""
)Partie de configuration ajoutée telle-quelle au fichier de configuration de BitlBee.
Quassel est un client IRC distribué, ce qui signifie qu’un client ou plus peuvent s’attacher et se détacher du cœur central.
C’est le type de service pour le démon IRC
Quassel. Sa valeur est un
quassel-configuration
(voir plus bas).
C’est la configuration de Quassel, avec les champs suivants :
quassel
(par défaut : quassel
)Le paquet Quassel à utiliser.
interface
(par défaut : "::,0.0.0.0"
)port
(par défaut : 4242
)Écoute sur les interfaces réseau correspondant à l’adresse IPv4 ou IPv6 des interfaces spécifiées dans interface, une liste de chaînes délimitées par des virgules, sur port.
loglevel
(par défaut : "info"
)Le niveau de journalisation souhaité. Les valeurs acceptées sont « Debug », « Info », « Warning » et « Error ».
Suivant: Services de téléphonie, Précédent: Services de courriels, Monter: Services [Table des matières][Index]