| Version 54 (modified by , 5 years ago) ( diff ) |
|---|
This will guide you through installing LibreNMS setup on Ubuntu 20.04 LTS server with NGINX running as the web server.
sudo su
apt install software-properties-common
add-apt-repository universe
apt update
apt install acl curl composer fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php7.4-cli php7.4-curl php7.4-fpm php7.4-gd php7.4-json php7.4-mbstring php7.4-mysql php7.4-snmp php7.4-xml php7.4-zip rrdtool snmp snmpd whois unzip python3-pymysql python3-dotenv python3-redis python3-setuptools python3-systemd
Adding user into LibreNMS
useradd librenms -d /opt/librenms -M -r -s "$(which bash)"
Change the directory to
cd /opt
Then run this script
git clone https://github.com/librenms/librenms.git
After that, Setting Permission for LibreNMS
chown -R librenms:librenms /opt/librenms
chmod 771 /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/
su - librenms
./scripts/composer_wrapper.php install --no-dev
exit
If this script fails, The workaround is to install the composer package manually.
In this link you can select your timezone https://php.net/manual/en/timezones.php (Asia/ Colombo)
Ensure date.timezone is set in php.ini to your preferred time zone. (you can use nano or vi to edit)
vi /etc/php/7.4/fpm/php.ini
vi /etc/php/7.4/cli/php.ini
set the time zone
timedatectl set-timezone Etc/UTC (Asia/ Colombo)
;date.timezone = Asia/Colombo (remove ";" and add Asia/ Colombo)
Use vi or nano to edit
vi /etc/mysql/mariadb.conf.d/50-server.cnf
Add these within the [mysqld]
innodb_file_per_table=1
lower_case_table_names=0
after adding the above lines, save and exit. Then, enable and restart the DB
systemctl enable mariadb
systemctl restart mariadb
loggin to the db
mysql -u root
now you have to create a database for LibreNMS
cp /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/fpm/pool.d/librenms.conf
vi /etc/php/7.4/fpm/pool.d/librenms.conf
Change [www] to [librenms]
[librenms]
Change user and group to "librenms":
user = librenms
group = librenms
Change listen to a unique name:
listen = /run/php-fpm-librenms.sock
vi /etc/nginx/conf.d/librenms.conf
edit server_name as required:
restart nginx and php
rm /etc/nginx/sites-enabled/default
systemctl restart nginx
systemctl restart php7.4-fpm
ln -s /opt/librenms/lnms /usr/bin/lnms
cp /opt/librenms/misc/lnms-completion.bash /etc/bash_completion.d/
cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf
vi /etc/snmp/snmpd.conf
RANDOMSTRINGGOESHERE and set your own community string
curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro
chmod +x /usr/bin/distro
systemctl enable snmpd
systemctl restart snmpd
cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms
LibreNMS keeps logs in /opt/librenms/logs. Over time these can become large and be rotated out. To rotate out the old logs you can use the provided logrotate config file:
cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms
chown librenms:librenms /opt/librenms/config.php
Use your Ip address in the browser and you will load the below setup page.
sudo su - librenms
./validate.php
Once you finish setting up , its time to log into the system. Use your IP address in the browser and you will load the below page.In here the web installer will prerequisite check.
Next, Provide MySQL server connection details and build a database for LibreNMS network monitoring software.
Creating User
Finish Installation
Click on 'Validate your Install' Then, you will direct to LibreNMS login page. Use your credentials to log in.
To add a device click on Devices and click on Add Devices
Once you click on Add Device you will appear the below page. By entering Hostname or IP and Community you can add a device to the system.
Download all attachments as: .zip