3
Deployment and Installation
max edited this page 2026-09-26 20:44:00 +02:00

Deployment and Installation

LOGAR is distributed as self-contained standalone binaries (Server.bin / Server.exe, Linux_Client.bin / Win_Client.exe) and automated service installers. No Python runtime or pip dependencies are required for production deployment.


1. Central Server Hub Deployment

WebUI Dashboard & Default Login Credentials

Once LOGAR Server is installed or executed, the WebUI Management Console is immediately accessible:

  • WebUI URL: http://<server-ip>:8443/webui (or http://localhost:8443/webui)
  • Default Username: admin
  • Default Password: admin_logar_2026!
Setting Default Value Environment Variable Override Description
Username admin LOGAR_ADMIN_USER Initial administrative user account
Password admin_logar_2026! LOGAR_ADMIN_PASS Default master administrative password
Session Secret Auto-generated LOGAR_SESSION_SECRET HMAC cookie signature key

Tip

Changing the Default Password: Administrators can change the password at any time from the WebUI settings modal, or through the REST API via POST /api/admin/change-password.


Standalone Executable (Zero Dependencies)

Download Server.bin (Linux) or Server.exe (Windows) from the release assets:

# Linux standalone execution
chmod +x Server.bin
./Server.bin

# Windows standalone execution
.\Server.exe

On first launch, the server automatically generates its Subordinate CA keypair, server TLS certificate, and default configuration file.


Automated Linux Server Service (Systemd)

To install the server as a persistent background service managed by systemd:

# Interactive installation (prompts for config directory and optional .lic file)
sudo ./compilation/install_linux_server.sh

# Unattended / Automated installation with license activation:
sudo ./compilation/install_linux_server.sh --data-dir /etc/logar --lic /path/to/server.lic

This script:

  1. Deploys the standalone executable to /opt/logar-server.
  2. Configures data directory (default: /etc/logar or user-specified).
  3. Imports the .lic license file (if provided).
  4. Installs and starts logar-server.service with LimitNOFILE=65536.

Windows Server Service Installation

  1. Download LOGAR-Server-Setup.exe from Releases.
  2. Execute the installer wizard:
    • Binaries Folder: Default C:\Program Files\LOGAR-Server.
    • Data & Configuration Folder: Choose default (C:\ProgramData\LOGAR-Server) or browse to select any custom storage path (e.g. D:\LOGAR-Data).
    • License File (.lic): Optionally select a signed .lic license package to activate your seat quota and CA during installation.
  3. The installer registers and starts the LOGAR_Server Windows service via NSSM with full user/service permissions.

Development Mode (Running from Python Source)

(Optional for contributors & local development)

python3 -m venv venv
source venv/bin/activate  # or .\venv\Scripts\Activate.ps1 on Windows
pip install -r compilation/requirements.txt
python src/Server.py

2. Linux Client Deployment

Automated Non-Interactive Installer

Deploy edge forwarders effortlessly across your Linux fleet using the pre-compiled client binary:

sudo ./compilation/install_linux_client.sh "http://<HUB_HOST>:8443" "<ENROLLMENT_SECRET>"

The installer performs the following:

  1. Queries /etc/machine-id and canonical FQDN.
  2. Contacts /api/client/enroll on the server hub using the shared enrollment secret.
  3. Receives and stores ca.crt, client.crt, and client.key in /etc/logar/certs with strict permissions (chmod 700).
  4. Generates /etc/logar/client_config.json.
  5. Installs and activates logar-client.service systemd unit using the standalone Linux_Client.bin binary.

Systemd Service Management

# Check status
systemctl status logar-client.service

# View forwarder logs
journalctl -u logar-client.service -f

3. Windows Client Deployment

Inno Setup Automated Installer

  1. Download LOGAR-Client-Setup.exe from the latest release.
  2. Run the installer (or deploy silently via Group Policy / SCCM):
    LOGAR-Client-Setup.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART
    
    During interactive setup, you can select the binaries folder and the data directory (default: C:\ProgramData\LOGAR).
  3. Place client_config.json (exported from Server WebUI) into C:\ProgramData\LOGAR\client_config.json (or your chosen data directory).
  4. The LOGAR_Client service automatically enrolls on first start and streams Windows Event Logs continuously.

Windows Service Management

  • Service Name: LOGAR_Client
  • Log Output: C:\ProgramData\LOGAR\client.log
  • Managed via standard Windows Services MMC (services.msc) or sc.exe:
    sc query LOGAR_Client
    sc stop LOGAR_Client
    sc start LOGAR_Client
    

4. Dynamic Machine & Domain Identification

Client configurations intentionally contain no hardcoded machine name or site name. Both forwarders dynamically identify their host and domain at runtime via get_machine_identifier():

  1. Fully Qualified Domain Name (FQDN): Checked via socket.getfqdn().
  2. OS-Specific Domain Discovery:
    • Windows: Checks Active Directory environment variables (USERDNSDOMAIN, USERDOMAIN).
    • Linux: Parses /etc/resolv.conf domain and search directives.
  3. Reverse DNS Lookup: Resolves canonical hostname via socket.gethostbyaddr.
  4. Fallback: Local hostname socket.gethostname().

The server automatically infers site attribution from domain qualifiers (e.g. node01.corp.internal \rightarrow site corp.internal).