[LINUX] [Postgresql] Connexion SSH au serveur de base de données externe à partir du client

Installer postgresql sur un serveur de base de données externe Notez qu'il convient un peu lors de l'accès au serveur de base de données avec une connexion SSH du côté client.

·environnement

· Construction

Nous effectuerons dans l'ordre.

Installer postgreSQL sur le serveur de base de données

Installez postgresql sur Linux et faites-en un serveur DB

$ sudo yum install -y postgresql96 postgresql96-server postgresql96-libs postgresql96-contrib

Initialisation de la base de données

Je ne suis pas sûr, mais il existe différents fichiers, donc Yoshi!

$ sudo /etc/init.d/postgresql96 initdb

Changer le mot de passe de l'utilisateur postgre

Entrez un nouveau mot de passe comme dans Nouveau mot de passe:, puis entrez-le à nouveau avec Retaper le nouveau mot de passe:.

$ sudo passwd postgres
Changing password for user postgres.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

Modifications apportées à postgresql.conf et pg_hba.conf

Après avoir initialisé la base de données avec initdb, dans le répertoire / var / lib / pgsql96 / data / Puisque postgresql.conf a été généré, modifiez-le.

$ sudo vi /var/lib/pgsql96/data/postgresql.conf

Une fois ouvert, passez à la ligne 53 proche (Entrez: définissez le numéro pour afficher le numéro de ligne, il est donc pratique de se souvenir)

postgresql.conf


※Extrait
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------

# - Connection Settings -

#listen_addresses = 'localhost'         # what IP address(es) to listen on;
                                        # comma-separated list of addresses;
                                        # defaults to 'localhost'; use '*' for all
                                        # (change requires restart)
#port = 5432                            # (change requires restart)
max_connections = 100                   # (change requires restart)

Décommentez listen_addresses et ajoutez l'adresse IP globale du client. Je décommente également le port.

~ Après l'édition ~

postgresql.conf


※Extrait
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------

# - Connection Settings -

listen_addresses = 'localhost,Adresse IP globale'  # what IP address(es) to listen on;
                                        # comma-separated list of addresses;
                                        # defaults to 'localhost'; use '*' for all
                                        # (change requires restart)
port = 5432                            # (change requires restart)
max_connections = 100                   # (change requires restart)

Il existe de nombreuses façons de rechercher une adresse IP globale, Si vous accédez à www.cman.jp avec un client, vous pouvez le voir en un instant, il est donc recommandé.  https://www.cman.jp/network/support/go_access.cgi

Ensuite, pg_hba.conf est généré dans le même répertoire, alors éditez-le.

$ sudo vi /var/lib/pgsql96/data/pg_hba.conf

C'est en bas pour que vous puissiez passer à la fin. Changez comme suit. (Vous pouvez voler avec Shift + g)

pg_hba.conf


# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
héberger toutes toutes les adresses IP globales/32   trust

Vous devez définir l'adresse IP globale côté client dans la colonne ADDRESS et définir METHOD sur trust. Veuillez noter que le client ne peut pas se connecter au serveur DB.

démarrer postgreSQL

$ /etc/init.d/postgresql96 start

Création de base de données

Si vous ne créez pas de base de données ici J'ai des difficultés à me connecter avec le logiciel de connexion DB (A5M2 cette fois) sur le client. Commencez par passer à l'utilisateur postgres

$ sudo su - postgres
Last login: Sun Dec 9 14:02:32 UTC 2019 on pts/0
-bash-4.2$

Accéder à la base de données avec psql

-bash-4.2$ psql
psql (9.6.11)
Type "help" for help.

postgres=#

Lorsque postgres = # s'affiche, créez littéralement une base de données vide.

postgres=# create database hogeDB;

Ceci termine les paramètres côté serveur de base de données. Viennent ensuite les paramètres côté client (principalement A5M2)

· Lien

Démarrer A5M2 Ajouter et supprimer des bases de données image.png Ajouter → PostgreSQL (connexion directe) image.png Pour les paramètres de l'onglet "De base", saisissez les paramètres de base de données et saisissez-les. image.png Sélectionnez le nom d'utilisateur et la clé privée requis pour la connexion SSH dans l'onglet Tunnel SSH2. image.png

Si vous effectuez une connexion de test ici et obtenez le message "La connexion a réussi", vous avez réussi! image.png

Après cela, enregistrez les paramètres et faites-le bouillir.

référence: Accéder à la base de données du serveur externe (postgresql) https://liginc.co.jp/programmer/archives/1598

Recommended Posts

[Postgresql] Connexion SSH au serveur de base de données externe à partir du client
Ssh vers un serveur externe sous proxy http [à partir d'Ubuntu 18.04]
POST des images depuis ESP32-CAM (MicroPython) vers le serveur
Connexion SSH au serveur cible à partir de Windows en un clic sur un raccourci
Installation et configuration du client PyFilter pour surveiller les connexions SSH au serveur Alibaba Cloud Ubuntu
Paramètres pour spécifier les adresses IP autorisées pour la connexion SSH
Essayez de configurer SSH (Exscript) du logiciel au routeur
Envoyer les données du journal du serveur vers Splunk Cloud
Connexion SSH à un serveur privé à l'aide d'un serveur de plateforme dans EC2
Connectez-vous à centos6 sur Virtualbox avec une connexion SSH depuis Mac
Je veux obtenir des informations de fstab à la destination de la connexion ssh et exécuter la commande
Remarque sur la façon de vérifier la connexion au port du serveur de licences
Association de terminal du côté serveur à Amazon SNS (python + boto3)
Connexion SSH de Windows à GCP
Je souhaite utiliser DB en utilisant l'ORM de Django à partir d'une application externe
Essayez d'utiliser le framework web de Python Django (1) - De l'installation au démarrage du serveur
Modifiez le fichier du serveur de destination de la connexion SSH sur le serveur avec VS Code
[python] Envoyez l'image capturée de la caméra Web au serveur et enregistrez-la
L'histoire d'essayer de reconnecter le client
Notification push du serveur Python vers Android
Comment faire fonctionner Linux depuis la console
Comment accéder à la banque de données de l'extérieur
Connexion SSH depuis Windows via VPN SSL
[IBM Cloud] J'ai essayé d'accéder à la table Db2 on Cloud à partir de Cloud Funtions (python)