Overview
How Does Rublon Log Sync Work?
Log Sync Diagram

Supported Logs
Supported Output Formats
Before You Start
Create a Rublon MFA Organization
Get a Paid Rublon MFA Subscription
Get the Admin API Credentials
Prepare the SIEM Target
Installing Rublon Log Sync
Install the Package
unzip rublon-log-sync-linux-<version>.zip
tar -xzf rublon-log-sync-<version>-linux-<arch>.tar.gz
cd rublon-log-sync-<version>-linux-<arch>
sudo bash scripts/install-linux.sh --artifact bin/rublon-log-sync
/opt/rublon-log-sync/bin/rublon-log-sync
File Layout
Configure Rublon Log Sync
/etc/rublon-log-sync/config.yaml
sudo systemctl restart rublon-log-sync
Create the Configuration File
sudo install -o root -g rublon-log-sync -m 0640 \
/etc/rublon-log-sync/config.example.yaml \
/etc/rublon-log-sync/config.yaml
sudo editor /etc/rublon-log-sync/config.yaml
Minimal Configuration Example
log:
debug: false
log_files_count: 7
syslog_enabled: false
global:
secret_source: env
rublon:
api_server: https://core.rublon.net
system_token: "RUBLON_ADMIN_API_SYSTEM_TOKEN"
secret_key: "RUBLON_ADMIN_API_SECRET_KEY"
sync_jobs:
- id: "main"
checkpoint_enabled: true
rublon_endpoints:
- type: audit
- type: authentication
- type: phone
interval: 60
per_page: 100
target:
hostname: "127.0.0.1"
port: 1514
protocol: TCP
format: json
envelope: bare
Store Admin API Credentials in Environment Variables
sudo touch /etc/rublon-log-sync/rublon-log-sync.env
sudo chown root:rublon-log-sync /etc/rublon-log-sync/rublon-log-sync.env
sudo chmod 0640 /etc/rublon-log-sync/rublon-log-sync.env
sudo editor /etc/rublon-log-sync/rublon-log-sync.env
RUBLON_ADMIN_API_SYSTEM_TOKEN=your-system-token
RUBLON_ADMIN_API_SECRET_KEY=your-secret-key
sudo systemctl edit rublon-log-sync
[Service]
EnvironmentFile=/etc/rublon-log-sync/rublon-log-sync.env
sudo systemctl daemon-reload
global:
secret_source: env
rublon:
api_server: https://core.rublon.net
system_token: "RUBLON_ADMIN_API_SYSTEM_TOKEN"
secret_key: "RUBLON_ADMIN_API_SECRET_KEY"
Configuration Sections
Section: log
log:
debug: false
log_files_count: 7
syslog_enabled: false
/var/log/rublon-log-sync/rublon-log-sync.log
Section: global
global:
secret_source: plain
Secret Source
Proxy Server
global:
proxy_url: "proxy.example.com:8080"
http://proxy.example.com:8080
global:
proxy_url: "http://proxy.example.com:8080"
global:
proxy_url: "https://proxy.example.com:8443"
global:
proxy_url: "https://user:password@proxy.example.com:8443"
Section: rublon
rublon:
api_server: https://core.rublon.net
system_token: "RUBLON_ADMIN_API_SYSTEM_TOKEN"
secret_key: "RUBLON_ADMIN_API_SECRET_KEY"
Section: sync_jobs
sync_jobs:
- id: "security-logs"
checkpoint_enabled: true
rublon_endpoints:
- type: audit
- type: authentication
interval: 60
per_page: 100
target:
hostname: "siem.example.com"
port: 1514
protocol: TCP
format: cef
envelope: rfc5424
- id: "phone-logs"
checkpoint_enabled: true
rublon_endpoints:
- type: phone
interval: 300
per_page: 100
target:
hostname: "siem.example.com"
port: 1515
protocol: TCP
format: json
envelope: bare
from_datetime and API Lookback Limits
Section: target
target:
hostname: "siem.example.com"
port: 1514
protocol: TCP
format: cef
envelope: partial_syslog
Payload Envelopes
Configuration Changes and Checkpoints
Running Rublon Log Sync
Continuous Synchronization
sudo systemctl start rublon-log-sync
sudo systemctl enable rublon-log-sync
One-Shot Synchronization
sudo systemctl stop rublon-log-sync
sudo -u rublon-log-sync \
/opt/rublon-log-sync/bin/rublon-log-sync \
--config-file-path /etc/rublon-log-sync/config.yaml \
--logs-dir-path /var/log/rublon-log-sync \
--checkpoints-dir-path /var/lib/rublon-log-sync/checkpoints \
--once
Configuration Source
Runtime Command-Line Options
Managing the Service
systemctl status rublon-log-sync
sudo systemctl start rublon-log-sync
sudo systemctl stop rublon-log-sync
sudo systemctl restart rublon-log-sync
sudo systemctl enable rublon-log-sync
sudo systemctl disable rublon-log-sync
Application Logs
/var/log/rublon-log-sync/rublon-log-sync.log
journalctl -u rublon-log-sync
journalctl -u rublon-log-sync -f
journalctl -u rublon-log-sync -b
Checkpoints
/var/lib/rublon-log-sync/checkpoints
CEF Mapping
Common Mapping Rules
Timestamp Mapping
2023-07-26T08:40:03.365Z -> 1690360803365
Common Extension Fields
Audit Logs
CEF Event Fields
Audit Log Extension Fields
Audit Severity
Authentication Logs
CEF Event Fields
Authentication Log Extension Fields
Authentication Severity
Phone Logs
CEF Event Fields
Phone Log Extension Fields
Phone Severity
Security Best Practices
Troubleshooting
Check the Service Status
systemctl status rublon-log-sync
Check Application Logs
/var/log/rublon-log-sync/rublon-log-sync.log
log:
debug: true
sudo systemctl restart rublon-log-sync
Check systemd Diagnostics
journalctl -u rublon-log-sync -b
journalctl -u rublon-log-sync -f
Reset a Failed Service
sudo systemctl reset-failed rublon-log-sync
sudo systemctl start rublon-log-sync