| Chia sẻ PostgreSQL Database qua mạng LAN

Được viết bởi thanhdt vào ngày 02/12/2025 lúc 07:36 | 42 lượt xem

Chia sẻ PostgreSQL Database qua mạng LAN

Khi làm việc trong nhóm hoặc trong môi trường nội bộ doanh nghiệp, bạn thường cần cho nhiều máy trong mạng LAN cùng truy cập vào một PostgreSQL server. Bài viết này hướng dẫn cách cấu hình PostgreSQL để các máy khác trong LAN có thể kết nối an toàn và ổn định.


1. Kiểm tra địa chỉ IP của máy cài PostgreSQL

Bạn cần biết IP nội bộ của máy chủ PostgreSQL để các máy khác trong LAN kết nối.

https://www.lifewire.com/thmb/J345qu1vMBa30IVmwAsWOWVn4po%3D/1500x0/filters%3Ano_upscale%28%29%3Amax_bytes%28150000%29%3Astrip_icc%28%29/2019-03-19_16h09_50-5c914cb946e0fb0001770166.png
https://support.intermedia.com/euf/assets/images/answers/osvc/27175/27175_2.png

Mở Command Prompt → nhập:

ipconfig

Tìm mục IPv4 Address. Ví dụ:

IPv4 Address. . . . . . . . . . . : 192.168.1.10

Đây sẽ là địa chỉ để các máy khác truy cập.


2. Chỉnh sửa file postgresql.conf để mở cổng LAN

File cấu hình nằm tại:

  • Windows: C:\Program Files\PostgreSQL\<version>\data\postgresql.conf
  • Ubuntu: /etc/postgresql/<version>/main/postgresql.conf

Mở file và tìm dòng:

#listen_addresses = 'localhost'

Sửa thành:

listen_addresses = '*'

Hoặc giới hạn trong LAN, ví dụ:

listen_addresses = '192.168.1.10'
https://databasefaqs.com/wp-content/uploads/2021/09/Postgresql-listen_addresses-address-all.png
https://databasefaqs.com/wp-content/uploads/2021/09/Postgresql-listen_addresses-example-1.png

3. Chỉnh sửa file pg_hba.conf để cho phép máy khác kết nối

File này nằm cùng thư mục với postgresql.conf.

Thêm dòng sau để cho phép toàn bộ LAN truy cập:

host    all     all     192.168.1.0/24     md5

Giải thích:

  • 192.168.1.0/24 là toàn bộ dải LAN.
  • Có thể thay đổi theo dải IP bạn sử dụng.
  • md5 là yêu cầu xác thực bằng mật khẩu.
https://help.theatremanager.com/sites/default/files/images/PCIinstall/PostgresEditing4Mac.jpg
https://i.sstatic.net/AEg7I.png

4. Mở cổng tường lửa (Firewall)

PostgreSQL mặc định chạy port 5432, cần mở để máy khác truy cập.

Trên Windows

Command Prompt (Run as Administrator):

netsh advfirewall firewall add rule name="PostgreSQL" dir=in action=allow protocol=TCP localport=5432

Trên Ubuntu

sudo ufw allow 5432/tcp
https://greenwebpage.com/community/wp-content/uploads/2025/02/word-image-13516-8.png

5. Khởi động lại PostgreSQL

Windows:

services.msc

Chọn PostgreSQL → Restart.

Ubuntu:

sudo systemctl restart postgresql

6. Kết nối từ máy khác trong LAN

Từ máy client, mở DBeaver / PgAdmin và kết nối:

  • Host: 192.168.1.10
  • Port: 5432
  • User: user PostgreSQL của bạn
  • Database: tên database
https://chemicloud.com/kb/wp-content/uploads/2021/04/115.png
https://www.tecmint.com/wp-content/uploads/2022/03/Create-SSH-Tunneling-in-pgadmin4.png

7. Lưu ý bảo mật

  • Không mở toàn mạng Internet, chỉ LAN.
  • Sử dụng mật khẩu mạnh.
  • Có thể cấu hình SSL nếu muốn kết nối an toàn hơn.

8. Tóm tắt nhanh

BướcNội dung
1Lấy IP LAN của server (ipconfig / ifconfig)
2Sửa postgresql.conflisten_addresses='*'
3Sửa pg_hba.conf → cho phép LAN 192.168.1.0/24
4Mở firewall port 5432
5Restart PostgreSQL
6Client kết nối qua IP LAN