Monitoramento · 11 min read · Nov 03, 2025

Como Instalar a Ferramenta de Monitoramento LibreNMS com Nginx no CentOS 7

LibreNMS é uma ferramenta de monitoramento de código aberto baseada em PHP/MYSQL/SNMP. É um sistema de monitoramento de rede completo que oferece suporte a uma ampla gama de hardware de rede e sistemas operacionais, incluindo FreeBSD, Cisco, Linux, HP e muito mais.

Neste tutorial, mostraremos como instalar e configurar o LibreNMS usando o Nginx como servidor web e o MariaDB como banco de dados. Usaremos o servidor CentOS 7 como nosso servidor principal.

O que faremos

  1. Instalar pacotes necessários
  2. Instalar o servidor web Nginx
  3. Instalar e configurar o PHP-FPM
  4. Instalar e configurar o MariaDB
  5. Baixar e configurar o LibreNMS
  6. Instalação baseada na web do LibreNMS
  7. Configuração final

Pré-requisitos

  • Servidor CentOS 7
  • Privilégios de root

Passo 1 - Instalar pacotes necessários

Antes de instalar o LibreNMS no servidor, precisamos instalar alguns pacotes, incluindo ImageMagick, rrdtool, SNMP, git e mais. O seguinte comando deve fazer o necessário:

yum -y install net-snmp ImageMagick jwhois nmap mtr rrdtool MySQL-python net-snmp-utils cronie fping git

Se tudo correr bem, prossiga para o próximo passo.

Passo 2 - Instalar o servidor web Nginx

Neste passo, instalaremos o epel-repository para a instalação do servidor web nginx. O repositório EPEL (Extra Packages for Enterprise Linux) é um repositório adicional para sistemas operacionais baseados em rpm, incluindo o CentOS 7.

Instale o repositório EPEL usando o comando yum abaixo.

yum -y install epel-release

Agora instale o nginx.

yum -y install nginx

Após a instalação do nginx, inicie o serviço e habilite-o para ser executado automaticamente na inicialização usando os seguintes comandos systemctl.

systemctl start nginx  
systemctl enable nginx

Assim, o servidor web Nginx foi instalado no sistema a partir do repositório EPEL.

Iniciar e verificar o servidor web Nginx

Passo 3 - Instalar e configurar o PHP-FPM

Antes de prosseguirmos, aqui estão algumas informações que vale a pena compartilhar:

Usaremos a versão PHP-FPM 7 para a instalação do LibreNMS. Todos os pacotes PHP 7 para o CentOS 7 estão disponíveis em um repositório de terceiros, e usaremos a versão PHP 7 do repositório ‘webtatic’.

Então vamos começar.

Adicione o repositório PHP 7 webtatic ao sistema usando o seguinte comando rpm.

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Instale o PHP 7 e todas as extensões necessárias do repositório wetatic usando yum.

yum -y install php70w php70w-cli php70w-gd php70w-mysql php70w-snmp php70w-pear php70w-curl php70w-common php70w-fpm php70w-mcrypt

Agora atualize o repositório PEAR e instale algumas extensões PEAR (PHP Extension and Application Repository) usando o comando pear.

pear channel-update pear.php.net  
pear install Net_IPv4-1.3.4  
pear install Net_IPv6-1.2.2b2

Instalar alguns pacotes pear

Assim, você pode instalar todos os pacotes PHP necessários.

Em seguida, configure o PHP-FPM para a instalação do LibreNMS. Precisamos definir o fuso horário padrão no arquivo php.ini e garantir que o fuso horário corresponda ao fuso horário atual usado pelo sistema. Você pode verificar o fuso horário atual usado pelo seu sistema através do seguinte comando.

timedatectl

A seguinte captura de tela mostra o comando acima em ação:

usar o comando timedatectl

Então estamos usando o fuso horário ‘Europe/Paris‘.

Agora, edite o arquivo ‘/etc/php.ini’ usando vim.

vim /etc/php.ini

Em seguida, descomente a linha ‘date.timezone’ e dê um valor com o fuso horário do servidor ‘Europe/Paris’.

data.timezone = Europe/Paris

Da mesma forma, descomente a linha cgi e mude o valor para ‘0‘.

cgi.fix_pathinfo=0

É isso. Agora salve as alterações e saia do editor.

Em seguida, precisamos definir como o PHP-FPM está sendo executado no sistema. No nosso caso, o PHP-FPM será executado sob o arquivo ‘sock’ em vez da porta do servidor.

Edite o arquivo ‘www.conf’ com vim para configurar o PHP-FPM.

vim /etc/php-fpm.d/www.conf

Mude a linha da porta ‘listen’ para o arquivo sock como abaixo.

listen = /var/run/php-fpm/php7.0-fpm.sock

Descomente a linha ‘listen’ para o proprietário, grupo e a permissão do arquivo sock como configuração abaixo.

listen.owner = nginx  
listen.group = nginx  
listen.mode = 0660

É isso. Agora salve as alterações e saia do editor.

Assim, a configuração do PHP-FPM está agora completa. Inicie o serviço e habilite-o para ser executado automaticamente na inicialização usando os seguintes comandos.

systemctl start php-fpm  
systemctl enable php-fpm

Agora o PHP-FPM está sendo executado sob o arquivo sock. Você pode verificar isso com o comando netstat.

netstat -pl | grep php

Certifique-se de ter o resultado do arquivo ‘/var/run/php-fpm/php7.0-fpm.sock’.

Passo 4 - Instalar e configurar o MariaDB

O LibreNMS usa o banco de dados MySQL para armazenar todos os dados. Para este guia, usaremos a versão do banco de dados MariaDB. Está disponível no repositório, e precisamos instalar e adicionar algumas configurações para a instalação do LibreNMS, incluindo adicionar o banco de dados e o usuário para o LibreNMS.

Instale o MariaDB usando o comando yum abaixo.

yum -y install mariadb mariadb-server

Inicie o serviço MariaDB e habilite-o para iniciar automaticamente na inicialização.

systemctl start mariadb  
systemctl enable mariadb

Configurar banco de dados MariaDB

Agora configure a senha root do MariaDB usando o comando ‘mysql_secure_installation’ abaixo.

mysql_secure_installation

Você será perguntado sobre a nova senha root para o banco de dados MariaDB, juntamente com algumas outras perguntas.

Digite ‘Y’ e pressione Enter para confirmar.

Definir senha root? [Y/n] Y  
 Remover usuários anônimos? [Y/n] Y  
 Proibir login remoto do root? [Y/n] Y  
 Remover banco de dados de teste e acesso a ele? [Y/n] Y  
 Recarregar tabelas de privilégios agora? [Y/n] Y

Assim, o MariaDB foi instalado. Agora precisamos criar um novo banco de dados e um novo usuário para o LibreNMS. Faça login no shell de comando mysql usando o cliente mysql e com sua nova senha.

mysql -u root -p

Crie um novo banco de dados chamado ‘librenms‘, um novo usuário ‘librenms‘ com a senha ‘hakase-labs123‘.

Crie tudo isso usando as consultas MySQL abaixo.

CREATE DATABASE librenms CHARACTER SET utf8 COLLATE utf8_unicode_ci;  
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'hakase-labs123';  
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';  
FLUSH PRIVILEGES;

Um novo usuário e banco de dados para a instalação do LibreNMS foram criados.

Adicionar usuário MySQL librenms

Agora você precisa editar o arquivo my.cnf para adicionar uma nova configuração mysql. Edite o arquivo ‘/etc/my.cnf’ usando vim.

vim /etc/my.cnf

Cole a seguinte configuração adicional na seção ‘[mysqld]‘.

innodb_file_per_table=1  
 sql-mode=""  
 lower_case_table_names=0

Salve e saia do vim, e então reinicie o servidor mariadb.

systemctl restart mariadb

Configurar configurações do MariaDB

Passo 5 - Baixar e configurar o LibreNMS

Neste passo, configuraremos o sistema para a instalação do LibreNMS.

- Adicionar usuário e baixar o código-fonte do LibreNMS

Crie um novo usuário do sistema chamado ‘librenms’, defina o diretório home para o usuário no diretório ‘/opt/librenms’ e, finalmente, adicione o usuário ‘librenms’ ao grupo ‘nginx’.

useradd librenms -d /opt/librenms -M -r  
usermod -a -G librenms nginx

Vá para o diretório ‘/opt/‘ e baixe o código-fonte do LibreNMS usando o comando git clone como abaixo.

cd /opt/  
git clone https://github.com/librenms/librenms.git librenms

Instalar LibreNMS

Crie um novo diretório para logs do LibreNMS e arquivos rrd.

mkdir -p /opt/librenms/logs/  
mkdir -p /opt/librenms/rrd/  
chmod 775 /opt/librenms/rrd/

Agora mude a propriedade de todos os arquivos e diretórios sob o diretório ‘/opt/librenms’ para o usuário e grupo ‘librenms’.

chown -R librenms:librenms /opt/librenms/

- Configurar o host virtual do LibreNMS

O LibreNMS é um aplicativo baseado na web e estamos usando um servidor web Nginx para hospedá-lo.

Crie um novo arquivo de host virtual ‘librenms.conf’ no diretório ‘conf.d’ do nginx.

vim /etc/nginx/conf.d/librenms.conf

Cole a configuração abaixo.

server {  
   
     # Adicione seu próprio nome de domínio  
     listen      80;  
     server_name librenms.irsyadf.me;  
   
     # Diretório raiz do LibreNMS  
     root        /opt/librenms/html;  
     index       index.php;  
   
     # Logs do LibreNMS  
     access_log  /opt/librenms/logs/access_log;  
     error_log   /opt/librenms/logs/error_log;  
       
     # Habilitando a compressão Gzip no Nginx  
     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 $uri/ /index.php?$query_string;  
     }  
       
     location /api/v0 {  
         try_files $uri $uri/ /api_v0.php?$query_string;  
     }  
   
     # PHP-FPM lida com todos os pedidos de arquivos .php  
     location ~ \.php {  
         include fastcgi.conf;  
         fastcgi_split_path_info ^(.+\.php)(/.+)$;  
         fastcgi_pass unix:/var/run/php-fpm/php7.0-fpm.sock;  
     }  
  
     location ~ /\.ht {  
         deny all;  
     }  
 }

É isso. Agora salve e saia do Vim.

Teste a configuração do nginx e certifique-se de que não há erro. Em seguida, reinicie o servidor web.

nginx -t  
systemctl restart nginx

- Configuração do Firewalld

Certifique-se de que os pacotes firewalld estão instalados em seu sistema. Se não, você pode instalar o firewalld usando o seguinte comando yum.

yum -y install firewalld

Inicie o firewalld e habilite-o para ser executado na inicialização usando os seguintes comandos systemctl.

systemctl start firewalld  
systemctl enable firewalld

Configurar o Firewall

Abra as novas portas HTTP, HTTPS e SNMP 161/udp usando o comando firewall-cmd como mostrado abaixo.

firewall-cmd --add-service=http --permanent  
firewall-cmd --add-service=https --permanent  
firewall-cmd --add-port=161/udp --permanent

Aplique a configuração recarregando o firewalld e verifique todos os serviços.

firewall-cmd --reload  
firewall-cmd --list-all

Certifique-se de que os serviços HTTP e HTTPS estão na lista.

Passo 6 - Instalação baseada na web do LibreNMS

Abra seu navegador web e digite a URL do LibreNMS na barra de endereços.

http://librenms.hakase-labs.me/

Você será redirecionado para a página de instalação ‘install.php’.

- Verificar suporte ao módulo PHP

Certifique-se de que todos os módulos e extensões php necessários estão instalados no sistema.

Instalador baseado na web do LibreNMS

Em seguida, clique em ‘Próxima Etapa’ para continuar.

- Configuração do Banco de Dados

Digite os detalhes do banco de dados abaixo:

  1. Usuário DB: ‘librenms
  2. Nome DB: ‘librenms
  3. Senha DB: ‘hakase-labs123

Configurar o banco de dados

E clique em ‘Próxima Etapa’ para continuar.

- Importar Banco de Dados MySQL

Não feche a página de instalação, pois ela exibirá a importação do banco de dados. Certifique-se de que não há erros.

Importar esquema do banco de dados MySQL

Quando o processo estiver completo, clique em ‘Ir para Adicionar Usuário’ para adicionar um novo usuário administrador.

- Adicionar Usuário Administrador

Digite seu usuário administrador, e-mail e senha.

Adicionar o usuário administrador

Clique em ‘Adicionar Usuário’ para continuar com a instalação.

- Gerar arquivo de configuração

Gerar o arquivo de configuração

Clique no botão ‘Gerar Config’, e você verá uma página semelhante à seguinte.

Configurações do arquivo

Copie o código php que está na caixa e crie um novo arquivo ‘config.php’ no diretório ‘/opt/librenms/‘.

cd /opt/librenms/  
vim config.php

Cole no novo arquivo o código que você acabou de copiar e, em seguida, salve e saia do editor. Agora mude as permissões de propriedade do arquivo config.php para o usuário e grupo ‘librenms’.

chown librenms:librenms config.php

Salvar o arquivo de configuração no shell

Volte ao seu navegador e clique no botão ‘Finalizar Instalação’ presente na parte inferior da página. Você verá uma mensagem de boas-vindas semelhante à seguinte.

Ferramenta de Monitoramento LibreNMS foi instalada

Neste ponto, terminamos a instalação baseada na web. Volte ao terminal/shell e adicione mais configurações.

Passo 7 - Configuração final

Neste passo, adicionaremos algumas configurações para nossa instalação do LibreNMS.

- Definir Comando fping

Defina o comando ‘fping’ editando o arquivo de configuração do LibreNMS. Vá para o diretório ‘/opt/librenms/‘ e edite o arquivo config.php usando o editor vim.

cd /opt/librenms/  
vim config.php

Adicione a seguinte linha ao final do arquivo.

$config['fping'] = "/usr/sbin/fping";

Salve e saia do editor.

- Configuração SNMP

Faça backup do arquivo snmp.conf padrão no diretório ‘/etc/snmp/‘ e copie um novo do diretório librenms.

mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.asli  
cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf

Edite a nova configuração.

vim /etc/snmp/snmpd.conf

Mude o texto ‘RANDOMSTRINGGOESHERE’ para o seu próprio nome de comunidade como abaixo.

com2sec readonly  default         hakaselabs

É isso. Salve e saia do Vim.

Definir string aleatória

Em seguida, baixe o script librenms-agent para detectar qual sistema operacional você adicionou. Se você adicionar o sistema operacional Linux, o script detectará a distribuição Linux específica também.

Baixe o script usando curl e torne-o executável.

curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro  
chmod +x /usr/bin/distro

Agora reinicie o serviço SNMP usando o seguinte comando systemctl.

systemctl restart snmpd

- Configurar Logrotate para o LibreNMS

O LibreNMS fornece configuração para a configuração do logrotate, e está no diretório ‘/opt/librenms/misc’.

Copie o exemplo de configuração para o diretório ‘/etc/logrotate.d’.

cp misc/librenms.logrotate /etc/logrotate.d/librenms

- Configuração do cronjob do LibreNMS

Vá para o diretório ‘opt/librenms’ e copie o script crontab ‘librenms.nonroot.cron’ para o diretório ‘cron.d’.

cd /opt/librenms/  
cp librenms.nonroot.cron /etc/cron.d/librenms

Espere alguns minutos para que o script seja executado automaticamente.

- Validar Configuração do LibreNMS

Para verificar a instalação, use o script validate.php. Vá para o diretório ‘/opt/librenms/‘ e execute o script.

cd /opt/librenms/  
./validate.php

Assumindo que você não encontre erros, você deve ver uma saída semelhante à seguinte:

Validar a configuração

Assim, isso completa a instalação do LibreNMS com o servidor web Nginx no CentOS 7.

Referência

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.