404 Not Found


nginx/1.18.0 (Ubuntu)
Setting up a remote Postgres database server on Ubuntu 18.04 - School of Applied STEM - Universitas Prasetiya Mulya

Setting up a remote Postgres database server on Ubuntu 18.04

School of Applied STEM - Universitas Prasetiya Mulya > S1 Digital Business Technology > Setting up a remote Postgres database server on Ubuntu 18.04

Installing Postgres

Pada langkah ini, Anda akan menginstal Postgres di server Anda. Hal pertama yang harus dilakukan adalah SSH ke server Anda dengan menjalankan:

ssh server_user@server_ip

Note:
server_user adalah pengguna server Anda yang ingin Anda masuki server_ip adalah alamat IP server Anda

Kemudian masukkan kata sandi pengguna yang relevan atau kata sandi kunci SSH jika ada. Selanjutnya, perbarui paket dan dependensi server Anda dengan menjalankan:

sudo apt-get update

Setelah selesai, instal Postgres dengan menjalankan:

sudo apt-get install postgresql postgresql-contrib

Ini akan menginstal Postgres bersama dengan dependensi terkaitnya. Ketika proses selesai, alihkan pengguna ke postgres untuk dapat menjalankan perintah Postgres dengan pengguna default Postgres dengan menjalankan:

su - postgres

Pengguna server akan dialihkan dari root ke postgres. Anda dapat mengakses shell Postgres dengan menjalankan:

psql

Anda akan diperlihatkan sesuatu yang mirip dengan ini:

postgres@logrocket:~$ psql
psql (10.12 (Ubuntu 10.12-0ubuntu0.18.04.1))
Type "help" for help
postgres=#

Create user

Pada langkah ini, Anda akan membuat pengguna baru yang akan digunakan untuk mengakses database Postgres Anda dari jarak jauh. Untuk membuat pengguna baru, keluar dari shell Postgres dengan menjalankan:

\q

Saat masih login sebagai postgres, jalankan perintah berikut untuk membuat pengguna baru:

createuser --interactive --pwprompt

Prompt akan ditampilkan kepada Anda meminta Anda untuk memasukkan peran pengguna yang diinginkan, nama, kata sandi, dan jika Anda ingin pengguna menjadi pengguna super. Berikut ini contohnya:

Enter name of role to add: cleopatra
Enter password for new role:
Enter it again:
Shall the new role be a superuser? (y/n) y

Saya menamai peran pengguna saya cleopatra dan saya menjadikan pengguna saya pengguna super. Pengguna super adalah pengguna yang memiliki semua hak istimewa yang tersedia pada instance Postgres. Selanjutnya, kita akan menugaskan cleopatra ke database. Untuk melakukannya, jalankan perintah berikut:

createdb -O cleopatra egypt

Perintah di atas akan membuat database baru bernama egypt dan menugaskan cleopatra menjadi pengguna basis data.

Allow remote access

Pada langkah ini, kita akan melihat bagaimana mengkonfigurasi Postgres untuk menerima koneksi eksternal. Untuk memulai, buka file konfigurasi dengan editor pilihan Anda:

nano /etc/postgresql/10/main/postgresql.conf

Cari baris ini di file:

#listen_addresses = 'localhost'

Batalkan komentar, dan ubah nilainya menjadi '*', ini akan memungkinkan koneksi Postgres dari siapa pun.

listen_addresses = '*'

Simpan dan keluar dari file. Selanjutnya, ubah pg_hba.conf untuk juga mengizinkan koneksi dari semua orang. Buka file dengan editor pilihan Anda:

nano /etc/postgresql/10/main/pg_hba.conf

Modify this section:

# IPv4 local connections:
host    all             all             127.0.0.1/32            md5

To this:

# IPv4 local connections:
host    all             all             0.0.0.0/0            md5

File ini menyimpan otentikasi klien, setiap catatan menentukan rentang alamat IP, nama database, nama pengguna, dan metode otentikasi. Dalam kasus kami, kami memberikan semua pengguna basis data akses ke semua basis data dengan rentang alamat IP apa pun, sehingga memungkinkan alamat IP apa pun terhubung. Simpan dan keluar dari file. Selanjutnya, izinkan port 5432 melalui firewall dengan menjalankan:

sudo ufw allow 5432/tcp

Terakhir, mulai ulang Postgres untuk menerapkan semua perubahan yang telah Anda buat pada konfigurasinya dengan menjalankan:

sudo systemctl restart postgresql

Leave a Reply