Câu trả lời:
Chỉ cần sử dụng 0.0.0.0/0
.
host all all 0.0.0.0/0 md5
Đảm bảo listen_addresses
in postgresql.conf
(hoặc ALTER SYSTEM SET
) cho phép các kết nối đến trên tất cả các giao diện IP khả dụng.
listen_addresses = '*'
Sau khi thay đổi, bạn phải tải lại cấu hình. Một cách để làm điều này là thực thi điều này SELECT
với tư cách là một siêu người dùng.
SELECT pg_reload_conf();
::/0
trái ngược với 0.0.0.0/0
khi sửa đổi tệp pg_hba.conf.
postgres
có mật khẩu mạnh: sudo -u postgres psql
, \password
.
0.0.0.0/0
cho tất cả các địa chỉ IPv4
::0/0
cho tất cả các địa chỉ IPv6
all
để khớp với bất kỳ địa chỉ IP nào
samehost
để khớp với bất kỳ địa chỉ IP nào của máy chủ
samenet
để khớp với bất kỳ địa chỉ nào trong bất kỳ mạng con nào mà máy chủ được kết nối trực tiếp.
ví dụ
host all all 0.0.0.0/0 md5
Ngoài các câu trả lời tuyệt vời ở trên, nếu bạn muốn một số phạm vi IP được cấp phép, bạn có thể chỉnh sửa /var/lib/pgsql/{VERSION}/data
tệp và đặt một cái gì đó như
host all all 172.0.0.0/8 trust
Nó sẽ chấp nhận các kết nối đến từ bất kỳ máy chủ nào trong phạm vi trên. Nguồn: http://www.linuxtopia.org/online_books/database_guides/Practical_PostgreSQL_database/c15679_002.htm
Định cấu hình tất cả các tệp với postgres 12 trên centos:
bước 1: tìm kiếm và chỉnh sửa tệp
sudo vi /var/lib/pgsql/12/data/pg_hba.conf
nhấn "i" và thay đổi IPv4 tại dòng
host all all 0.0.0.0/0 md5
bước 2: tìm kiếm và chỉnh sửa tệp postgresql.conf
sudo vi /var/lib/pgsql/12/data/postgresql.conf
thêm dòng cuối cùng: nghe_addresses = '*': wq! (lưu tệp) - bước 3: khởi động lại
systemctl restart postgresql-12.service
Thêm dòng này vào pg_hba.conf của thư mục postgres
host all all all trust
"trust" cho phép tất cả người dùng kết nối mà không cần mật khẩu.
md5
không? Tôi nghĩ rằng nó sẽ là cần thiết để sử dụng loạitrust
...