Cài đặt và bảo mật PostgreSQL 16 trên Ubuntu 22.04
01/03/2023 - 2 phút
PostgreSQL 16 Package Repository
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget -qO- https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo tee /etc/apt/trusted.gpg.d/pgdg.asc &>/dev/null
Để bắt đầu, hãy lấy phiên bản mới nhất của các gói. Chúng ta có thể đạt được điều này bằng cách sử dụng lệnh cập nhật apt như hình dưới đây:
sudo apt update
Bước 2: Cài dặt PostgreSQL 16 Database Server và Client
Để cài đặt chúng ta sử dụng lệnh
sudo apt install postgresql postgresql-client -y
Sau khi chạy thành công ta kiểm tra PostgreSQL service có được start chưa:
sudo systemctl status postgresql
Như vậy ta đã cài đặt PostgreSQL thành công và kiểm tra phiên bản PostgreSQL bằng lệnh
psql --version
Ở đây, chúng ta có thể thấy rằng phiên bản PostgreSQL là 15.
Bước 3: Cập nhật mật khẩu User Admin PostgreSQL
Theo mặc định, chúng ta có thể kết nối với máy chủ PostgreSQL mà không cần sử dụng bất kỳ mật khẩu nào. Hãy xem điều này hoạt động bằng cách sử dụng tiện ích psql:
sudo -u postgres psql
Trong đầu ra ở trên, lời nhắc postgres=# cho biết kết nối đang hoạt động với máy chủ PostgreSQL.
Tiếp tục chúng ta dùng lệnh để đổi password là PassKhongChilaPasss
ALTER USER postgres PASSWORD 'PassKhongChilaPasss';
sau đó chúng ta thoát khỏi bằng lệnh \q
Bây giờ, hãy kết nối lại với máy chủ cơ sở dữ liệu:
psql -h localhost -U postgres
Hãy nhập chuỗi PassKhongChilaPasss làm mật khẩu và bây giờ chúng ta đã kết nối với cơ sở dữ liệu.
Như vậy chúng ta đã đặt thành công mật khẩu cho user admin postgres
Bước 4: Cấu hình cho PostgreSQL để cho phép kết nối từ xa
Theo mặc định, PostgreSQL chỉ chấp nhận các kết nối từ máy chủ cục bộ. Tuy nhiên, chúng ta có thể dễ dàng sửa đổi cấu hình để cho phép kết nối từ các máy khách từ xa.
PostgreSQL đọc cấu hình của nó từ tệp postgresql.conf nằm trong thư mục /etc/postgresql/15/main/. Ở đây, phiên bản cho biết phiên bản chính của PostgreSQL.
Bây giờ, hãy mở tệp postgresql.conf trong trình soạn thảo văn bản, bỏ ghi chú dòng bắt đầu bằng listen_addresses và thay thế ‘localhost’ bằng ’*’.
Lưu và đóng tập tin.
Tiếp theo, chỉnh sửa phần kết nối cục bộ IPv4 của tệp pg_hba.conf để cho phép kết nối IPv4 từ tất cả các máy khách. Xin lưu ý rằng tệp này cũng nằm trong thư mục /etc/postgresql/15/main/.
Trong trường hợp, tường lửa Ubuntu đang chạy trên hệ thống của bạn thì hãy cho phép cổng PostgreSQL 5432 bằng lệnh sau,
sudo ufw allow 5432/tcp
Sau đó ta dùng công cụ PgAdmin để kết nối thử, bạn có thể tải ở đây https://www.pgadmin.org/download/
Chúng ta điền các thông tin cần thiết như trên ảnh sau đó nhắp Save
Như vậy chúng ta đã kết nối thành công