System Configuration¶
Core system settings that affect overall Mailborder operation.
Accessing System Configuration¶
Navigate to System Settings → General in the web interface.
Or via command line:
General Settings¶
System Identification¶
System Name
The friendly name for this Mailborder server.
- Displayed in the web interface header
- Used in email headers (
X-Mailborder-Server) - Appears in log identification
- Default:
Mailborder V6
Example:
Command Line:
Hostname
The fully qualified domain name (FQDN) of this server.
- Should match your DNS A record
- Must match reverse DNS (PTR) record
- Used in SMTP HELO/EHLO
- Critical for mail delivery reputation
Example:
Requirements: - Valid FQDN format - Resolves to server IP - PTR record matches
Command Line:
sudo hostnamectl set-hostname mailborder.example.com
sudo mb-config set system.hostname mailborder.example.com
Administrator Contact¶
Administrator Email
Primary email address for system notifications.
- Receives system alerts
- Update notifications
- Error reports
- License expiration warnings
Important: This address should be deliverable and monitored. Don't use an address that's filtered through this Mailborder instance (creates chicken-and-egg problem during outages).
Example:
Alternative: Use an external email service (Gmail, etc.) or a different mail server.
Command Line:
Localization¶
Timezone
System timezone for logs, schedules, and user interface.
- Affects log timestamps
- Affects scheduled task execution
- Affects quarantine digest delivery times
- Default:
UTC
Common Timezones: - America/New_York - US Eastern - America/Chicago - US Central - America/Denver - US Mountain - America/Los_Angeles - US Pacific - Europe/London - UK - Europe/Paris - Central Europe - Asia/Tokyo - Japan - Australia/Sydney - Australia
View Available Timezones:
Set Timezone:
Via Web Interface: System Settings → General → Timezone
Via Command Line:
Default Language
Default interface language for new users.
- 56 languages available
- Users can override with personal preference
- Default:
en(English)
Command Line:
Resource Limits¶
Control system resource usage to prevent runaway processes.
Process Limits¶
Maximum Concurrent Scans
Number of simultaneous email scanning processes.
- Higher = more throughput but more CPU usage
- Lower = less load but potential queue backup
- Recommended: 2× CPU core count
- Default: Auto-detected based on CPU cores
Example: 8-core server → 16 concurrent scans
Command Line:
Maximum Queue Size
Maximum number of emails in the processing queue.
- Protects against memory exhaustion
- Queue full = reject new email temporarily (SMTP 421)
- Recommended: 1000× daily average hourly volume
- Default: 10000
Example: 10,000 emails/day average → 500/hour → 50,000 queue limit
Command Line:
Memory Limits¶
PHP Memory Limit
Maximum memory for PHP processes.
- Affects web interface and RPC daemon
- Increase for high-volume environments
- Default:
512M
Recommended Values: - Small: 256M (< 1000 mailboxes) - Medium: 512M (1000-5000 mailboxes) - Large: 1024M (5000+ mailboxes)
Command Line:
Scanning Process Memory Limit
Maximum memory for email scanning processes.
- Affects spam/virus scanning
- Large emails or archives may need more
- Default:
256M
Command Line:
Email Size Limits¶
Maximum Message Size
Maximum size of individual email message.
- Includes headers, body, and all attachments
- Larger emails rejected at SMTP level
- Default:
50M(52428800 bytes)
Recommended Values: - Conservative: 10M - Faster scanning, less storage - Standard: 25M - Balance performance and usability - Permissive: 50M - Support large attachments - Enterprise: 100M - High-capacity needs
Command Line:
Maximum Attachment Size
Maximum size of individual attachment.
- Per-attachment limit (not total)
- Applied after message size check
- Default:
25M
Command Line:
Performance Settings¶
Database¶
Connection Pool Size
Number of persistent database connections.
- Higher = more concurrent requests
- Too high = database overload
- Recommended: 10-50
- Default: 20
Command Line:
Query Timeout
Maximum time for database queries.
- Long-running queries killed after timeout
- Prevents hung processes
- Default: 30 seconds
Command Line:
Cache¶
Redis Cache TTL
Time-to-live for cached data.
- Language files: 3600 seconds (1 hour)
- User metadata: 1800 seconds (30 minutes)
- System config: 300 seconds (5 minutes)
Command Line:
sudo mb-config set cache.ttl.language 3600
sudo mb-config set cache.ttl.user_meta 1800
sudo mb-config set cache.ttl.system 300
Cache Eviction Policy
How Redis evicts data when memory is full.
allkeys-lru- Evict least recently used (recommended)volatile-lru- Evict LRU with expiration setnoeviction- Return errors when full
Command Line:
Update Settings¶
Automatic Updates¶
Signature Updates
Virus and spam signature updates.
- Enabled (recommended): Automatic updates every 4 hours
- Manual: Update on demand only
- Default: Enabled
Command Line:
sudo mb-config set updates.signatures.auto true
sudo mb-config set updates.signatures.interval 14400
System Updates
Operating system and Mailborder package updates.
- Security Only: Automatic security patches
- All Updates: All available updates
- Manual: No automatic updates
- Default: Security Only
Command Line:
Update Schedule
When to check for and apply updates.
- Time of day (24-hour format)
- Low-volume periods recommended (e.g., 3 AM)
- Default: 03:00
Command Line:
Reboot Policy
Whether to automatically reboot after kernel updates.
- Never: Manual reboot required
- Prompt: Notify administrator, wait for confirmation
- Auto: Automatic reboot at scheduled time
- Default: Prompt
Command Line:
Notification Settings¶
Email Notifications¶
Alert Email Recipients
Who receives system alerts.
- Comma-separated list of email addresses
- Should be reliable, external addresses
- Default: Administrator email
Command Line:
Alert Thresholds
When to send alerts.
Disk Space Warning - Alert when disk usage exceeds threshold - Default: 80%
Memory Warning - Alert when RAM usage exceeds threshold - Default: 85%
Queue Warning - Alert when queue size exceeds threshold - Default: 75% of max queue size
Service Failure - Always alert when service stops unexpectedly - Default: Enabled
Command Line:
sudo mb-config set notifications.threshold.disk 80
sudo mb-config set notifications.threshold.memory 85
sudo mb-config set notifications.threshold.queue 75
Alert Frequency¶
Minimum Alert Interval
Minimum time between duplicate alerts.
- Prevents alert spam
- Default: 3600 seconds (1 hour)
Command Line:
System Maintenance¶
Automatic Cleanup¶
Log Retention
How long to keep log files.
- Email logs: 90 days (recommended)
- System logs: 30 days
- Authentication logs: 180 days (compliance)
- Debug logs: 7 days
Command Line:
sudo mb-config set maintenance.log_retention.email 90
sudo mb-config set maintenance.log_retention.system 30
sudo mb-config set maintenance.log_retention.auth 180
Quarantine Retention
How long to keep quarantined emails.
- Default: 14 days
- Longer retention = more storage needed
- Automatic deletion after expiration
Command Line:
Database Optimization
Automatic database optimization schedule.
- Optimize tables weekly
- Runs during low-usage hours
- Default: Sunday at 2:00 AM
Command Line:
sudo mb-config set maintenance.db_optimize.enabled true
sudo mb-config set maintenance.db_optimize.schedule "0 2 * * 0"
Backup¶
Automatic Backup
Schedule for automatic backups.
- Daily: Every day at specified time
- Weekly: Specified day at specified time
- Manual: On-demand only
- Default: Daily at 1:00 AM
Command Line:
Backup Retention
How many backup sets to keep.
- Default: 7 daily backups
- Oldest deleted automatically
Command Line:
Backup Location
Where to store backups.
- Local:
/var/backups/mailborder/ - Remote: NFS, SMB, S3, etc.
- Default: Local
Command Line:
See Backup Configuration for details.
System Behavior¶
Service Management¶
Auto-Restart on Failure
Whether services automatically restart on crash.
- Enabled (recommended): SystemD restarts failed services
- Disabled: Manual intervention required
- Default: Enabled
Max Restart Attempts
Number of restart attempts before giving up.
- Prevents restart loops
- Default: 5 attempts in 10 minutes
Command Line:
Debug Mode¶
Enable Debug Logging
Verbose logging for troubleshooting.
- Generates LARGE log files
- Only enable when troubleshooting
- Default: Disabled
Command Line:
# Enable debug mode
sudo mb-config set system.debug true
sudo systemctl reload mb-*
# Disable debug mode
sudo mb-config set system.debug false
sudo systemctl reload mb-*
Debug Components
Which components to debug.
all- Everything (very verbose)email- Email processing onlyauth- Authentication onlyservices- Service lifecycle- Multiple: Comma-separated
Command Line:
Applying Configuration Changes¶
After making configuration changes:
Via Web Interface¶
Changes are applied immediately when you click Save.
Via Command Line¶
Reload configuration:
# Reload all services
sudo systemctl reload mb-*
# Or reload specific service
sudo systemctl reload mb-rpcd
Verify Configuration¶
Check for errors:
View current configuration:
Configuration File¶
Advanced users can edit the configuration file directly:
Location: /etc/mailborder/engine.cf
Format: Key-value pairs
system.name=Mailborder - Main Office
system.hostname=mailborder.example.com
system.admin_email=admin@example.com
system.timezone=America/New_York
system.max_message_size=52428800
Direct File Editing
Editing configuration files directly can break Mailborder if done incorrectly. Always backup first and validate syntax before reloading services.
After editing:
Troubleshooting¶
Configuration Not Applied¶
Problem: Changes don't take effect
Solution:
# Reload services
sudo systemctl reload mb-*
# If reload doesn't work, restart
sudo systemctl restart mb-rpcd mb-filter mb-virtuoso
Configuration Validation Errors¶
Problem: mb-config --verify shows errors
Solution:
# View specific errors
sudo mb-config --verify --verbose
# Restore from backup
sudo mb-config restore --from /var/backups/mailborder/config/
# Reset to defaults (dangerous!)
sudo mb-config reset --section system --confirm
Service Won't Start After Configuration Change¶
Problem: Service fails to start after config change
Solution:
# Check service logs
sudo journalctl -u mb-rpcd -n 50
# Restore previous configuration
sudo mb-config restore
# Restart service
sudo systemctl restart mb-rpcd
Next Steps¶
- Email Processing Settings - Configure email flow
- Network Settings - Network configuration
- Backup Configuration - Data protection
- Logging Configuration - Log management