Linux Installation
Install the VigilPrism server on Ubuntu, Debian, RHEL, or CentOS.
Prerequisites
- Root or sudo access
- 2+ CPU cores, 4 GB RAM minimum
- 20 GB available disk space
- Port 8000 available (or configure alternate port)
Quick Install (Script)
The fastest way to install VigilPrism with all dependencies:
# Download and extract
wget https://download.vigilprism.com/server/latest/linux-x64.tar.gz
tar -xzf linux-x64.tar.gz
cd vigilprism-server
# Run installer
sudo ./install.sh
The installer creates a systemd service, sets up directories, and starts the server automatically.
Manual Installation
For more control over the installation process:
1. Download the Binary
wget https://download.vigilprism.com/server/latest/vigilprism-server-linux-x64
chmod +x vigilprism-server-linux-x64
sudo mv vigilprism-server-linux-x64 /opt/vigilprism/vigilprism-server
2. Create Directories
sudo mkdir -p /opt/vigilprism/config
sudo mkdir -p /opt/vigilprism/data
sudo mkdir -p /var/log/vigilprism
3. Create Configuration File
sudo nano /opt/vigilprism/config/server.yaml
Minimum configuration:
# Server configuration
host: 0.0.0.0
port: 8000
# IMPORTANT: Change this!
secret_key: your-256-bit-secret-key-here
# Database
database_url: sqlite:////opt/vigilprism/data/vigilprism.db
4. Create Systemd Service
sudo nano /etc/systemd/system/vigilprism-server.service
Service file content:
[Unit]
Description=VigilPrism Security Server
After=network.target
[Service]
Type=simple
User=root
ExecStart=/opt/vigilprism/vigilprism-server
WorkingDirectory=/opt/vigilprism
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
5. Enable and Start Service
sudo systemctl daemon-reload
sudo systemctl enable vigilprism-server
sudo systemctl start vigilprism-server
# Check status
sudo systemctl status vigilprism-server
Firewall Configuration
Allow incoming connections on port 8000:
UFW (Ubuntu/Debian)
sudo ufw allow 8000/tcp
sudo ufw reload
firewalld (RHEL/CentOS)
sudo firewall-cmd --add-port=8000/tcp --permanent
sudo firewall-cmd --reload
Reverse Proxy Setup (Production)
For production deployments, use a reverse proxy like Nginx or Caddy for TLS termination:
Nginx Configuration
server {listen 443 ssl http2;
server_name vigilprism.example.com;
ssl_certificate /etc/letsencrypt/live/vigilprism.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/vigilprism.example.com/privkey.pem;
location / {proxy_pass http://127.0.0.1:8000;
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 $scheme;
}
}
Caddy Configuration (Automatic HTTPS)
vigilprism.example.com {reverse_proxy localhost:8000
}
Caddy automatically obtains and renews TLS certificates from Let's Encrypt.
Verify Installation
# Check service status
sudo systemctl status vigilprism-server
# Check health endpoint
curl http://localhost:8000/health
# View logs
journalctl -u vigilprism-server -f
If successful, access the dashboard at http://your-server:8000
Default Credentials
The default login credentials are:
Username: admin
Password: admin
Change these immediately after first login!
Troubleshooting
Port already in use
Change the port in server.yaml or stop the conflicting service:
sudo lsof -i :8000
Service fails to start
Check logs for errors:
journalctl -u vigilprism-server --no-pager -n 50
Permission denied errors
Ensure directories have correct ownership:
sudo chown -R root:root /opt/vigilprism
sudo chmod -R 755 /opt/vigilprism