Panduan Instalasi dan Konfigurasi NGINX Proxy Manager (NPM) pada Ubuntu Server

Panduan Instalasi dan Konfigurasi NGINX Proxy Manager (NPM) pada Ubuntu Server

Dalam artikel sebelumnya, saya sudah membahas mengapa saya memilih konfigurasi NGINX Proxy Manager (NPM) dan MikroTik di kantor saya. Di artikel ini, saya akan berbagi panduan teknis lengkap tentang cara instalasi NGINX Proxy Manager langsung pada Ubuntu Server, serta konfigurasi dasarnya secara praktis.

NGINX Proxy Manager adalah aplikasi yang memudahkan kita mengelola reverse proxy, SSL otomatis (Let’s Encrypt), serta routing domain atau subdomain ke berbagai backend dengan mudah melalui antarmuka web. Dengan NPM, pengaturan SSL, reverse proxy, dan keamanan aplikasi jadi jauh lebih mudah bahkan untuk pemula.

Jika kamu menyewa layanan VPS dari provider seperti DigitalOcean, Linode, Vultr, atau provider VPS lokal, instalasi NPM biasanya menjadi jauh lebih mudah. Kebanyakan provider sudah menyediakan aplikasi siap pakai, termasuk NPM. Kamu tinggal memilih aplikasi yang kamu mau saat deployment server, tanpa perlu melakukan instalasi manual yang rumit.

Namun, jika kamu tetap ingin belajar instalasi manual, berikut langkah-langkah detailnya.

Berikut persyaratan dasar sebelum instalasi:

  • Ubuntu Server 20.04 atau terbaru.
  • Akses root atau user dengan sudo privileges.
  • Port 80, 81, dan 443 terbuka di firewall server.

Langkah-langkah Instalasi Manual NGINX Proxy Manager

Langkah 1: Update Sistem dan Install Dependensi

Jalankan perintah berikut untuk mengupdate dan menginstall dependensi utama:

sudo apt update && sudo apt upgrade -y

sudo apt install curl wget gnupg2 ca-certificates lsb-release software-properties-common git build-essential -y

Langkah 2: Install Node.js dan NPM

NPM membutuhkan Node.js versi 16. Berikut cara instalasinya:

 

curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -

sudo apt install -y nodejs

 

Verifikasi instalasi:

 

node -v

npm -v

 

Langkah 3: Instalasi Database (MariaDB)

 

NPM menggunakan MariaDB/MySQL sebagai backend database. Instalasi MariaDB:

 

sudo apt install mariadb-server mariadb-client -y

sudo systemctl enable mariadb --now

 

Langkah 4: Membuat Database untuk NPM

 

Jalankan perintah berikut untuk mengatur database NPM:

 

sudo mysql -u root

 

Masukkan perintah berikut pada console MySQL:

 

CREATE DATABASE npm;

CREATE USER 'npmuser'@'localhost' IDENTIFIED BY 'passwordkuat';

GRANT ALL PRIVILEGES ON npm.* TO 'npmuser'@'localhost';

FLUSH PRIVILEGES;

EXIT;

 

Ganti passwordkuat dengan password kamu sendiri.

 

Langkah 5: Instalasi NGINX Proxy Manager

 

Clone repository NPM dari GitHub:

 

sudo git clone https://github.com/NginxProxyManager/nginx-proxy-manager.git /opt/npm

cd /opt/npm

 

Copy contoh konfigurasi:

 

sudo cp config.json.example config.json

 

Edit file konfigurasi tersebut:

 

sudo nano config.json

 

Sesuaikan konfigurasi dengan database yang kamu buat tadi:


{

  "database": {

    "engine": "mysql",

    "host": "localhost",

    "name": "npm",

    "user": "npmuser",

    "password": "passwordkuat",

    "port": 3306

  }

}

 

Simpan dengan CTRL+X lalu tekan Y dan Enter.

 

Install dependensi Node.js untuk NPM:

 

sudo npm install --production

 

Langkah 6: Menjalankan NPM dengan Systemd

 

Buat file systemd untuk NPM agar berjalan otomatis saat reboot:


sudo nano /etc/systemd/system/npm.service


Masukkan konfigurasi berikut:

 

[Unit]

Description=NGINX Proxy Manager

After=network.target mariadb.service




[Service]

Type=simple

User=root

ExecStart=/usr/bin/node /opt/npm/index.js

WorkingDirectory=/opt/npm

Restart=always




[Install]

WantedBy=multi-user.target


Aktifkan dan jalankan service NPM:

 

sudo systemctl daemon-reload

sudo systemctl enable npm

sudo systemctl start npm

 

Sekarang NPM berjalan otomatis dan bisa kamu akses lewat browser di:

 

http://IP_SERVER_KAMU:81

 

Login Pertama Kali ke NPM

Gunakan default credential berikut:

Email: [email protected]

Password: changeme

Kamu akan diminta segera mengubahnya setelah login pertama.

Konfigurasi Dasar Proxy Host di NPM

  • Setelah login ke dashboard NPM, tambahkan Proxy Host baru:

Pilih menu Hosts → Proxy Hosts → Add Proxy Host.

  • Masukkan domain/subdomain kamu, misalnya app.example.com.
  • Isi kolom Forward Hostname/IP dengan IP server backend kamu, misal 192.168.1.10.
  • Isi kolom Forward Port dengan port aplikasi kamu, misal 8080.
  • Dit ab SSL, aktifkan SSL dengan memilih Request a new SSL Certificate, lalu centang Force SSL dan HTTP/2

 

Sebagai catatan tambahan, jika kamu menggunakan provider VPS yang menyediakan instalasi aplikasi siap pakai seperti NPM, kamu tidak perlu repot dengan semua langkah di atas. Kamu cukup memilih NPM di panel instalasi VPS, lalu server akan otomatis siap dengan konfigurasi default dalam beberapa menit.

Cara ini sangat direkomendasikan untuk kamu yang ingin cepat deploy tanpa pusing konfigurasi teknis manual.

Baik instalasi manual maupun otomatis dari provider VPS, NGINX Proxy Manager sangat membantu pengelolaan reverse proxy dan SSL dengan mudah. Dengan instalasi manual, kamu memiliki kontrol lebih terhadap konfigurasi server. Sedangkan instalasi otomatis cocok untuk kamu yang ingin praktis dan cepat.

Semoga panduan ini bermanfaat! Jika ada pertanyaan, silakan tulis di kolom komentar 😊

 

Leave a Reply

Your email address will not be published. Required fields are marked *

Back To Top