diff --git a/Deployment-and-Installation.md b/Deployment-and-Installation.md index a777d9f..247b5a9 100644 --- a/Deployment-and-Installation.md +++ b/Deployment-and-Installation.md @@ -1,38 +1,56 @@ # Deployment and Installation -LOGAR is designed for rapid, automated deployment across both Linux and Windows environments with native service integration. +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 -### Prerequisites -- Python 3.10+ (or standalone Linux binary / Docker container) -- Inbound access on ports `9443` (mTLS Ingestion) and `8443` (WebUI & API) +### Standalone Executable (Zero Dependencies) +Download `Server.bin` (Linux) or `Server.exe` (Windows) from the release assets: -### Automated Linux Server Installation -Run the automated systemd installer script on your server: +```bash +# 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. The WebUI is immediately accessible at `http://:8443/webui`. + +### Automated Linux Server Service (Systemd) +To install the server as a persistent background service managed by `systemd`: ```bash sudo ./compilation/install_linux_server.sh ``` This script: -1. Deploys the application files to `/opt/logar-server`. -2. Sets up Python dependencies and virtual environment. -3. Generates the initial PKI keys and configuration. -4. Installs and starts `logar-server.service` with `LimitNOFILE=65536`. +1. Deploys the standalone executable to `/opt/logar-server`. +2. Generates the initial PKI keys and configuration. +3. Installs and starts `logar-server.service` with `LimitNOFILE=65536`. -### Windows Server Installation -1. Compile or download `LOGAR-Server-Setup.exe`. +### Windows Server Service Installation +1. Download or compile `LOGAR-Server-Setup.exe`. 2. Execute the installer. It will install the server binary to `{autopf}\LOGAR` and register the `LOGAR_Server` Windows service via NSSM. +### Development Mode (Running from Python Source) +*(Optional for contributors & local development)* +```bash +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: +Deploy edge forwarders effortlessly across your Linux fleet using the pre-compiled client binary: ```bash sudo ./compilation/install_linux_client.sh "http://:8443" "" @@ -43,7 +61,7 @@ The installer performs the following: 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. +5. Installs and activates `logar-client.service` systemd unit using the standalone `Linux_Client.bin` binary. ### Systemd Service Management ```bash