Jump to content

Traccar Reverse Proxy & SSL Encrypt: Difference between revisions

From Deffcon
Created page with "== Pastikan DNS domain sudah mengarah ke server == thumb Pastikan <code>track.deffcon.com</code> sudah mengarah ke IP publik server Anda (<code>103.250.10.5</code>): * Login ke penyedia domain Anda. * Tambahkan record DNS type <code>A</code>: ** '''Host:''' <code>track</code> ** '''Value / IP:''' <code>103.250.10.5</code> Tunggu propagasi DNS beberapa menit (hingga 1 jam tergantung provider). == Instal Nginx == sudo apt..."
 
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 12: Line 12:
== Instal Nginx ==
== Instal Nginx ==
  sudo apt update
  sudo apt update
  sudo apt install nginx -y
  sudo apt install nginx -y


== Konfigurasi Nginx untuk reverse proxy ==
== Konfigurasi Nginx untuk reverse proxy ==
Buat file konfigurasi baru untuk domain Anda di <code>/etc/nginx/sites-available/track.deffcon.com</code>:
[[File:Nginx File Configuration.png|thumb]]
 
Buat file konfigurasi baru untuk domain Anda di <code>/etc/nginx/sites-available/track.deffcon.com</code>:<syntaxhighlight lang="bash" line="1">
server {
server {
    listen 80;
    server_name track.deffcon.com;


    listen 80;
    location / {
        proxy_pass http://localhost:8082/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}
</syntaxhighlight>'''PORT 8082''' adalah service traccar secara default


    server_name track.deffcon.com;
Kemudian aktifkan konfigurasi dengan perintah:
sudo ln -s /etc/nginx/sites-available/track.deffcon.com /etc/nginx/sites-enabled/
[[File:Nginx System Status.png|thumb]]
Cek konfigurasi & restart Nginx
sudo nginx -t
sudo systemctl restart nginx


    location / {


        proxy_pass <nowiki>http://localhost:8082/</nowiki>;
== Tambahkan HTTPS dengan Let's Encrypt ==
Agar lebih aman, gunakan SSL via Certbot:
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d track.deffcon.com
kita juga perlu '''menyesuaikan konfigurasi Traccar''', terutama bagian <code>traccar.xml</code> agar sesuai dengan pengaturan domain dan proxy.
[[File:Traccar File Configuration xml.png|thumb]]
Buka file <code>traccar.xml</code>


        proxy_http_version 1.1;
Lokasinya biasanya ada di:
/opt/traccar/conf/traccar.xml
Periksa dan ubah bagian berikut:
<entry key='web.address'><nowiki>https://track.deffcon.com</nowiki></entry>
[[File:Traccar System Status.png|thumb]]
Simpan dan restart Traccar
sudo systemctl restart traccar


        proxy_set_header Upgrade $http_upgrade;
== Auto-Renewal SSL ==
Let's Encrypt sertifikat berlaku 90 hari. Certbot biasanya sudah otomatis membuat cronjob untuk perpanjangan.


        proxy_set_header Connection "upgrade";
Cek dengan:
sudo certbot renew --dry-run


        proxy_set_header Host $host;
== Uji Coba SSL ==
 
[[File:Traccar SSL Platform.png|thumb]]
        proxy_set_header X-Real-IP $remote_addr;
Pergi ke alamat <code>track.deffcon.com</code> , apakah sudah terencrypt SSL atau belum.
 
    }
 
}

Latest revision as of 13:49, 7 June 2025

Pastikan DNS domain sudah mengarah ke server

Pastikan track.deffcon.com sudah mengarah ke IP publik server Anda (103.250.10.5):

  • Login ke penyedia domain Anda.
  • Tambahkan record DNS type A:
    • Host: track
    • Value / IP: 103.250.10.5

Tunggu propagasi DNS beberapa menit (hingga 1 jam tergantung provider).

Instal Nginx

sudo apt update
sudo apt install nginx -y

Konfigurasi Nginx untuk reverse proxy

Buat file konfigurasi baru untuk domain Anda di /etc/nginx/sites-available/track.deffcon.com:

server {
    listen 80;
    server_name track.deffcon.com;

    location / {
        proxy_pass http://localhost:8082/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

PORT 8082 adalah service traccar secara default

Kemudian aktifkan konfigurasi dengan perintah:

sudo ln -s /etc/nginx/sites-available/track.deffcon.com /etc/nginx/sites-enabled/

Cek konfigurasi & restart Nginx

sudo nginx -t
sudo systemctl restart nginx


Tambahkan HTTPS dengan Let's Encrypt

Agar lebih aman, gunakan SSL via Certbot:

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d track.deffcon.com

kita juga perlu menyesuaikan konfigurasi Traccar, terutama bagian traccar.xml agar sesuai dengan pengaturan domain dan proxy.

Buka file traccar.xml

Lokasinya biasanya ada di:

/opt/traccar/conf/traccar.xml

Periksa dan ubah bagian berikut:

<entry key='web.address'>https://track.deffcon.com</entry>

Simpan dan restart Traccar

sudo systemctl restart traccar

Auto-Renewal SSL

Let's Encrypt sertifikat berlaku 90 hari. Certbot biasanya sudah otomatis membuat cronjob untuk perpanjangan.

Cek dengan:

sudo certbot renew --dry-run

Uji Coba SSL

Pergi ke alamat track.deffcon.com , apakah sudah terencrypt SSL atau belum.