IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PostgreSQL Discussion :

redirection de port


Sujet :

PostgreSQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 50
    Points : 23
    Points
    23
    Par défaut redirection de port
    Bonjour,
    j'ai une application web java hébergé sur un linux. la base postgresql est sur le même serveur linux.
    cette appli utilise des pool de connexions.
    cette appli fonctionne tres bien sous windows et sous d'autres serveur linux.
    mais sur ce linux (debian) la connexion à la base échoue.

    j'ai pisté le problème et j'ai découvert le fichier postgresql.log qui à chaque tentative de connexion à la base ajoute les lignes suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    2007-01-30 09:11:12 [15860] TRACE:  Connexion reçue : hôte=127.0.0.1 port=37633
    2007-01-30 09:11:12 [15860] FATAL:  Password authentication échouée pour l'util$
    et à chaque nouvelle tentative de connexion à la base 2 nouvelles lignes s'ajoutent mais à chaque fois le numéro de port change.

    or mon postgresql est configuré pour écouter le port par défaut.

    comment se fait il que le numéro de port change sans arrêt ? il y a t'il une appli susceptible de faire une redirection de la reqûete ?

    merci de vos idées.

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 936
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 936
    Points : 4 356
    Points
    4 356
    Par défaut
    Citation Envoyé par javaweb44
    Bonjour,
    j'ai une application web java hébergé sur un linux. la base postgresql est sur le même serveur linux.
    cette appli utilise des pool de connexions.
    cette appli fonctionne tres bien sous windows et sous d'autres serveur linux.
    mais sur ce linux (debian) la connexion à la base échoue.

    j'ai pisté le problème et j'ai découvert le fichier postgresql.log qui à chaque tentative de connexion à la base ajoute les lignes suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    2007-01-30 09:11:12 [15860] TRACE:  Connexion reçue : hôte=127.0.0.1 port=37633
    2007-01-30 09:11:12 [15860] FATAL:  Password authentication échouée pour l'util$
    et à chaque nouvelle tentative de connexion à la base 2 nouvelles lignes s'ajoutent mais à chaque fois le numéro de port change.

    or mon postgresql est configuré pour écouter le port par défaut.

    comment se fait il que le numéro de port change sans arrêt ? il y a t'il une appli susceptible de faire une redirection de la reqûete ?

    merci de vos idées.
    c'est le port du client qui est affiché dans le log… pas celui du serveur…

    vérifiez le fichier pg_hba.conf et la table système pg_users… (est-ce que l'utilisateur est prévu pour se connecter à partir de localhost, l'utilisateur existe-t-il dans pg_hba.conf et dans la table pg_users, le mot de passe est-il correct…)

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 50
    Points : 23
    Points
    23
    Par défaut
    merci j'avais pas compris que le port qui changait n'était pas celui du serveur.

    quand je fais :
    ./psql -h localhost -U postgres
    je tape mon mot de passe "postgres"
    il me met "authentifiication échouée pour l'utilisateur postgres"

    quand je fais
    ./psql -U postgres
    je tape mon mot de passe "postgres"
    ca fonctionne

    or mon appli web se connecte en localhost donc c'est pour ca que ca ne fonctionne pas.

    j'essaye donc de créer un nouveau utilisateur sur le host localhost
    ./createuser -h localhost -W
    il me met "password authentifiication échouée pour l'utilisateur root"

    j'essaye alors de créer un nouveau utilisateur sur le host localhost en tant que postgres
    ./createuser -h localhost -U postgres -W
    il me met "password authentifiication échouée pour l'utilisateur postgres"

    je n'arrive pas à créer un untilisateur qui aurait tous les droits sur le host localhost

    une idée ?

  4. #4
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 936
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 936
    Points : 4 356
    Points
    4 356
    Par défaut
    Citation Envoyé par javaweb44
    merci j'avais pas compris que le port qui changait n'était pas celui du serveur.

    quand je fais :
    ./psql -h localhost -U postgres
    je tape mon mot de passe "postgres"
    il me met "authentifiication échouée pour l'utilisateur postgres"

    quand je fais
    ./psql -U postgres
    je tape mon mot de passe "postgres"
    ca fonctionne

    or mon appli web se connecte en localhost donc c'est pour ca que ca ne fonctionne pas.

    j'essaye donc de créer un nouveau utilisateur sur le host localhost
    ./createuser -h localhost -W
    il me met "password authentifiication échouée pour l'utilisateur root"

    j'essaye alors de créer un nouveau utilisateur sur le host localhost en tant que postgres
    ./createuser -h localhost -U postgres -W
    il me met "password authentifiication échouée pour l'utilisateur postgres"

    je n'arrive pas à créer un untilisateur qui aurait tous les droits sur le host localhost

    une idée ?
    c'est un problème lié au contenu de votre fichier pg_hba.conf et à la façon dont votre système résoud le nom "localhost"…

    dans pg_hba.conf, vous devez spécifier les adresses IP ou nom de domaines à partir desquels les utilisateurs peuvent se connecter…

    par exemple si votre OS résoud "localhost" en "127.0.0.1" mais que vous avez mis "localhost" dans pg_hba.conf au lieu de "127.0.0.1" cela ne fonctionne pas…
    vous pouvez le savoir rapidement en essayant les commandes avec "-h 127.0.0.1"…

    et n'oubliez pas de notifier le serveur de recharger pg_hba.conf si vous le modifiez… (reload ou SIGHUP…)

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 50
    Points : 23
    Points
    23
    Par défaut
    voici mon pg_hba.conf
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    # All IPv4 connections from localhost
    host    all         all         127.0.0.1         255.255.255.255   password
    host    all         all         192.168.16.242    255.255.255.0     password
    host    all         all         192.168.3.225     255.255.255.0     password
    #
    #
    #
    # All IPv6 localhost connections
    host    all         all         ::1               ffff:ffff:ffff:ffff:ffff:fff$
    host    all         all         ::ffff:127.0.0.1/128                password
    #
    # reject all other connection attempts
    host    all         all         0.0.0.0           0.0.0.0           reject
    quand j'utilise 127.0.0.1 ca ne marche pas non plus
    ./psql -h 127.0.0.1-U postgres
    il me met "authentifiication échouée pour l'utilisateur postgres"

    je sèche ....

  6. #6
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 936
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 936
    Points : 4 356
    Points
    4 356
    Par défaut
    Citation Envoyé par javaweb44
    voici mon pg_hba.conf

    quand j'utilise 127.0.0.1 ca ne marche pas non plus
    ./psql -h 127.0.0.1-U postgres
    il me met "authentifiication échouée pour l'utilisateur postgres"

    je sèche ....

    et quand vous essayez avec l'adresse IP réelle de la machine ?
    (par ex. 192.168.x.y)

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 50
    Points : 23
    Points
    23
    Par défaut
    avec l'adresse ip de la machine c'est le même problème ...

  8. #8
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 936
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 936
    Points : 4 356
    Points
    4 356
    Par défaut
    Citation Envoyé par javaweb44
    avec l'adresse ip de la machine c'est le même problème ...
    ce qui est curieux est que vous vous connectiez avec
    psql -U postgres

    car normalement vous devriez avoir une erreur
    "psql: FATAL: database "postgres" does not exist"
    à moins que vous ayez créé un DB qui se nomme postgres…

    y-a-t-il un fichier .psqlrc ?
    les variables $PG_HOST and C° sont-elles définies ?
    et si oui quelles sont les valeurs ?

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 50
    Points : 23
    Points
    23
    Par défaut
    bien vu
    mille excuses, évidemment je tape ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ./psql -h 127.0.0.1-U postgres database
    avec postgres comme utilisateur
    et database ma base de donnée


    concernant le fichier .psqlrc je suis rentré chez moi je vérifierais demain matin
    merci

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 50
    Points : 23
    Points
    23
    Par défaut
    Bonjour,

    non je n'ai pas de fichier .psqlrc !!!

    il y a un truc que je comprends pas :
    1)
    ./psql -h 127.0.0.1-U postgres DATABASE
    2)
    ./psql -h -U postgres DATABASE


    Pourquoi le 1 ne marche pas et le 2 fonctionne

    ca veut dire pour le 2 que postgres n'utilise pas tcp/ip ?
    c'est quoi la différence entre les 2 ?

    merci

  11. #11
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 936
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 936
    Points : 4 356
    Points
    4 356
    Par défaut
    Citation Envoyé par javaweb44
    Bonjour,

    non je n'ai pas de fichier .psqlrc !!!

    il y a un truc que je comprends pas :
    1)
    ./psql -h 127.0.0.1-U postgres DATABASE
    2)
    ./psql -h -U postgres DATABASE


    Pourquoi le 1 ne marche pas et le 2 fonctionne

    ca veut dire pour le 2 que postgres n'utilise pas tcp/ip ?
    c'est quoi la différence entre les 2 ?

    merci
    ne me dites pas que vous avez démarré le serveur SANS l'option -i ?

    si c'est le cas évidemment tout s'explique… l'accès ne se fait alors que par le socket Unix, pas par le réseau…

Discussions similaires

  1. ssh,vnc et redirection de port
    Par dékaf dans le forum Serveurs (Apache, IIS,...)
    Réponses: 2
    Dernier message: 16/05/2006, 17h25
  2. [IIS]Redirection de ports
    Par cach dans le forum IIS
    Réponses: 3
    Dernier message: 26/04/2006, 10h58
  3. [dmz]redirection de port a l'aide d'un proxy
    Par hansaplast dans le forum Hardware
    Réponses: 3
    Dernier message: 05/04/2006, 16h13
  4. [Apache2] redirection du port 80 vers le port 443
    Par Charly94 dans le forum Apache
    Réponses: 2
    Dernier message: 18/02/2006, 13h10
  5. Redirection de port routeur (forward)
    Par Fabouney dans le forum Hardware
    Réponses: 6
    Dernier message: 29/09/2005, 08h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo