NOTA: Estas instrucciones asumen que se esta en el usuario root de la máquina
Instalar paquetes requeridos
apt install software-properties-common
add-apt-repository universe
apt update
apt install curl apache2 composer fping git graphviz imagemagick libapache2-mod-php7.2 mariadb-client mariadb-server mtr-tiny nmap php7.2-cli php7.2-curl php7.2-gd php7.2-json php7.2-mbstring php7.2-mysql php7.2-snmp php7.2-xml php7.2-zip python-memcache python-mysqldb rrdtool snmp snmpd whois
Añadir usuario de librenms
useradd librenms -d /opt/librenms -M -r
usermod -a -G librenms www-data
Descargar LibreNMS
cd /opt
git clone https://github.com/librenms/librenms.git
cp -r /opt/librenms /var/www/html/
cd /var/www/html
Dar permisos
chown -R librenms:librenms /var/www/html/librenms
chmod 770 /var/www/html/
setfacl -d -m g::rwx /var/www/html/librenms/rrd /var/www/html/librenms/logs /var/www/html/librenms/bootstrap/cache/ /var/www/html/librenms/storage/
setfacl -R -m g::rwx /var/www/html/librenms/rrd /var/www/html/librenms/logs /var/www/html/librenms/bootstrap/cache/ /var/www/html/librenms/storage/
Instalar dependencias de PHP
su - librenms
./scripts/composer_wrapper.php install --no-dev
exit
Configurar Base de Datos
systemctl restart mysql
mysql -uroot -p
NOTA: Cambie los datos que vienen por defecto
CREATE DATABASE librenms CHARACTER SET utf8 COLLATE utf8_unicode_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';
FLUSH PRIVILEGES;
exit;
nano /etc/mysql/mariadb.conf.d/50-server.cnf
En la sección [mysqld] agregue:
innodb_file_per_table=1
lower_case_table_names=0
systemctl restart mysql
Configuración de PHP
Asegurarse de establecer el timezone en el archivo php.ini
nano /etc/php/7.2/apache2/php.ini
nano /etc/php/7.2/cli/php.ini
a2enmod php7.2
a2dismod mpm_event
a2enmod mpm_prefork
Configurar Apache
nano /etc/apache2/sites-available/librenms.conf
Añadir lo siguiente en el archivo
<VirtualHost *:80>
DocumentRoot /var/www/html/librenms/html
ServerName librenms.example.com
AllowEncodedSlashes NoDecode
<Directory "/var/www/html/librenms/html/">
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
</Directory>
</VirtualHost>
Si este es el único sitio que el servidor esta hosteando, entonces se puede deshabilitar el sitio por defecto a2dissite 000-default
a2ensite librenms.conf
a2enmod rewrite
systemctl restart apache2
Configurar snmpd
Editar el texto que dice RANDOMSTRINGGOESHERE y establezca el nombre de su comunidad
cp /var/www/html/librenms/snmpd.conf.example /etc/snmp/snmpd.conf
nano /etc/snmp/snmpd.conf
Descargue el agente de snmp y reinicie el servicio
curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro
chmod +x /usr/bin/distro
systemctl restart snmpd
Copiar los siguientes archivos necesarios
cp /var/www/html/librenms/librenms.nonroot.cron /etc/cron.d/librenms
cp /var/www/html/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms
Antes de acceder al medio de instalación web se debe dar los permisos a la carpeta de /logs
cd /librenms
chmod 777 /logs
Acceder a la configuración Web
Entrar al navegador y colocar la dirección http://librenms.example.com/install.php