Comment configurer PostgreSQL pour permettre des connexions distantes

Comment configurer PostgreSQL pour permettre des connexions distantes

Une base de données relationnelle open-source et basée sur des objets PostgreSQL, fournit à l'utilisateur l'implémentation de SQL et est généralement hébergé sur Linux. Avec PostgreSQL, les utilisateurs peuvent étendre le système en définissant les types, fonctions et opérateurs d'auto-données.

PostgreSQL est utilisé par de nombreuses grandes entreprises pour enregistrer et stocker leurs données pour diverses applications et elle prend en charge diverses interfaces de programmation ainsi que des vidéos, des textes et des images. Dans cet article, nous allons d'abord passer par l'installation de PostgreSQL sur Ubuntu 20.04 Alors nous le configurerons pour autoriser la connexion distante

Préalables

Cet article suppose que vous avez déjà exécuté un serveur postgresql sur votre système. Sinon, utilisez l'un des liens ci-dessous pour installer le serveur de base de données PostgreSQL sur votre système.

  1. Installation de PostgreSQL sur Ubuntu 20.04
  2. Installation de PostgreSQL sur Centos 8

Trouver le fichier de configuration

Afin d'installer PostgreSQL sur notre système, nous devons mettre à jour notre référentiel et pour cela, exécutez la commande ci-dessous:

sudo -u postgres psql -c "show config_file;"  
Sortie: config_file ----------------------------------------- / etc / postgresql / 13 / Main / PostgreSQL.conf (1 ligne) 

Vous devez modifier l'adresse d'écoute dans le postgresql.confli Fichier de configuration affiché dans la sortie de la commande. De plus, vous devez modifier «pg_hba.conf ”dans le même répertoire pour permettre un accès à distance.

Configurer PostgreSQL pour permettre des connexions distantes

Afin de permettre à toutes les adresses IP de se connecter au serveur PostgreSQL, nous devons configurer le fichier et apporter quelques modifications, car vous avez localisé le fichier de configuration à l'étape précédente.

  1. Configuration postgresql.confli:
  2. Nous devons maintenant ouvrir le fichier et apporter quelques modifications afin de permettre une connexion distante. Pour ouvrir le fichier, vous utilisez le mot-clé «nano» ou vous pouvez exécuter la commande dans le terminal fourni ci-dessous:

    sudo nano / etc / postgresql / 13 / main / postgresql.confli  

    Cette commande ouvrira ce fichier et vous devez rechercher "Écouter_address" et ajouter la ligne suivante.

    #Listen_Address = 'localhost' écouter_address = '*' 
    Changer l'adresse d'écoute dans PostgreSQL

    Tout ce que vous avez à faire est de changer l'adresse d'écoute de hôte local pour "*" ou ajoutez une nouvelle ligne comme indiqué ci-dessus. Cela permettra à chaque adresse IP d'être connecté au serveur de base de données, ou si vous souhaitez spécifier des IPs particuliers, vous pouvez les taper avec des espaces entre chaque adresse IP.

  3. Configuration pg_hba.confli:
  4. Afin de permettre aux utilisateurs que nous voulons être connectés à la base de données, nous devons apporter des modifications dans le «PG_HBA.conf déposer. Ce fichier sera disponible sous le même répertoire que ci-dessus.

    Ouvrez maintenant le fichier à l'aide de la commande fournie ci-dessous:

    sudo nano / etc / postgresql / 13 / main / pg_hba.confli  

    Dans le fichier, vous devez ajouter les lignes suivantes dans le fichier:

    # Type Database User Address Method Host All All 0.0.0.0/0 MD5 HOST All All: / 0 MD5 
    Autoriser les hôtes distants dans PostgreSQL

    Enregistrez le fichier de configuration et fermez-le.

  5. Service de redémarrage :
  6. Maintenant, redémarrez le service de base de données pour appliquer les modifications en exécutant la commande mentionnée ci-dessous:

    sudo systemctl redémarrer postgresql  

    Maintenant, ouvrez simplement le port «5432» Dans le pare-feu et vous êtes prêt à voir toutes les bases de données et vous pouvez vous lier à partir de l'adresse IP du serveur de PostgreSQL:

    sudo ufw autorise 5432  

C'est ça. Votre serveur de base de données PostgreSQL est accessible à partir d'hôtes distants.

Conclusion

La base de données PostgreSQL est définie par défaut sur Bond avec LocalHost qui restreint l'autre adresse IP et hôte pour se connecter ou avoir l'accès au serveur PostgreSQL. Dans cet article, nous vous avons guidé à travers la configuration de PostgreSQL pour permettre une connexion à distance afin que d'autres IPS puissent se lier au serveur. De cette façon, d'autres hôtes peuvent facilement voir la liste des bases de données et se connecter à la fonction publique de PostgreSQL.