如何在Ubuntu 20.04上使用Nginx设置LibreNMS监控工具

LibreNMS是一款免费的、开源的Linux操作系统网络监控工具。您可以使用LibreNMS监控不同的操作系统,如Linux、Windows、FreeBSD以及多种网络设备,如Cisco、Juniper、Foundry、FreeBSD、Brocade等。它使用SNMP、ARP、CDP、FDP、LLDP、OSPF和BGP协议来自动发现整个网络。它有一个简单而友好的Web界面,可以帮助您从Web浏览器中监控所有的设备,它有一套丰富的功能,包括SNMP、ARP、CDP、FDP、LLDP、OSPF和BGP协议。它有一套丰富的功能,包括自动发现、可定制的警报、API访问、自动更新等。
在本教程中,我们将一步步向您展示如何在Ubuntu 20.04上安装LibreNMS。
先决条件
一台运行Ubuntu 20.04的服务器,并配置一个root密码。
1、首先,建议将系统软件包更新为最新版本。您可以使用以下命令进行操作:
apt-get update -y
更新所有软件包后,使用以下命令安装LibreNMS所需的所有依赖项:
apt-get install rrdtool whois fping imagemagick graphviz mtr-tiny nmap python3-mysqldb snmp snmpd python3-pip python3-memcache mtr-tiny acl unzip git curl wget -y
一旦安装了所有依赖项,就可以继续下一步。
2、安装LEMP服务器
接下来,您将需要在服务器中安装Nginx Web服务器,MariaDB服务器,PHP和其他PHP扩展。您可以通过运行以下命令来安装所有它们:
apt-get install nginx mariadb-server php php-pear php-cgi php-common php-curl php-mbstring php-gd php-mysql php-bcmath php-imap php-json php-xml php-snmp php-fpm php-zip -y
安装所有软件包后,您需要在php.ini文件中设置时区。
首先,使用以下命令查找系统时区:
cat /etc/timezone
您应该看到以下输出:
Etc/UTC
接下来,使用以下命令编辑两个php.ini文件:
nano /etc/php/7.4/fpm/php.ini
nano /etc/php/7.4/cli/php.ini
定义您的系统时区,如下所示:
date.timezone = Etc/UTC
完成后,保存并关闭文件。然后,重新启动PHP-FPM服务以应用更改:
systemctl restart php7.4-fpm
完成后,您可以继续下一步。
3、配置MariaDB数据库
接下来,您将需要为LibreNMS创建数据库和用户。
首先,使用以下命令登录MariaDB shell:
mysql
登录后,使用以下命令创建数据库和用户:
MariaDB [(none)]> create database librenmsdb CHARACTER SET utf8 COLLATE utf8_unicode_ci;
MariaDB [(none)]> grant all privileges on librenmsdb.* to librenms@localhost IDENTIFIED by “password”;
接下来,使用以下命令清除特权并从MariaDB shell退出:
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;
接下来,编辑MariaDB配置文件并添加一些所需的设置:
nano /etc/mysql/mariadb.conf.d/50-server.cnf
在[mysqld]部分中添加以下行:
innodb_file_per_table=1
sql-mode=""
lower_case_table_names=0
保存并关闭文件,然后重新启动MariaDB服务以应用更改:
systemctl restart mariadb
至此,您的MariaDB已配置完毕。现在,您可以继续下一步。
4、安装和配置LibreNMS
首先,您将需要创建一个单独的用户来运行LibreNMS。您可以使用以下命令添加它:
useradd -r -M -d /opt/librenms librenms
接下来,使用以下命令将librenms用户添加到www-data组:
usermod -a -G librenms www-data
接下来,将目录更改为/ opt并使用以下命令下载最新版本的LibreNMS:
cd /opt
git clone https://github.com/librenms/librenms.git librenms
接下来,使用以下命令为LibreNMS创建日志文件:
touch /opt/librenms/logs/librenms.log
接下来,使用以下命令复制SNMP示例配置文件:
cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf
接下来,编辑snmpd.conf文件:
nano /etc/snmp/snmpd.conf
找到以下行:
com2sec readonly default RANDOMSTRINGGOESHERE
并且,将其替换为以下行:
com2sec readonly default mysnmpserverkey
保存并关闭文件,然后下载SNMP发行版二进制文件并将其复制到所需位置:
curl -o distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro
chmod +x distro
mv distro /usr/bin/distro
接下来,重新启动SNMP服务以应用更改:
systemctl restart snmpd
接下来,您还需要复制LibreNMS cron并将logrotate文件复制到所需位置。您可以使用以下命令复制它们:
cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms
cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms
接下来,将目录更改为librenms并使用以下命令安装必需的depemdency:
cd /opt/librenms
./scripts/composer_wrapper.php install --no-dev
安装完所有依赖项后,请更改librenms目录的所有权并使用以下命令提供必要的权限:
chown -R www-data:librenms /opt/librenms
chmod -R 775 /opt/librenms
setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
完成后,您可以继续下一步。
5、为LibreNMS配置Nginx
接下来,您将需要为LibreNMS创建一个Nginx虚拟主机配置文件。您可以使用以下命令创建它:
nano /etc/nginx/conf.d/librenms.conf
添加以下行:
server {
listen 80;
server_name librenms.example.com;
root /opt/librenms/html;
index index.php;

charset utf-8;
gzip on;
gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
location / {
try_files $uri u r i / / i n d e x . p h p ? uri/ /index.php? uri//index.php?query_string;
}
location /api/v0 {
try_files $uri u r i / / a p i v 0. p h p ? uri/ /api_v0.php? uri//apiv0.php?query_string;
}
location ~ .php {
include fastcgi.conf;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
location ~ /.ht {
deny all;
}
}
保存并关闭文件,然后使用以下命令检查Nginx是否存在语法错误:
nginx -t
您应该看到以下输出:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
接下来,重新启动Nginx服务以应用更改:
systemctl restart nginx
您还可以使用以下命令来验证Nginx服务状态:
systemctl status nginx
完成后,您可以继续下一步。
6、访问LibreNMS Web界面
现在,打开您的Web浏览器,并使用你的域名,访问LibreNMS 。您将打开“安装前检查”页面:
如何在Ubuntu 20.04上使用Nginx设置LibreNMS监控工具_第1张图片

确保已安装所有必需的扩展,然后单击数据库设置。您应该看到以下页面:
如何在Ubuntu 20.04上使用Nginx设置LibreNMS监控工具_第2张图片

提供您的数据库用户名,数据库名称,密码,然后单击“Check Credentials”按钮。一旦成功,您应该看到以下页面:
如何在Ubuntu 20.04上使用Nginx设置LibreNMS监控工具_第3张图片

现在,单击“Build Database”按钮。您应该看到以下页面:
如何在Ubuntu 20.04上使用Nginx设置LibreNMS监控工具_第4张图片

接下来,单击“Admin user creation” 创建”按钮。您应该看到以下页面:
如何在Ubuntu 20.04上使用Nginx设置LibreNMS监控工具_第5张图片

提供您的管理员用户名,电子邮件,密码,然后单击“ Add User”按钮。您应该看到以下页面:
如何在Ubuntu 20.04上使用Nginx设置LibreNMS监控工具_第6张图片

接下来,单击“ 完成 安装”按钮。您应该看到以下页面:
如何在Ubuntu 20.04上使用Nginx设置LibreNMS监控工具_第7张图片

接下来,单击“ 验证您的安装 ”。您应该看到LibreNMS登录页面:
如何在Ubuntu 20.04上使用Nginx设置LibreNMS监控工具_第8张图片

提供您的LibreNMS管理员用户名,密码,然后单击“ 登录”按钮。您应该看到LibreNMS仪表板:
如何在Ubuntu 20.04上使用Nginx设置LibreNMS监控工具_第9张图片

至此,您已在Ubuntu 20.04服务器上成功安装并配置了LibreNMS网络监视工具。现在,您可以添加设备或主机,并从LibreNMS仪表板开始监控。A5互联https://www.a5idc.net/

你可能感兴趣的:(如何在Ubuntu 20.04上使用Nginx设置LibreNMS监控工具)