NetXMS is an open-source network management system that provides monitoring and management of IT infrastructure. It features automatic network discovery, performance data collection, and alerting capabilities.
| File/Directory | Path | Purpose |
|---|---|---|
| Server config | /etc/netxmsd.conf |
NetXMS server configuration |
| Agent config | /etc/nxagentd.conf |
NetXMS agent configuration |
| Database | /var/lib/netxms/netxms.db |
SQLite database (or PostgreSQL) |
| Logs | /var/log/netxms/ |
Log files |
| MIB files | /usr/share/snmp/mibs/ |
SNMP MIB files |
| Scripts | /var/lib/netxms/scripts/ |
Custom scripts |
| Tools | /var/lib/netxms/tools/ |
External tools |
| Web console | /var/www/html/netxms/ |
Web interface |
# /etc/netxmsd.conf
# Server identity
ServerName=netxms-server
# Database configuration
DBDriver=postgresql
DBName=netxms
DBLogin=netxms
DBPassword=SecureDbPassword123!
DBServer=localhost
DBPort=5432
# Server listening address
ListenAddress=0.0.0.0
# Server port
ListenPort=4701
# Agent listening port
AgentPort=4702
# Trap receiver port
TrapPort=162
# Syslog listening port
SyslogPort=514
# Max connections
MaxConnections=100
# Data retention (days)
RetentionTime=365
# Performance data collection interval (seconds)
PerfPollInterval=60
# Configuration polling interval (seconds)
ConfigPollInterval=300
# Topology polling interval (seconds)
TopologyPollInterval=3600
# Enable SNMP traps
EnableSNMPTraps=Yes
# Enable syslog
EnableSyslog=Yes
# Enable internal alarms
EnableInternalAlarms=Yes
# Log file
LogFile=/var/log/netxms/server.log
# Log level (0=Error, 1=Warning, 2=Info, 3=Debug)
LogLevel=2
# PID file
PidFile=/var/run/netxmsd.pid
# Working directory
WorkDir=/var/lib/netxms
# Cache directory
CacheDir=/var/cache/netxms
# Temporary directory
TmpDir=/tmp
# Encryption key (for secure communication)
EncryptionKey=YourEncryptionKeyHere
# Enable encryption
EnableEncryption=Yes
# Certificate file
SSLCertFile=/etc/netxms/ssl/server.crt
# Key file
SSLKeyFile=/etc/netxms/ssl/server.key
# CA file
SSLCAFile=/etc/netxms/ssl/ca.crt
# LDAP authentication
LDAPEnabled=No
LDAPServer=ldap.example.com
LDAPPort=389
LDAPBindDN=cn=admin,dc=example,dc=com
LDAPBindPassword=LdapPassword123!
LDAPBaseDN=dc=example,dc=com
LDAPUserFilter=(uid=%u)
LDAPGroupFilter=(cn=%g)
# SMTP settings
SMTPServer=smtp.example.com
SMTPPort=587
SMTPUser=netxms@example.com
SMTPPassword=EmailPassword123!
SMTPFrom=netxms@example.com
SMTPUseTLS=Yes
# Web console settings
WebConsolePort=8080
WebConsoleListenAddress=0.0.0.0
# API settings
APIEnabled=Yes
APIPort=8081
APIKey=YourAPIKeyHere
# /etc/nxagentd.conf
# Agent name
AgentName=nxagent
# Server address
ServerAddress=netxms-server.example.com
# Server port
ServerPort=4702
# Agent listening port
ListenPort=4702
# Listen address
ListenAddress=0.0.0.0
# Server shared secret
ServerSecret=SharedSecret123!
# Enable encryption
EnableEncryption=Yes
# Log file
LogFile=/var/log/netxms/agent.log
# Log level
LogLevel=2
# PID file
PidFile=/var/run/nxagentd.pid
# Data collection interval (seconds)
PollInterval=60
# Enable SNMP
EnableSNMP=Yes
# SNMP community
SNMPCommunity=public
# SNMP port
SNMPPort=161
# Enable parameters
EnableParameters=Yes
# Enable actions
EnableActions=Yes
# Enable remote execution
EnableRemoteExec=No
# Allowed commands
AllowedCommands=/bin/ping,/usr/bin/check_*
# Subagents
LoadSubAgent=system
LoadSubAgent=cpu
LoadSubAgent=memory
LoadSubAgent=disk
LoadSubAgent=network
LoadSubAgent=services
LoadSubAgent=packages
LoadSubAgent=snmp
# Custom parameters
Parameter.CPU.Usage=agent.cpu.usage
Parameter.Memory.Usage=agent.memory.usage
Parameter.Disk.Usage=agent.disk.usage
# Alarm thresholds
[AlarmThresholds]
CPUWarning=70
CPUCritical=90
MemoryWarning=75
MemoryCritical=90
DiskWarning=80
DiskCritical=90
ResponseWarning=1000
ResponseCritical=5000
# Alarm notification
[AlarmNotification]
EmailEnabled=Yes
EmailRecipients=admin@example.com,ops@example.com
SlackEnabled=Yes
SlackWebhook=https://hooks.slack.com/services/XXX/YYY/ZZZ
SMSEnabled=No
# Data collection settings
[DataCollection]
# System metrics
CollectCPU=Yes
CollectMemory=Yes
CollectDisk=Yes
CollectNetwork=Yes
CollectProcesses=Yes
CollectServices=Yes
# Network metrics
CollectSNMP=Yes
CollectInterfaces=Yes
CollectRoutes=Yes
CollectARP=Yes
# Application metrics
CollectMySQL=No
CollectPostgreSQL=No
CollectNginx=No
CollectApache=No
# Email notification configuration
[EmailNotification]
SMTPServer=smtp.example.com
SMTPPort=587
SMTPUser=netxms@example.com
SMTPPassword=EmailPassword123!
SMTPFrom=netxms@example.com
SMTPUseTLS=Yes
# Alarm email template
AlarmSubject=[NetXMS Alarm] %1 on %2
AlarmBody=Alarm: %1\nNode: %2\nSeverity: %3\nMessage: %4\nTime: %5
# Slack notification configuration
[SlackNotification]
WebhookURL=https://hooks.slack.com/services/XXX/YYY/ZZZ
Channel=#alerts
Username=NetXMS
IconEmoji=:warning:
# Alarm template
AlarmTemplate={
"attachments": [
{
"color": "%severity_color%",
"title": "NetXMS Alarm: %severity%",
"fields": [
{"title": "Node", "value": "%node%", "short": true},
{"title": "Alarm", "value": "%alarm%", "short": true},
{"title": "Severity", "value": "%severity%", "short": true},
{"title": "Message", "value": "%message%", "short": false}
]
}
]
}
# Validate server configuration
netxmsd --validate-config
# Validate agent configuration
nxagentd --validate-config
# Check database connection
nxdbmgr check
# Restart server
sudo systemctl restart netxmsd
# Restart agent
sudo systemctl restart nxagentd
# Check status
sudo systemctl status netxmsd
sudo systemctl status nxagentd
# View logs
sudo tail -f /var/log/netxms/server.log
sudo tail -f /var/log/netxms/agent.log
# Initialize database
nxdbmgr init
# Upgrade database
nxdbmgr upgrade
# Backup database
nxdbmgr backup /var/backups/netxms/
# Restore database
nxdbmgr restore /var/backups/netxms/backup.sql
# Check server status
nxadm status
# List nodes
nxadm node list
# Check alarms
nxadm alarm list
# Check agent status
nxagentctl status
# Test server connection
nxagentctl test-server
# List parameters
nxagentctl list-parameters
# Access web console
curl http://localhost:8080
# Check API
curl http://localhost:8081/api/status
Running NetXMS in regulated environments? We assist with:
Secure your deployment: office@linux-server-admin.com | Contact Page