FreeIPA (LDAP) + OpenVPN



  • Bonjour,

    Contexte : Mise en place de test

    Besoin : Me connecter au VPN grâce au LDAP de FreeIPA

    Je peux me connecter au VPN de manière simple , ceci n'est pas un problème, mais maintenant, j'aimerai avoir une gestion de compte centralisée de mes outils donc j'ai décidé de me lancer sur FreeIPA.

    J'ai eu un début de piste en suivant ce tuto :

    https://fattylewis.com/freeipa-openvpn-pfsense/

    Je vais vous procéder par étape :

    étape 1 :

    Création d'un groupe sur FreeIPA :

    0_1528180961902_1.png

    étape 2 :

    Ajout des membres dans le groupe VPN :
    0_1528181101684_6.png

    étape 3 :

    Ajout du certificat dans le CA de Pfsense

    0_1528181182186_7.png

    étape 4 :

    Configuration "System > User Manager >Authentication Servers"

    Partie 1 :
    0_1528181841899_Part1.png
    Partie 2 :
    0_1528181925292_Part2.png

    Dans Query : "memberOf=cn=vpn,cn=groups,cn=accounts,dc=connect,dc=peace,dc=fr"
    Dans Bind : "uid=admin,cn=users,cn=accounts,dc=connect,dc=peace,dc=fr" + le mdp de admin dans FreeIPA

    Pour le query, je me suis référer à une commande :
    "ldapsearch -x -h localhost -b "dc=connect, dc=peace, dc=fr""

    J'ai pris la ligne avec le groupe vpn

    pour l'iud :
    "ldapsearch -x -h localhost -b "dc=connect, dc=peace, dc=fr | grep uid""

    J'ai pris la ligne de admin

    Quand j'effectue un test d'authentification :

    Je mets le login de admin + mdp de FreeIPA :
    0_1528182069459_admin.png

    Logs et tests : dans Pfsense :

    “/diag_authentication.php: ERROR! ldap_backed() could not STARTTLS to server OpenVPN.”

    Screen de mes ports :
    (Port 636)
    0_1528182227146_ldap.png

    Port (389)
    0_1528182261228_ldap2.png

    Merci pour vos futurs réponses



  • ton baseDN pour les comptes est bizarre =< il ne correspond pas au DIT qui décrit les groupes...



  • J'ai pu trouvé la solution, il fallait activer le module d'authentification dans FreeIPA, vous pouvez clore le sujet !



  • Bonjour,

    je reviens sur le sujet, car j'aimerai éviter d'ouvrir des sujets pour rien.

    Comme dit dans mon posté précédent, j'ai réussi à me connecter au OpenVPN avec les comptes de FreeIPA (LDAP)

    Je peux vous apporter la solution

    Sur FreeIPA

    • Création groupe + ajout users

    Sur PFsense

    • Implémentation du CA (Advanced - Certmanager)
    • Configuration du LDAP (System - User Manager - Authentification Servers)

    Voici ma configuration (si vous voulez) :
    0_1528725360812_config ldap.png

    Donc maintenant, tout est ok, je peux me connecter au vpn avec les comptes de FreeIPA

    Maintenant, j'aimerai lié le ldap avec le portail captif de PFsense, quand je suis allé sur FreeRadius, il y avait la section LDAP, donc en soit, c'est possible.

    Après un week-end de test, modification, etc... sans succès.

    Configuration :
    0_1528725590178_config 2.png

    L'adresse de mon portail captif est : 192.168.30.254

    Config interface :
    0_1528725635972_config int.png

    Puis config NAS/CLIENT :

    0_1528725667553_config nas.png

    Ajout d'un utilisateur :

    0_1528725704291_ajout.png

    Donc j'effectue un test, en branchant un pc sur le port visiteur (192.168.30.254)
    je me connecte, tout fonctionne.

    à présent, je me dis que le portail fonctionne, je m'attaque au LDAP.

    Config LDAP FreeRadius :

    0_1528725932033_config ldap 2.png

    à présent quand je me connecte au portail avec des utilisateurs du groupe "GrandJean", aucun accès..

    Voila une recherche avec "ldapsearch -x -h localhost -b "dc=connect, dc=e-serenity, dc=fr"

    0_1528726022199_portail.png

    Au niveau des log de PFsense :

    Jun 11 16:09:06 php-fpm 316 /index.php: webConfigurator authentication error for 'jean' from 192.168.66.60

    J'espère avoir été assez clair dans ma démarche..

    Je pense que l'erreur peut provenir des configurations LDAP (N'étant pas un pro de LDAP)

    Surtout sur la partie "Base Filter" et "Filter" où je ne suis pas sûre..

    Peut être aurais-je oublier d'activer quelques choses dans PFsense?

    Cordialement,

    Nguyen



  • Bonjour,

    J'ai résolu pas mal de problème, cependant, il en reste 1 dernier..
    Le portail arrive bien à communiquer avec mon LDAP, car en allant sur le portail et en tapant mes logs, je reçois des trames sur mon serveur ldap.

    Cependant, il me dit "Invalid Crédentials specified" quand j'essaie de me logger.

    Les logs de PFSense
    "Jun 14 08:20:29 check_reload_status Reloading filter
    Jun 14 08:22:52 radiusd 99929 rlm_ldap (ldap): Opening additional connection (0), 1 of 2 pending slots used
    Jun 14 08:22:52 radiusd 99929 Need 1 more connections to reach min connections (2)
    Jun 14 08:22:52 radiusd 99929 rlm_ldap (ldap): Opening additional connection (1), 1 of 1 pending slots used
    Jun 14 08:22:52 radiusd 99929 (0) Login incorrect (Failed retrieving values required to evaluate condition): [randy.nguyen/mdp] (from client portail port 2222 cli 00-24-be-66-bd-38)

    "

    Au niveau du serveur ldap (/var/Log/dirsrv/slapd......./access)

    [14/Jun/2018:08:26:04.007943915 +0200] conn=1969 fd=119 slot=119 connection from 10.0.113.2 to 192.168.66.30
    [14/Jun/2018:08:26:04.008424518 +0200] conn=1969 op=0 BIND dn="uid=admin,cn=users,cn=accounts,dc=connect,dc=e-serenity,dc=fr" method=128 version=3
    [14/Jun/2018:08:26:04.009824503 +0200] conn=1969 op=0 RESULT err=0 tag=97 nentries=0 etime=0.0001815706 dn="uid=admin,cn=users,cn=accounts,dc=connect,dc=e-serenity,dc=fr"
    [14/Jun/2018:08:26:04.043873690 +0200] conn=1969 op=1 SRCH base="cn=users,cn=accounts,dc=connect,dc=e-serenity,dc=fr" scope=2 filter="(&(uid=randy.nguyen))" attrs="radiusauthtype radiussimultaneoususe radiuscalledstationid radiuscallingstationid lmpassword ntpassword sambaLMPassword sambaNTPassword dbcspwd userPassword acctflags radiusexpiration radiusnasipaddress radiusservicetype radiusframedprotocol radiusframedipaddress radiusframedipnetmask radiusframedroute radiusframedrouting radiusfilterid radiusframedmtu radiusframedcompression radiusloginiphost radiusloginservice radiuslogintcpport radiuscallbacknumber radiuscallbackid radiusframedipxnetwork radiusclass radiussessiontimeout radiusidletimeout radiusterminationaction radiusloginlatservice radiusloginlatnode radiusloginlatgroup radiusframedappletalklink radiusframedappletalknetwork radiusframedappletalkzone radiusportlimit radiusloginlatport radiusreplymessage radiustunneltype radiustunnelmediumtype radiustunnelprivategroupid radiuscontrolattribute radiusrequestattribute radiusreplyattribute"
    [14/Jun/2018:08:26:04.044930547 +0200] conn=1969 op=1 RESULT err=0 tag=101 nentries=1 etime=0.0001405252
    [14/Jun/2018:08:26:04.166541519 +0200] conn=1970 fd=129 slot=129 connection from 10.0.113.2 to 192.168.66.30
    [14/Jun/2018:08:26:04.166827485 +0200] conn=1970 op=0 BIND dn="uid=admin,cn=users,cn=accounts,dc=connect,dc=e-serenity,dc=fr" method=128 version=3
    [14/Jun/2018:08:26:04.167635995 +0200] conn=1970 op=0 RESULT err=0 tag=97 nentries=0 etime=0.0001028495 dn="uid=admin,cn=users,cn=accounts,dc=connect,dc=e-serenity,dc=fr"

    Au niveau des configurations LDAP du portail :

    0_1528957827728_ldap c.png

    Merci de vos futures réponses !