LibreNMS es una herramienta de monitoreo de red de descubrimiento automático de código abierto para servidores y hardware de red. Es compatible con una amplia gama de hardware de red como Cisco, Juniper, Brocade, Foundry, HP y sistemas operativos, incluido Linux. y ventanas. NMS de Libra es una bifurcación basada en la comunidad de la herramienta de monitoreo de red "Observium “, publicado bajo GPLv3.
LibreNMS puede descubrir toda su red usando CDP, FDP, LLDP, OSPF, BGP, SNMP y protocolos ARP. Su sistema de alertas se puede personalizar en gran medida para recibir alertas por correo electrónico, IRC, slack y más.
LibreNMS se basa en AMP (Apache ,
LEER :Cómo instalar la pila LAMP en CentOS 7/RHEL 7
LEER :Cómo instalar la pila LAMP en Ubuntu 16.04
Este tutorial cubre la instalación de LibreNMS en CentOS 7 /
Requisitos previos:
Inicie sesión como usuario raíz o cambie a usuario raíz ya que los comandos que ejecutamos durante el proceso de instalación requieren privilegios de raíz.
su -
O
sudo su -
Configurar repositorio EPEL en CentOS 7 / RHEL 7.
yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Instalar y configurar MySQL/MariaDB:
Como dije, LibreNMS necesita la pila AMP, así que instale MariaDB como un servidor de base de datos, una bifurcación de MySQL.
### CentOS 7 / RHEL 7 ### yum -y install mariadb-server mariadb ### Ubuntu 16.04 ### apt-get update apt-get -y install mariadb-server mariadb-client
Para iniciar MariaDB, ejecute:
### CentOS 7 / RHEL 7 ### systemctl restart mariadb ### Ubuntu 16.04 ### systemctl restart mysql
Para detener MariaDB, ejecute:
### CentOS 7 / RHEL 7 ### systemctl stop mariadb ### Ubuntu 16.04 ### systemctl stop mysql
Para reiniciar MariaDB, ejecute:
### CentOS 7 / RHEL 7 ### systemctl restart mariadb ### Ubuntu 16.04 ### systemctl restart mysql
Para verificar el estado de MariaDB, ejecute:
### CentOS 7 / RHEL 7 ### systemctl status mariadb ### Ubuntu 16.04 ### systemctl status mysql
Para iniciar automáticamente al iniciar el sistema, ejecute:
### CentOS 7 / RHEL 7 ### systemctl enable mariadb ### Ubuntu 16.04 ### systemctl enable mysql
Una vez que se complete la instalación de MySQL/MariaDB, ejecute mysql_secure_installation comando para proteger el servidor de la base de datos.
Crear base de datos para LibreNMS:
iniciar sesión en MySQL:
mysql -u root -p
Ahora, cree la base de datos para la instalación de LibreNMS con la siguiente información.
Nombre de la base de datos: librenmsdb
Nombre de usuario: librenmsuser
Contraseña de la base de datos: librenmspassword
CREATE DATABASE librenmsdb; CREATE USER 'librenmsuser'@'localhost' IDENTIFIED BY 'librenmspassword'; GRANT ALL PRIVILEGES ON librenmsdb.* TO 'librenmsuser'@'localhost'; exit
Deshabilite el modo estricto de MySQL para la instalación de LibreNMS.
### CentOS 7 / RHEL 7 ### vi /etc/my.cnf.d/server.cnf ### Ubuntu 16.04 ### nano /etc/mysql/mariadb.conf.d/50-server.cnf
Agregue las siguientes líneas a [mysqld] sección.
innodb_file_per_table=1 sql-mode="" lower_case_table_names=0
Reinicie el servicio MySQL.
### CentOS 7 / RHEL 7 ### systemctl restart mariadb ### Ubuntu 16.04 ### systemctl restart mysql
Instalar y configurar Apache:
Instale el servidor Apache y los paquetes PHP usando el siguiente comando.
### CentOS 7 / RHEL 7 ### yum -y install php php-cli php-gd php-mysql php-snmp php-pear php-curl php-common httpd net-snmp mariadb ImageMagick jwhois nmap mtr rrdtool MySQL-python net-snmp-utils cronie php-mcrypt fping git pear install Net_IPv4-1.3.4 pear install Net_IPv6-1.2.2b2 ### Ubuntu 16.04 ### apt-get -y install libapache2-mod-php7.0 php7.0-cli php7.0-mysql php7.0-gd php7.0-snmp php-pear php7.0-curl snmp graphviz php7.0-mcrypt php7.0-json apache2 fping imagemagick whois mtr-tiny nmap python-mysqldb snmpd php-net-ipv4 php-net-ipv6 rrdtool git a2enmod php7.0 a2dismod mpm_event a2enmod mpm_prefork phpenmod mcrypt
Establecer zona horaria en php.ini archivo.
Para Centos:/etc/php.ini
Para Ubuntu 16.04:/etc/php/7.0/apache2/php.ini y /etc/php/7.0/cli/php.ini
date.timezone = America/Chicago
Instalar y configurar LibreNMS:
Añadir usuario librenms
useradd librenms -d /opt/librenms -M -r
Hacer que el usuario de librenms forme parte del usuario de apache (CentOS:apache o Ubuntu:www-data ) grupo.
### CentOS 7 / RHEL 7 ### usermod -a -G librenms apache ### Ubuntu 16.04 ### usermod -a -G librenms www-data
Clone el repositorio de LibreNMS en el directorio /opt.
cd /opt git clone https://github.com/librenms/librenms.git librenms
Establezca el permiso.
cd /opt/librenms mkdir rrd logs chmod 775 rrd
Establecer propiedad.
chown -R librenms:librenms /opt/librenms
Cree un archivo de configuración de Apache para la interfaz web de LibreNMS.
### CentOS 7 / RHEL 7 ### vi /etc/httpd/conf.d/librenms.conf ### Ubuntu 16.04 ### nano /etc/apache2/sites-available/librenms.conf
Agregue la siguiente configuración al archivo anterior. Cambiar librenms.itzgeek.local según su requerimiento.
<VirtualHost *:80> DocumentRoot /opt/librenms/html/ ServerName librenms.itzgeek.local CustomLog /opt/librenms/logs/access_log combined ErrorLog /opt/librenms/logs/error_log AllowEncodedSlashes NoDecode <Directory "/opt/librenms/html/"> Require all granted AllowOverride All Options FollowSymLinks MultiViews </Directory> </VirtualHost>Opcional:deshabilite el sitio predeterminado en caso de que su servidor aloje solo este sitio.
### CentOS 7 / RHEL 7 ### rm -f /etc/httpd/conf.d/welcome.conf ### Ubuntu 16.04 ### a2dissite 000-default
SELinux (CentOS/RHEL):
Ejecute los siguientes comandos en la terminal para permitir que LibreNMS escriba o lea datos a través de SELinux .
yum install -y policycoreutils-python semanage fcontext -a -t httpd_sys_content_t '/opt/librenms/logs(/.*)?' semanage fcontext -a -t httpd_sys_rw_content_t '/opt/librenms/logs(/.*)?' restorecon -RFvv /opt/librenms/logs/ setsebool -P httpd_can_sendmail=1 setsebool -P httpd_can_network_connect=1
Reinicie los servicios de apache.
### CentOS 7 / RHEL 7 ### systemctl restart httpd ### Ubuntu 16.04 ### a2ensite librenms.conf a2enmod rewrite systemctl restart apache2
Habilite el servicio Apache en el arranque del sistema.
### CentOS 7 / RHEL 7 ### systemctl enable httpd ### Ubuntu 16.04 ### systemctl enable apache2
Cortafuegos:
Permita Apache a través del firewall para que el usuario pueda acceder al portal LibreNMS desde una máquina externa.
CortafuegosD:
firewall-cmd --permanent --add-port=80/tcp firewall-cmd --reload
UFW:
ufw allow 80/tcp ufw reloadPáginas:1 2