#1 Fri 13 December 2013 10:23
- kevindescamps
- Participant occasionnel
- Lieu: Grenoble
- Date d'inscription: 20 Nov 2013
- Messages: 34
postgreSQL / PostGIS pg_hba.conf ssl + gssapi
Bonjour,
Je tente de configurer mon pg_hba.conf mais sans succès. Pour le moment le paramètre "listen_adresses" dans postgresql.conf est paramétrer sur "*".
Ensuite, j'aimerai utiliser la sécurité ssl pour mes connexions. J'aimerai également mapper les utilisateurs de mon annuaire ldap via la méthode d'authentification gssapi. Si je crée un rôle identique au login/mdp windows cela devrait fonctionner non? Ou faut-il configurer le pg_ident?
Dans pgadmin, j'ai essayé les configurations suivantes avec la méthode d'authentification "gss" :
hostssl all all 172.**.*.***/23 ldap
host all all 172.**.*.***/23 ldap
host all all 127.0.0.1/32 ldap
Problème : "Error connecting to the server : FATAL : n'a pu charger pg_hba.conf"
Que faut-il faire?
Hors ligne
#2 Fri 13 December 2013 14:49
- ppluvinet
- Participant assidu
- Lieu: VALENCE
- Date d'inscription: 6 Aug 2007
- Messages: 617
Re: postgreSQL / PostGIS pg_hba.conf ssl + gssapi
Bonjour,
si vous ne trouvez pas de réponse avec les utilisateurs de Georezo, vous pouvez toujours essayer ici
http://forums.postgresql.fr/
Pascal PLUVINET
Hors ligne
#3 Fri 13 December 2013 15:23
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: postgreSQL / PostGIS pg_hba.conf ssl + gssapi
Bonjour,
Attention, pour une authentification GSSAPI, il faut preciser la methode GSS, pas LDAP.
Le mapping automatique d'une user ldap vers PG n'est pas possible d'après ce que je comprends:
Il faut créer un user PG pour chaque user LDAP, ou bien utiliser un seul role coté PG et mapper ce role sur n utilisateurs LDAP grace au fichier pg_ident.
Pour GSSAPI, c'est la même chose: PG peut récupérer les credentials Kerberos de l'utilisateur loggé sur le système et interroger le serveur Kerberos pour savoir si ce user à les droits sur le service Postgresql. Il faut que le user Postgresql existe et corresponde au user système, ou alors définir un mapping dans pg_ident.
Cela une demande une configuration de la partie GSSAPI/Kerberos et ca peut se reveler difficile, de mon expérience.
Sinon, je vous conseille de faire cela en deux étapes: tester d'abord le mode SSL avec une authentification "classique" TRUST ou MD5, puis ajouter la partie LDAP ou GSS ensuite, voire tester le LDAP sans SSL dans un premier temps.
Il faut que le serveur ait ete compilé avec l'option SSL et que le mode SSL soit à on dans le fichier postgresql.conf (en plus des autres paramètres SSL à configurer).
Nicolas
Hors ligne
#4 Fri 13 December 2013 15:35
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: postgreSQL / PostGIS pg_hba.conf ssl + gssapi
Votre fichier pg_hba.conf contient bien des valeurs a la place des * ?
Les masques devraient etre des puissances de 2, non ? style 10.0.1.0/24 pour ouvrir tout le sous reseau 10.0.1
Nicolas
Hors ligne
#5 Fri 13 December 2013 15:39
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: postgreSQL / PostGIS pg_hba.conf ssl + gssapi
Vos serveurs PG et kerberos/LDAP sont sous quel OS ?
Nicolas
Hors ligne
#6 Fri 13 December 2013 15:53
- kevindescamps
- Participant occasionnel
- Lieu: Grenoble
- Date d'inscription: 20 Nov 2013
- Messages: 34
Re: postgreSQL / PostGIS pg_hba.conf ssl + gssapi
L'inscription sur le forum "http://forums.postgresql.fr/" n'est pas possible actuellement.
Je n'ai pas encore testé le ssl, j'ai commencé à compiler avec openssl mais je n'ai pas réussi à créer les certificats clients root.crt et root.crl...
Je trouve la doc postgre trop complexe et peu détaillée sur ces sujets. Ni de doc précise sur openssl. Avez-vous des suggestions de tutos?
Je vais essayer pour ldap..
Merci
Hors ligne
#7 Fri 13 December 2013 16:04
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: postgreSQL / PostGIS pg_hba.conf ssl + gssapi
La plupart des versions binaires de PG récentes ont le support SSL activé il me semble.
Il suffit juste de configurer SSL=ON dans postgresql.conf.
Ensuite, avec OpenSSL, il faut générer les certificats pour le serveur PG comme précisé dans la doc, histoire d'avoir des certificats locaux.
Sinon, pour encrypter les connexions entre les clients et le serveur PG, vous pouvez passer par un tunnel SSH (windows, mac, linux compatible) comme indiqué ici:
http://www.postgresql.org/docs/9.2/stat … nnels.html
C'est vraiment très facile a mettre en place: vous disposez alors d'un port virtuel sur le client pour vous connecter au serveur. SSH se charge de l'encryption du trafic.
Nicolas
Hors ligne
#8 Fri 13 December 2013 16:25
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: postgreSQL / PostGIS pg_hba.conf ssl + gssapi
Vous pouvez nous decrire l'architecture du systeme (OS, versions de PG, etc.) ?
Merci
Hors ligne
#9 Mon 16 December 2013 11:51
- kevindescamps
- Participant occasionnel
- Lieu: Grenoble
- Date d'inscription: 20 Nov 2013
- Messages: 34
Re: postgreSQL / PostGIS pg_hba.conf ssl + gssapi
Merci pour ces réponses et explications.
Nous avons créé un nouveau serveur virtuel sous Windows pour implanter notre base de données.
Je dispose des versions suivantes : postgreSQL 9.3 + PostGIS 2.1.1
Kevin
Hors ligne
#10 Mon 16 December 2013 12:27
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: postgreSQL / PostGIS pg_hba.conf ssl + gssapi
Bonjour,
Merci pour ces informations.
Y aura-t-il des clients autres que Windows se connectant sur le serveur ? (Linux, Mac, Unix...)
Sinon, vous pouvez configurer le mode d'authentification SSPI: il se base sur les API Single Sign On de Windows et marche dans les deux modes d'authentification: Kerberos pour des infra windows sur ActiveDirectory ou NTLM.
J'ai testé rapidement et ca se met en place de façon aisée:
• mode SSPI dans pg_hba.conf
• Reload du serveur PG
S'il existe un user PG qui a le meme nom que le user Windows, la connexion a PG se fait alors automatiquement si le user est loggé sous Windows.
Il est également aisé de définir un mapping entre un ou plusieurs users windows et un user PG.
Nicolas
Hors ligne
#11 Mon 16 December 2013 18:06
- kevindescamps
- Participant occasionnel
- Lieu: Grenoble
- Date d'inscription: 20 Nov 2013
- Messages: 34
Re: postgreSQL / PostGIS pg_hba.conf ssl + gssapi
Bonjour,
Nous n'avons pas d'autres clients que windows en ce qui concerne l'utilisation de la base de données.
j'ai testé l'authentification SSPI, et ça marche très bien sous PostGIS.
Par contre, cette méthode semble incompatible avec notre interface SIG Geomedia... Je vais poster demain un message dans le forum associé à Geomedia.
Je viens de remarquer que je n'ai pas répondu à un de vos posts :
"Votre fichier pg_hba.conf contient bien des valeurs a la place des * ?
Les masques devraient etre des puissances de 2, non ? style 10.0.1.0/24 pour ouvrir tout le sous reseau 10.0.1"
Concernant le masque des adresses ip, il est bien de "23" j'ai demandé confirmation à l'adminstrateur réseau. Au final, j'ai choisi de ne pas m'attarder sur l'authorisation ip et j'ai mis "*" dans "listen_adresses". Pour le fichier pg_hba j'ai donc mis l'ip "::1/128" pour mon user test.
"host all username ::1/128 sspi"
Cela fonctionne.
Le problème c'est que mon ip est dynamique donc je ne peux me connecter sur mon ip.
Pour rebondir sur une des phrases de votre premier post (cf "Attention, pour une authentification GSSAPI, il faut preciser la methode GSS, pas LDAP."),
la liste déroulante bug !! Quand je choisi la méthode "gss" dans mon menu déroulant, le pg_hba m'affiche "ldap" dans la ligne correspondante. Il y a une sorte de décalage :
Quand je choisi "trust" cela m'affiche "trust"
Quand je choisi "reject" cela m'affiche "reject"
Quand je choisi "md5" cela m'affiche "md5"
Quand je choisi "password" cela m'affiche "crypt"
Quand je choisi "krb4" cela m'affiche "password"
Quand je choisi "krb5" cela m'affiche "krb4"
Quand je choisi "ident" cela m'affiche "krb5"
Quand je choisi "pam" cela m'affiche "ident"
Quand je choisi "ldap" cela m'affiche "pam"
Quand je choisi "gss" cela m'affiche "ldap"
Quand je choisi "sspi" cela m'affiche "gss"
Quand je choisi "cert" cela m'affiche "sspi"
etc...
j'imagine que l'information affiché dans le pg_hba est la plus fiable? J'ai choisi "cert" pour que cela m'affiche "sspi" dans le pg_hba.conf....
Hors ligne
#12 Mon 16 December 2013 18:53
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: postgreSQL / PostGIS pg_hba.conf ssl + gssapi
Bonsoir,
La liste déroulante de PgAdmin III ?
Le plus sûr est de controler le contenu du fichier une fois que PGAdmin a fini de l'éditer, pour être sûr.
Vous avez quelle version de pgAdmin ? La plus récente est la 1.18.1
Nicolas
Hors ligne
#13 Tue 17 December 2013 09:12
- kevindescamps
- Participant occasionnel
- Lieu: Grenoble
- Date d'inscription: 20 Nov 2013
- Messages: 34
Re: postgreSQL / PostGIS pg_hba.conf ssl + gssapi
Oui exact il s'agit de la liste déroulante de pgadmin III. J'utilise la dernière version 1.18.1.
Hors ligne