Comment puis-je configurer un serveur IRC supporté par LDAP?
À l'heure actuelle, je cherche à créer un serveur IRC qui s'appuie sur une instance OpenLDAP ou 389 pour l'authentification de l'utilisateur.
Quel IRCD devrais-je utiliser?
De préférence, il devrait pouvoir consulter les groupes LDAP des utilisateurs et décider s’ils peuvent être oppés, exprimés ou même autorisés à rejoindre un canal.
Votre question nécessite de nombreuses explications, je vais donc résumer ma réponse:
Vous devez d’abord utiliser Inspircd v2.0.15 car sa stabilité, ses performances élevées et le plus important pour votre utilisation sont marqués comme Prise en charge de LDAP Lien .
D'abord:
Vous devriez éditer votre fichier/etc/hosts:
YouserverIp hostname.example.com hostname
Seconde:
Installez OpenLdap:
Sudo apt-get install slapd ldap-utils
pendant l'installation, tapez simplement votre mot de passe administrateur LDAP.
Troisième:
Installez Apache2: apt-get install Apache2
Quatrième:
Installez phpldapAdmin: phpLDAPadmin (également appelé PLA) est un client LDAP basé sur le Web. Il fournit une administration multilingue simple et accessible en tout lieu pour votre serveur LDAP.
Sudo apt-get install phpldapadmin
(c'est pourquoi j'ai installé Apache2, son outil Web)
Vous avez maintenant deux étapes:
modifier
/etc/ldap/ldap.conf
ajouter: modifier
BASE dc=yourdomain,dc=com
URI ldap://Your Ip Address
puis: edit /etc/phpldapadmin/config.php
Il suffit de modifier votre adresse IP et votre nom de domaine.
Ouvrez votre navigateur:
votreIp/phpldapadmin
Entrez votre mot de passe administrateur que vous tapez lors de l'installation de sldap.
Maintenant, vous vous connectez à la base de données LDAP. sélectionnez le domaine ----> à droite, ajoutez Generic Posix Group ---->, puis sélectionnez le groupe et créez une entrée enfant, ajoutez des comptes d'utilisateurs génériques à tester.
Plus d'aide pour utiliser phpldapadmin Here
Cinquième:
Maintenant son heure de configurer inspirircd:
edit: /etc/inspircd/inspircd.conf
vous devez charger le module ldapauth et pointer vers votre serveur LDAP,
<module name="m_ldapauth.so">
<ldapauth baserdn="cn=test,dc=domain,dc=com"
attribute="uid"
server="ldap://yourIp or domainname"
allowpattern="Guest*"
killreason="Access denied"
searchscope="subtree"
binddn=""
bindauth=""
verbose="yes"
userfield="yes" >
Vous devez également ajouter votre nom de serveur irc, votre nom d’administrateur et une autre option dans
/etc/inspircd/inspircd.conf
Ce tutoriel vous aiderait: Tutorial
Last:
Redémarrez slapd, inspircd et essayez de vous connecter avec les utilisateurs que vous avez créés.
Remarque changez selon les besoins, cette configuration irc et ldap sont les mêmes serveurs.
J'espère que cela vous aidera car je ne pense pas qu'il existe un document officiel aussi simple que le mien.
Si vous voulez vraiment que l'IRCd fasse l'authentification, je suggérerais InspIRCd .
Il a un module ldapauth, mais vous devez le compiler vous-même avec
./configure --enable-extras=m_ldap.cpp
make
make install
Un exemple de configuration d'utilisation de LDAP se trouve dans un exemple de fichier de configuration .
Notez que ce module est expérimental. Et le fichier de configuration (et le code source) est toute la documentation que vous obtenez pour ce module.
Edit: Après avoir lu un peu du code, je vais essayer d’expliquer comment cela fonctionne:
Si une étape échoue, l'utilisateur est déconnecté du réseau/serveur. J'espère que c'est ce dont vous avez besoin (les utilisateurs non authentifiés ne peuvent pas se connecter).
Pour la configuration, il existe un concept de base de données. LDAP est utilisé ici comme une base de données. Vous devez d’abord définir la base de données (serveur LDAP, informations d’identité du serveur LDAP, etc.), puis l’utiliser ultérieurement pour un ou plusieurs objectifs, par exemple. authentification utilisateur, authentification oper ...
Ou simplement: les valeurs par défaut sont manifestement incorrectes ou correctes.
Edit : Ce que vous voulez est dans le domaine des IRC services. Bien qu'InspIRCd puisse fournir des services de base, vous devez écrire votre propre code pour le faire fonctionner à votre guise.
Vous n'avez pas spécifié le code IRCd à utiliser et vous l'avez réellement demandé.
Alors; Voici un exemple de configuration LDAP avec InspIRCd .
Pour une liste complète des IRCd; vous pouvez jeter un oeil à ceci Comparaison des démons Internet Relay Chat dans lequel tous -excepté deux, supporte Linux.
et enfin dans ce Table ; vous pouvez trouver celui qui prend en charge l’authentification LDAP.
Souhait qui vous aide dans votre décision.