[2] PostgreSQL 13 – zdalne połączenia
26 stycznia 2022Domyślnie dostęp do PostgreSQL jest dostępny tylko z [localhosta], jednak jeśli chcesz uzyskać dostęp ze zdalnego komputera, zmień ustawienia jak poniżej.
[1] Istnieje wiele metod uwierzytelniania w PostgreSQL. W tym przykładzie skonfiguruj metodę hasła MD5.
[root@vlsr01 ~]# mcedit /var/lib/pgsql/data/postgresql.conf #linia 59: odkomentuj i zmień #jeśli nasłuchuje tylko na IPv4 ustaw [0.0.0.0] listen_addresses = '*' [root@vlsr01 ~]# mcedit /var/lib/pgsql/data/pg_hba.conf #dodaj na końcu # 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 ident # IPv6 local connections: host all all ::1/128 ident # Allow replication connections from localhost, by a user with the # replication privilege. local replication all peer host replication all 127.0.0.1/32 ident host replication all ::1/128 ident #wpisz sieci, którym zezwalasz na łączenie się z bazą w sekcji [ADDRESS] #jeśli chcesz zezwolić wszystkim, wpisz [0.0.0.0/0] host all all 192.168.0.0/16 md5 [root@vlsr01 ~]# systemctl restart postgresql
[2] Jeśli Firewalld jest uruchomiony to zezwol PostgrSQL na łączność.
[root@vlsr01 ~]# firewall-cmd --add-service=postgresql --permanent [root@vlsr01 ~]# firewall-cmd --reload
[3] Aby móc się połączyć z PostgreSQL za pomocą hasła MD5, musimy utworzyć to hasło dla użytkownika bazy danych.
#podłącz się do bazy danych [user01@vlsr01 ~]$ psql -d testdb psql (13.5) Type "help" for help. #utwórz lub zmień hasło testdb=> \password Enter new password: #wpisz hasło Enter it again: #wpisz hasło ponownie testdb=> \q # możliwość ustawienia lub zmiany hasła dla dowolnego użytkownika z administratorem PostgreSQL [postgres@vlsr01 ~]$ psql -c "alter user user01 with password 'TajneHasło';" ALTER ROLE
[4] Sprawdź możliwość podłączenia się do PostgreSQL za pomocą hasła MD5, ze zdalnego hosta.
[root@vlsr02 ~]# psql -h vlsr01.zicher.lab -d testdb -U user01 Password for user user01: #wpisz hasło psql (13.5) Type "help" for help. testdb=> #jesteśmy podłączeni