You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2024-03-19 17:03:56

Emile
Member
Registered: 2024-03-19
Posts: 4

[RESOLU] Configuration dossier racine serveur web et SSO(kerberos)

Bonjour,

Je viens chercher une idée de solution concernant le nouveau point de sécurité "La configuration du dossier racine du serveur web n'est pas sécurisée car elle permet l'accès à des fichiers non publics".

Je viens de passer à la version 10.0.11 de GLPI (sur debian), tout fonctionne correctement et il me reste cette partie à faire. Avec la documentation et les différents forums, j'ai réussi à configurer comme indiqué le dossier racine. Mais voilà mon problème : la configuration fonctionne aussi avec une authentification SSO (kerberos dans mon cas), et je ne parviens pas à faire faire marcher kerberos en respectant la configuration sécurisé du dossier racine.

J'ai essayer de bidouiller (étant pas un grand expert du sujet) la configuration Apache en mixant la configuration à rajouter et celle de kerberos mais à chaque fois, l'authentification kerberos ne fonctionne plus.

Je poste donc ce message en espérant que quelqu'un aurait une idée ou exemple pour faire fonctionner kerberos et pouvoir avoir la configuration sécurisé du dossier racine.

Merci d'avance

Last edited by Emile (Yesterday 10:52:44)

Offline

#2 2024-04-23 12:56:53

AdrienL
Member
Registered: 2015-11-16
Posts: 22

Re: [RESOLU] Configuration dossier racine serveur web et SSO(kerberos)

Hello,

Pour ma part je suis sur Ubuntu server 22.04, j'ai réussi à faire fonctionner en HTTPS avec certificat mais impossible pour le SSO...
J'utilise GSSAPI et tester beaucoup de config mais rien n'y fait, j'ai toujours la fenêtre "pop-up" qui demande de m'authentifier.
J'aussi généré un keytab en HTTPS/ sur mon serveur AD.

Qu'as-tu utiliser pour ta config SSO ?

Offline

#3 2024-04-24 14:27:15

Emile
Member
Registered: 2024-03-19
Posts: 4

Re: [RESOLU] Configuration dossier racine serveur web et SSO(kerberos)

AdrienL wrote:

faire fonctionner en HTTPS avec certificat

Mon site GLPI est en http donc je ne sais pas si c'est différent pour fonctionner avec un SSO.
Alors je m'y connais peu, j'ai juste fait des recherches sur mon problème et dans mes fichiers de config et voici tout ce que j'ai pu trouver à propos de la config active du serveur :

La partie dans apache2.conf

<Directory /var/www/html/glpi>
           AuthName "CLIENT GLPI Authentification"
           AuthType Kerberos 
          # BrowserMatch Windows gssapi-no-negotiate
           KrbAuthRealms NOM_DOMAINE
           KrbServiceName HTTP
           Krb5Keytab /etc/apache2/nom_fichier.keytab
           KrbLocalUserMapping on
           KrbMethodNegotiate on
           KrbMethodK5Passwd on
           KrbAuthoritative on
           Require valid-user
           Allow from X.X.X.X
           Allow from X.X.X.X
           Allow from X.X.X.X
           Allow from X.X.X.X
           Allow from X.X.X.X
           Allow from X.X.X.X
	   Allow from X.X.X.X
           Allow from X.X.X.X
           Satisfy All
</Directory>

La partie (avec les lignes potentiellement utiles) de krb5.conf (fichier kerberos de config):

[libdefaults]
	default_realm = NOM_DOMAINE

...

[realms]

    NOM_DOMAINE = {
                      admin_server = adresse_serveur_AD
                      kdc          = adresse_serveur_AD
                      auth_to_local = DEFAULT
                 }

...

[domain_realm]

  .NOM_DOMAINE = NOM_DOMAINE
   NOM_DOMAINE = NOM_DOMAINE
  .nom_domaine = NOM_DOMAINE
   nom_domaine = NOM_DOMAINE
AdrienL wrote:

la fenêtre "pop-up"

Je sais qu'elle est déjà survenu (pour je ne sais quel raison précise : peut être d'avoir vider le cache du navigateur, modifier la config d'apache2, ...) mais c'est rare. Je rentrais alors les identifiants à la main 2 fois de suite (oui 2 fois je ne saurais pourquoi) et ensuite j'accédais au site et je pouvais me déconnecter et retaper l'adresse et là kerberos fonctionne.

*********************************

Sinon grâce à ta question, je me suis repencher sur le problème en réalisant que j'avais pas compris réellement quelle config permet à mon site de tourner.
J'ai mis en commentaire la majorité du code possible afin de voir quels éléments sont indispensables, et je me suis rendu compte que les fichiers se trouvant dans /etc/apache2/sites-enabled n'étaient pas utilisés par le service apache2.
Mon prédécesseur avait mis une config avec les paramètres lié au site GLPI mais finalement cette partie n'est pas utilisé.
J'ai donc mis en commentaire le code non nécessaire du vrai fichier de config apache2.conf dont toutes les parties contenant <Directory /var/www/html.. > (et notamment la partie kerberos)

Je me demande du coup comment apache2 sait que le dossier racine du site est /var/www/html (sachant que mon site tourne toujours) avec dans ce répertoire un index.html redirigeant l'adresse vers http://ip_serveur/glpi

On dérive un peu sur mon problème initial mais je pense que comprendre ça pourrait m'aider à résoudre ce problème. Sachant qu'il faut que je redirige du coup sur le dossier public pour la configuration sécurisé du dossier racine indiqué dans les nouvelles normes de sécurité de la v10 de GLPI.

Last edited by Emile (2024-04-24 14:33:08)

Offline

#4 2024-04-29 12:42:10

Emile
Member
Registered: 2024-03-19
Posts: 4

Re: [RESOLU] Configuration dossier racine serveur web et SSO(kerberos)

Bon depuis, je suis passer en HTTPS (sur un serveur test), j'ai continué de chercher et trifouiller ma config mais rien n'y fait.

<VirtualHost *:443>
    ServerName adresse_serveur
    ServerAdmin adminglpi@localhost
    DocumentRoot /var/www/html/glpi/public

    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/glpi.crt
    SSLCertificateKeyFile /etc/apache2/ssl/glpi.key

    Alias "/glpi" "/var/www/html/glpi/public"

    <Directory /var/www/html/glpi/public>
	AuthName "CLIENT GLPI Authentification"
        AuthType Kerberos 
        KrbAuthRealms NOM_DOMAINE
        KrbServiceName HTTP
        Krb5Keytab /etc/apache2/glpi.keytab
        KrbLocalUserMapping on
        KrbMethodNegotiate on
        KrbMethodK5Passwd on
        KrbAuthoritative on
        Require valid-user
        Allow from X.X.X.X
        Allow from X.X.X.X
        Allow from X.X.X.X
        Allow from X.X.X.X
        Allow from X.X.X.X
        Allow from X.X.X.X
	Allow from X.X.X.X
        Allow from X.X.X.X
        Satisfy All

	Require all granted
	RewriteEngine On
	RewriteCond %{REQUEST_FILENAME} !-f
	RewriteRule ^(.*)$ index.php [QSA,L]
    </Directory>

    <Directory /var/www/html/glpi/plugins/glpiinventory>
        Require all granted
    </Directory>

</VirtualHost>

Si quelqu'un aurait une idée de que ce j'ai mal fait !

Last edited by Emile (2024-04-29 12:49:09)

Offline

#5 Yesterday 10:51:30

Emile
Member
Registered: 2024-03-19
Posts: 4

Re: [RESOLU] Configuration dossier racine serveur web et SSO(kerberos)

Avec énormément de tentative, j'ai par miracle réussi à faire fonctionner mon SSO tout en ayant la configuration du dossier racine sécurisé.

Voici au final ce que j'ai :

<VirtualHost *:443>
    ServerName adresse_serveur
    ServerAdmin adminglpi@localhost
    DocumentRoot /var/www/html/glpi/public

    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/glpi.crt
    SSLCertificateKeyFile /etc/apache2/ssl/glpi.key

    <Directory /var/www/html/glpi/public>
        Options FollowSymLinks
        AllowOverride None
        Require all granted

        RewriteEngine On
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule ^(.*)$ index.php [QSA,L]
    </Directory>

    Alias "/glpi" "/var/www/html/glpi/public"
    
    <Directory /var/www/html/glpi/public>
        AuthName "CLIENT GLPI Authentification"
        AuthType Kerberos 
        KrbAuthRealms NOM_DOMAINE
        KrbServiceName HTTP
        Krb5Keytab /etc/apache2/glpi.keytab
        KrbLocalUserMapping on
        KrbMethodNegotiate on
        KrbMethodK5Passwd on
        KrbAuthoritative on
        Require valid-user
        Allow from X.X.X.X
        Allow from X.X.X.X
        Allow from X.X.X.X
        Allow from X.X.X.X
        Allow from X.X.X.X
        Allow from X.X.X.X
        Allow from X.X.X.X
        Allow from X.X.X.X
        Satisfy All
    </Directory>

    <Directory /var/www/html/glpi/plugins/glpiinventory>
        Require all granted
    </Directory>

</VirtualHost>

Je passe donc en résolu ce sujet mais je reste preneur d'explication si quelqu'un comprend et saurai pourquoi il fallait faire cela.

Last edited by Emile (Yesterday 10:53:19)

Offline

Board footer

Powered by FluxBB