Instalasi Nginx & Reverse Proxy #4

Open
opened 10 months ago by byprakoso · 0 comments
Owner

Berikut versi finalnya:

Dokumentasi Instalasi Nginx & Reverse Proxy (Rocky Linux)

1. Update Sistem

Jalankan perintah berikut untuk memastikan sistem dalam kondisi terbaru:
bash

sudo dnf update -y

2. Instalasi Nginx

sudo dnf install nginx -y

Aktifkan dan jalankan Nginx:

sudo systemctl enable --now nginx

3. Konfigurasi Firewall

Izinkan akses HTTP dan HTTPS:

sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --permanent --add-port=443
sudo firewall-cmd --reload

4. Konfigurasi Hosts

Edit file /etc/hosts untuk menambahkan domain lokal:

sudo nano /etc/hosts

Tambahkan baris berikut:

0.0.0.0   local.gisportal.id
127.0.0.1  local.gisportal.id

5. Konfigurasi Reverse Proxy

Buat file konfigurasi baru untuk domain lokal:

sudo nano /etc/nginx/conf.d/gisportal.id.conf

Isi dengan konfigurasi berikut:

server {
    listen 80;
    server_name local.gisportal.id;

    # redirect HTTP ke HTTPS
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl;
    server_name local.gisportal.id;

    ssl_certificate     /etc/ssl/gisportal.id.crt;
    ssl_certificate_key /etc/ssl/gisportal.id.key;
    ssl_password_file   /etc/ssl/password.txt;

    location / {
        proxy_pass https://127.0.0.1:8443/;
        proxy_ssl_verify off;

        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;

        proxy_connect_timeout 300s;
        proxy_send_timeout 300s;
        proxy_read_timeout 300s;
    }
}

6.masuk ke direktori nginx lalu pilih nginx.conf

cd /etc/nginx/nginx.conf

image

pastikan terdapat instruksi include sesuai dengan detail

7. Tes Konfigurasi Nginx

Periksa apakah konfigurasi valid:

sudo nginx -t

Jika tidak ada error, restart Nginx:

sudo systemctl restart nginx

8. Verifikasi

Buka browser dan akses:

http://local.gisportal.id

Jika konfigurasi berhasil, domain lokal akan diarahkan ke aplikasi Tomcat yang berjalan di port 8080.

9.jika konfigurasi sudah benar semua dan saat membuka https://local.gisportal.idada pesan 502 Bad Gateway.

terdapat masalah pada SElinux,input commasnd ini:

setsebool -P httpd_can_network_connect 1

setsebool → dipakai untuk mengubah boolean policy di SELinux.

httpd_can_network_connect → boolean khusus di SELinux yang mengatur apakah proses web server (seperti nginx, Apache, httpd) boleh melakukan koneksi keluar ke jaringan (misalnya ke backend Tomcat, database, API, dsb).

1 → mengaktifkan (ON / true). Kalau pakai 0 artinya mematikan.

-P → permanent, jadi setelah reboot setting ini tetap aktif.

Berikut versi finalnya: # Dokumentasi Instalasi Nginx & Reverse Proxy (Rocky Linux) ## 1. Update Sistem Jalankan perintah berikut untuk memastikan sistem dalam kondisi terbaru: bash ``` sudo dnf update -y ``` ## 2. Instalasi Nginx ``` sudo dnf install nginx -y ``` Aktifkan dan jalankan Nginx: ``` sudo systemctl enable --now nginx ``` ## 3. Konfigurasi Firewall Izinkan akses HTTP dan HTTPS: ``` sudo firewall-cmd --permanent --add-port=8080/tcp sudo firewall-cmd --permanent --add-port=443 sudo firewall-cmd --reload ``` ## 4. Konfigurasi Hosts Edit file /etc/hosts untuk menambahkan domain lokal: ``` sudo nano /etc/hosts ``` Tambahkan baris berikut: ``` 0.0.0.0 local.gisportal.id 127.0.0.1 local.gisportal.id ``` ## 5. Konfigurasi Reverse Proxy Buat file konfigurasi baru untuk domain lokal: sudo nano /etc/nginx/conf.d/gisportal.id.conf Isi dengan konfigurasi berikut: ``` server { listen 80; server_name local.gisportal.id; # redirect HTTP ke HTTPS return 301 https://$host$request_uri; } server { listen 443 ssl; server_name local.gisportal.id; ssl_certificate /etc/ssl/gisportal.id.crt; ssl_certificate_key /etc/ssl/gisportal.id.key; ssl_password_file /etc/ssl/password.txt; location / { proxy_pass https://127.0.0.1:8443/; proxy_ssl_verify off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; proxy_connect_timeout 300s; proxy_send_timeout 300s; proxy_read_timeout 300s; } } ``` ## 6.masuk ke direktori nginx lalu pilih nginx.conf ``` cd /etc/nginx/nginx.conf ``` ![image](/attachments/7db2eb89-0bc6-4e56-89fa-a37c832198d0) pastikan terdapat instruksi include sesuai dengan detail ## 7. Tes Konfigurasi Nginx Periksa apakah konfigurasi valid: ``` sudo nginx -t ``` Jika tidak ada error, restart Nginx: ``` sudo systemctl restart nginx ``` ## 8. Verifikasi Buka browser dan akses: ``` http://local.gisportal.id ``` Jika konfigurasi berhasil, domain lokal akan diarahkan ke aplikasi Tomcat yang berjalan di port 8080. ### 9.jika konfigurasi sudah benar semua dan saat membuka ``https://local.gisportal.id``ada pesan 502 Bad Gateway. terdapat masalah pada SElinux,input commasnd ini: ``` setsebool -P httpd_can_network_connect 1 ``` setsebool → dipakai untuk mengubah boolean policy di SELinux. httpd_can_network_connect → boolean khusus di SELinux yang mengatur apakah proses web server (seperti nginx, Apache, httpd) boleh melakukan koneksi keluar ke jaringan (misalnya ke backend Tomcat, database, API, dsb). 1 → mengaktifkan (ON / true). Kalau pakai 0 artinya mematikan. -P → permanent, jadi setelah reboot setting ini tetap aktif.
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
There is no content yet.