TracCar - GPS Tracking Server Setup

We will build a GPS Tracking platform !

Documentation Source: https://www.traccar.org/documentation/

Currently, the latest version of Traccar (version 6) is not compatible with latest Linux with Latest MariaDB !


Traccar (Version 5) on Debian 11






tracking.example.com


example IP: 96.7.128.175


Debian 11

root, tJb2k8g&sWm



nano /etc/hosts

96.7.128.175 tracking.example.com tracking

nano /etc/hostname

tracking




timedatectl set-timezone Asia/Dhaka

echo "Asia/Dhaka" | sudo tee /etc/timezone



reboot




apt update



apt -y install unzip mariadb-server


mariadb-secure-installation


MariaDB: root, pHv2n7s!uMc




mariadb -u root -p


CREATE DATABASE traccar;
CREATE USER 'traccar'@'localhost' IDENTIFIED BY 'eJz7kQv5mQn';
GRANT ALL PRIVILEGES ON traccar.* TO 'traccar'@'localhost' IDENTIFIED BY 'eJz7kQv5mQn';
FLUSH PRIVILEGES;
exit



reboot


service mariadb status




wget https://github.com/traccar/traccar/releases/download/v5.12/traccar-linux-64-5.12.zip


unzip traccar-linux-*.zip && ./traccar.run








cat > /opt/traccar/conf/traccar.xml << EOF
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE properties SYSTEM 'http://java.sun.com/dtd/properties.dtd'>

<properties>

    <entry key="config.default">./conf/default.xml</entry>
    <entry key='database.driver'>com.mysql.cj.jdbc.Driver</entry>
    <entry key='database.url'>jdbc:mysql://localhost/traccar?zeroDateTimeBehavior=round&amp;serverTimezone=Asia/Dhaka&amp;allowPublicKeyRetrieval=true&amp;useSSL=false&amp;allowMultiQueries=true&amp;autoReconnect=true&amp;useUnicode=yes&amp;characterEncoding=UTF-8&amp;sessionVariables=sql_mode=''</entry>
    <entry key='database.user'>traccar</entry>
    <entry key='database.password'>eJz7kQv5mQn</entry>

</properties>
EOF










service traccar start


service traccar status


reboot



service traccar status




apt install -y ssl-cert apache2

a2enmod ssl proxy_http proxy_wstunnel rewrite

service apache2 restart





nano /etc/apache2/sites-available/traccar.conf




<VirtualHost *:80>
  ServerName tracking.example.com
  Redirect / https://tracking.example.com/
</VirtualHost>
<IfModule mod_ssl.c>
        <VirtualHost _default_:443>

                ServerName tracking.example.com
                ServerAdmin webmaster@yourwebsite.com

                DocumentRoot /var/www/html

                ProxyPass /api/socket ws://localhost:8082/api/socket
                ProxyPassReverse /api/socket ws://localhost:8082/api/socket

                ProxyPass / http://localhost:8082/
                ProxyPassReverse / http://localhost:8082/

                SSLEngine on
                SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
                SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key

        </VirtualHost>
</IfModule>








a2dissite 000-default

a2ensite traccar

service apache2 restart




apt install certbot python3-certbot-apache

certbot --apache




reboot





https://tracking.example.com



Post a Comment