Quản lý Service
Windows Service Management
Khởi động Service
powershell
# Khởi động service
Start-Service -Name "blackhole-fwd"
# Hoặc sử dụng sc command
sc start "blackhole-fwd"
# Hoặc sử dụng Forwarder CLI
.\blackhole-fwd.exe service startDừng Service
powershell
# Dừng service
Stop-Service -Name "blackhole-fwd"
# Hoặc sử dụng sc command
sc stop "blackhole-fwd"
# Hoặc sử dụng Forwarder CLI
.\blackhole-fwd.exe service stopKiểm tra trạng thái
powershell
# Kiểm tra trạng thái service
Get-Service -Name "blackhole-fwd"
# Hoặc sử dụng Forwarder CLI
.\blackhole-fwd.exe service statusRestart Service
powershell
# Restart service
Restart-Service -Name "blackhole-fwd"
# Hoặc dừng rồi khởi động
Stop-Service -Name "blackhole-fwd"
Start-Service -Name "blackhole-fwd"Linux Service Management
Khởi động Service
bash
# Khởi động service
sudo systemctl start blackhole-fwd
# Hoặc sử dụng service command
sudo service blackhole-fwd start
# Hoặc sử dụng Forwarder CLI
sudo /opt/blackhole-forwarder/blackhole-fwd service startDừng Service
bash
# Dừng service
sudo systemctl stop blackhole-fwd
# Hoặc sử dụng service command
sudo service blackhole-fwd stop
# Hoặc sử dụng Forwarder CLI
sudo /opt/blackhole-forwarder/blackhole-fwd service stopKiểm tra trạng thái
bash
# Kiểm tra trạng thái service
sudo systemctl status blackhole-fwd
# Hoặc sử dụng Forwarder CLI
sudo /opt/blackhole-forwarder/blackhole-fwd service statusEnable/Disable Service
bash
# Enable service để tự động khởi động khi boot
sudo systemctl enable blackhole-fwd
# Disable service
sudo systemctl disable blackhole-fwd
# Kiểm tra trạng thái enable
sudo systemctl is-enabled blackhole-fwdChạy Forwarder ở chế độ Foreground
Khởi chạy trực tiếp
bash
# Linux
sudo /opt/blackhole-forwarder/blackhole-fwd start --config /etc/blackhole-forwarder/config.yml
# Windows
cd "C:\Program Files\BlackHoleForwarder"
.\blackhole-fwd.exe start --config config.ymlChạy với verbose logging
bash
# Linux
sudo /opt/blackhole-forwarder/blackhole-fwd start --verbose --log-level debug
# Windows
.\blackhole-fwd.exe start --verbose --log-level debugChạy với custom config
bash
# Linux
sudo /opt/blackhole-forwarder/blackhole-fwd start --config /path/to/custom/config.yml
# Windows
.\blackhole-fwd.exe start --config "D:\Custom\config.yml"Quản lý cấu hình
Pull cấu hình từ Registry
bash
# Pull cấu hình từ remote server
.\blackhole-fwd.exe configure pullPush cấu hình lên Registry
bash
# Push cấu hình local lên remote server
.\blackhole-fwd.exe configure pushXác thực với Registry
bash
# Xác thực với API key
.\blackhole-fwd.exe auth --key "your-api-key-here"Monitoring và Logging
Vị trí Log Files
Windows
- Application Logs:
C:\Program Files\BlackHoleForwarder\logs\default.log - Error Logs:
C:\Program Files\BlackHoleForwarder\logs\default-error.log - Windows Event Log: Event Viewer → Windows Logs → Application
Linux
- Application Logs:
/var/log/blackhole-forwarder/default.log - Error Logs:
/var/log/blackhole-forwarder/default-error.log - Systemd Journal:
journalctl -u blackhole-fwd
Xem Logs
Windows
powershell
# Xem log file trực tiếp
Get-Content "C:\Program Files\BlackHoleForwarder\logs\default.log" -Tail 50 -Wait
# Xem Windows Event Log
Get-EventLog -LogName Application -Source "blackhole-fwd" -Newest 20
# Xem log với PowerShell
Get-Content "C:\Program Files\BlackHoleForwarder\logs\default.log" | Select-String "ERROR"Linux
bash
# Xem log file trực tiếp
sudo tail -f /var/log/blackhole-forwarder/default.log
# Xem systemd journal
sudo journalctl -u blackhole-fwd -f
# Xem log với grep
sudo grep "ERROR" /var/log/blackhole-forwarder/default.log
# Xem log theo thời gian
sudo journalctl -u blackhole-fwd --since "2025-01-01" --until "2025-01-02"Health Checks
Kiểm tra trạng thái Forwarder
bash
# Kiểm tra process
ps aux | grep blackhole-fwd
# Kiểm tra port listening
netstat -tlnp | grep -E ":(1883|514|8080)"
# Kiểm tra memory usage
ps -o pid,ppid,cmd,%mem,%cpu --sort=-%mem | grep blackhole-fwdKiểm tra kết nối
bash
# Test kết nối đến Registry
curl -k https://blackhole.glabs.one/health
# Test kết nối MQTT
mosquitto_pub -h localhost -p 1883 -t "test" -m "hello"
# Test kết nối Kafka
kafka-console-producer.sh --bootstrap-server kafka.company.com:9092 --topic test
# Test rsyslog server
echo "test message" | nc -u localhost 514Performance Monitoring
Kế hoạch kiểm thử SIEM end-to-end
Tham khảo bộ kịch bản latency/performance cho mô hình Agent -> Forwarder -> Database tại:
Metrics Collection
Forwarder tự động thu thập các metrics sau:
System Metrics
- CPU usage (global và per-core)
- Memory usage (total, used, available)
- Disk I/O và usage
- Network interface statistics
- Process information
- File descriptor usage (Linux)
- Load average (Linux/macOS)
Forwarder Metrics
- Messages processed per second
- Error rates
- Queue sizes
- Connection status
- MQTT broker metrics
- Rsyslog server metrics
- Proxy server metrics
Monitoring Commands
bash
# Xem metrics real-time
sudo journalctl -u blackhole-fwd -f | grep "metrics"
# Kiểm tra queue size
sudo grep "queue_size" /var/log/blackhole-forwarder/default.log
# Kiểm tra error rate
sudo grep "error_rate" /var/log/blackhole-forwarder/default.log
# Kiểm tra MQTT broker status
sudo grep "mqtt_broker" /var/log/blackhole-forwarder/default.log
# Kiểm tra rsyslog server status
sudo grep "rsyslog" /var/log/blackhole-forwarder/default.logMaintenance
Log Rotation
Log rotation được quản lý bởi Forwarder, có thể cấu hình trong config:
yaml
logging:
max_size_mb: 10 # Rotate khi file đạt 10MBBackup Configuration
bash
# Backup config file
sudo cp /etc/blackhole-forwarder/config.yml /etc/blackhole-forwarder/config.yml.backup.$(date +%Y%m%d)
# Backup logs
sudo tar -czf /backup/blackhole-forwarder-logs-$(date +%Y%m%d).tar.gz /var/log/blackhole-forwarder/Update Forwarder
Windows
powershell
# Dừng service
Stop-Service -Name "blackhole-fwd"
# Backup config
Copy-Item "config.yml" "config.yml.backup"
# Copy new binary
Copy-Item "blackhole-fwd-new.exe" "blackhole-fwd.exe"
# Khởi động service
Start-Service -Name "blackhole-fwd"Linux
bash
# Dừng service
sudo systemctl stop blackhole-fwd
# Backup config
sudo cp /etc/blackhole-forwarder/config.yml /etc/blackhole-forwarder/config.yml.backup
# Copy new binary
sudo cp blackhole-fwd-new /opt/blackhole-forwarder/blackhole-fwd
# Khởi động service
sudo systemctl start blackhole-fwdTroubleshooting Commands
Debug Mode
bash
# Chạy với debug logging
sudo /opt/blackhole-forwarder/blackhole-fwd start --verbose --log-level debug
# Windows
.\blackhole-fwd.exe start --verbose --log-level debugSecurity Best Practices
File Permissions
Linux
bash
# Set proper permissions
sudo chown -R blackhole-fwd:blackhole-fwd /opt/blackhole-forwarder
sudo chown -R blackhole-fwd:blackhole-fwd /etc/blackhole-forwarder
sudo chown -R blackhole-fwd:blackhole-fwd /var/log/blackhole-forwarder
# Set restrictive permissions
sudo chmod 750 /opt/blackhole-forwarder
sudo chmod 640 /etc/blackhole-forwarder/config.yml
sudo chmod 750 /var/log/blackhole-forwarderWindows
powershell
# Set permissions for service account
icacls "C:\Program Files\BlackHoleForwarder" /grant "NT SERVICE\BlackHoleForwarder":(OI)(CI)F
icacls "C:\Program Files\BlackHoleForwarder\config.yml" /grant "NT SERVICE\BlackHoleForwarder":RNetwork Security
- Sử dụng TLS/SSL cho tất cả kết nối
- Cấu hình firewall để chỉ cho phép kết nối cần thiết
- Sử dụng VPN hoặc private network khi có thể
- Rotate API keys định kỳ
- Cấu hình authentication cho MQTT broker
- Sử dụng strong passwords cho proxy authentication
