Monitoramento · 10 min read · Nov 17, 2025

Como Configurar a Ferramenta de Monitoramento LibreNMS com Nginx no Ubuntu 16.04 LTS

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, etc.

Neste tutorial, eu vou mostrar como instalar e configurar a ferramenta de monitoramento de código aberto ‘LibreNMS’ usando Nginx como servidor web, MariaDB como banco de dados e o servidor Ubuntu 16.04 como nosso servidor principal. Vamos guiá-lo passo a passo sobre como instalar e configurar ‘LibreNMS’ no servidor Ubuntu 16.04 Xenial Xerus.

O que faremos

  1. Instalar Pacotes
  2. Instalar Servidor Web Nginx
  3. Instalar e Configurar PHP-FPM
  4. Instalar e Configurar MariaDB
  5. Baixar e Configurar LibreNMS
  6. Instalador Web do LibreNMS
  7. Configuração final

Pré-requisitos

  • Servidor Ubuntu 16.04
  • Privilégios de Root

Passo 1 - Instalar Pacotes

O primeiro passo que devemos fazer para instalar as Ferramentas de Monitoramento LibreNMS é instalar alguns pacotes necessários no servidor. Conecte-se ao seu servidor e atualize o repositório.

ssh root@hakase-labs-server  
sudo apt update

Instale todos os pacotes necessários para o LibreNMS do repositório Ubuntu usando o seguinte comando.

apt install fping imagemagick whois mtr-tiny nmap python-mysqldb snmpd  rrdtool git snmp graphviz

Após a instalação ser concluída, vá para o próximo passo.

Passo 2 - Instalar Servidor Web Nginx

Neste tutorial, estaremos executando o LibreNMS sob o servidor web Nginx. O Nginx é um servidor web poderoso que está disponível nos repositórios do Ubuntu.

Instale o nginx usando o comando apt do repositório da seguinte maneira.

apt install nginx

Quando terminar, inicie o serviço e habilite-o para ser executado automaticamente toda vez que o sistema iniciar.

systemctl start nginx  
systemctl enable nginx

O servidor web Nginx está rodando na porta padrão 80. Podemos verificar a porta usando o comando netstat e verificar o Nginx usando o comando curl para obter o código de status HTTP, conforme mostrado abaixo.

netstat -plntu | grep 80  
curl -I localhost

Verificar portas com netstat

A instalação do Nginx foi concluída.

Passo 3 - Instalar e Configurar PHP-FPM

LibreNMS é uma ferramenta de monitoramento de aplicação web baseada em PHP. Ele oferece suporte para a nova versão do PHP 7.0, e nós a usaremos para este guia.

Instale o PHP, PHP-FPM e todas as extensões/módulos necessários para a instalação do LibreNMS usando o comando apt abaixo.

apt install php7.0-cli php7.0-mysql php7.0-gd php7.0-snmp php-pear php7.0-curl php7.0-fpm php7.0-mcrypt php7.0-json php-net-ipv4 php-net-ipv6

Em seguida, precisamos adicionar algumas configurações aos arquivos php.ini. 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.

Verifique o fuso horário atualmente usado pelo sistema com o seguinte comando.

timedatectl

Você deve obter um resultado semelhante ao seguinte.

Verificar configurações de fuso horário

Você pode ver que o servidor está usando o fuso horário ‘Europe/Paris‘.

Agora vá para o diretório de configuração do PHP e edite os arquivos php.ini para a configuração cli e fpm.

cd /etc/php/7.0/  
vim fpm/php.ini  
vim cli/php.ini

Descomente a linha ‘date.time‘ e altere o valor para o nosso fuso horário do sistema ‘Europe/Paris‘.

date.time = Europe/Paris

Descomente a configuração cgi abaixo, altere o valor para 0.

cgi.fix_pathinfo = 0

Salve e saia.

Toda a configuração está completa. Agora inicie o serviço e habilite-o para ser iniciado toda vez que o sistema for inicializado usando os seguintes comandos systemctl.

systemctl start php7.0-fpm  
systemctl enable php7.0-fpm

O PHP-FPM agora está em execução no servidor ubuntu - está rodando sob o arquivo sock. Verifique com o comando netstat.

netstat -pl | grep php

Verificar processo PHP-FPM

Passo 4 - Instalar e Configurar MariaDB

Neste passo, vamos instalar o mariadb-server para o banco de dados do LibreNMS. Vamos instalar, configurar e criar um novo banco de dados e um novo usuário para a instalação do LibreNMS.

Instale o mariadb-server do repositório ubuntu usando o comando apt abaixo.

apt install mariadb-server mariadb-client mariadb

Quando terminar, inicie o serviço e habilite-o para ser executado automaticamente na inicialização do sistema, algo que você pode fazer usando os seguintes comandos systemctl.

systemctl start mysql  
systemctl enable mysql

O servidor de banco de dados mariadb agora está em execução. Em seguida, precisamos configurar a senha root para o mariadb. Podemos usar o comando ‘mysql_secure_installation’ abaixo para configurar a senha root.

mysql_secure_installation

Você será solicitado a inserir a nova senha root - digite sua senha e pressione ‘Enter’ para continuar.

Definir senha root? [Y/n] Y  
Remover usuários anônimos? [Y/n] Y  
Desabilitar login root remotamente? [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

A senha root para o mariadb foi configurada.

Em seguida, devemos criar um novo banco de dados e usuário para o LibreNMS. Vamos criar um novo banco de dados chamado ‘librenms’, um novo usuário chamado ‘librenms’ com a senha ‘hakase-labs123’.

Faça login no shell do mariadb usando o seguinte comando.

mysql -u root -p  
Digite a senha ROOT:

Execute as consultas do mariadb abaixo para criar um novo banco de dados e usuário, e conceder todos os privilégios no banco de dados ao novo usuário.

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 banco de dados e usuário para o LibreNMS foi criado.

Adicionar um banco de dados

Para a instalação do LibreNMS, precisamos adicionar algumas configurações ao arquivo de configuração. Vá para o diretório ‘/etc/mysql/‘ e edite o arquivo de configuração do mariadb.

cd /etc/mysql/  
vim mariadb.conf.d/50-server.cnf

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

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

Salve e saia.

Alterar configurações do MariaDB

Agora aplique a nova configuração reiniciando o serviço.

systemctl restart mysql

A configuração do banco de dados mariadb foi concluída.

Passo 5 - Baixar e Configurar LibreNMS

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

- Adicionar Novo Usuário e Baixar o LibreNMS

Crie um novo usuário do sistema chamado ‘librenms’, defina ‘/opt/librenms’ como o diretório home padrão para o usuário e atribua o novo usuário ‘librenms’ ao grupo www-data.

Execute o seguinte comando para fazer tudo isso.

useradd librenms -d /opt/librenms -M -r  
usermod -a -G librenms www-data

Agora vá para o diretório ‘/opt/‘ e baixe o código-fonte do LibreNMS usando o comando git.

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

Adicionar usuário librenms

Em seguida, crie um novo diretório para arquivos de log do libreNMS e arquivos rrd.

mkdir -p /opt/librenms/{logs,rrd}

Altere as permissões de propriedade do diretório ‘rrd’ para ‘775’ e altere o proprietário do diretório ‘librenms’ para o usuário e grupo ‘librenms’.

chmod -R 775 /opt/librenms/rrd/  
chown -R librenms:librenms /opt/librenms/

Um novo ‘librenms’ foi criado e o código-fonte do LibreNMS foi baixado.

- Configurar Virtualhost do LibreNMS

Vá para o diretório de configuração do ‘nginx’ e crie um novo arquivo de host virtual ‘librenms’ com vim.

cd /etc/nginx/  
vim sites-available/librenms

Cole a seguinte configuração do Virtual host do LibreNMS lá.

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:/run/php/php7.0-fpm.sock;  
    }  
  
    location ~ /\.ht {  
        deny all;  
    }  
}

Salve e saia. Agora, ative o virtualhost.

ln -s /etc/nginx/sites-available/librenms /etc/nginx/sites-enabled/

Teste a configuração do nginx e certifique-se de que não haja erro. Em seguida, reinicie o serviço.

ginx -t  
systemctl restart nginx

- Configurar Firewall UFW

Adicione novas portas ao firewall. Adicione novo ssh, http, https e a porta usada pelo snmpd 161 tipo udp ao firewall ufw.

Execute os seguintes comandos ufw.

ufw allow ssh  
ufw allow http  
ufw allow https  
ufw allow 161/udp

Configurar firewall UFW

Inicie o firewall ufw com o comando ufw enable conforme mostrado abaixo.

ufw enable

Digite ‘y’ e pressione ‘Enter’ para confirmar. Inicie e habilite-o para ser iniciado toda vez que o sistema for inicializado.

Se você quiser ver o status do firewall, execute o comando ‘ufw status’.

ufw status

Você obterá o status do firewall - ativo ou inativo - e a lista de portas e serviços adicionados ao firewall.

Listar configuração do firewall

Passo 6 - Instalador Web do LibreNMS

Após todas as etapas acima serem concluídas, precisamos instalar o LibreNMS através do navegador web. Abra seu navegador web, digite o nome de domínio do LibreNMS ‘librenms.hakase-labs.co’ na barra de endereços e pressione Enter.

- Verificando Módulos PHP

Você será redirecionado para a página install.php mostrando o resultado das verificações de suporte a módulos PHP. Certifique-se de que todos os status estão verdes, conforme mostrado abaixo.

Instalador web do LibreNMS

Clique em ‘Próxima Etapa‘ para continuar.

- Configuração do Banco de Dados

Preencha todas as informações do banco de dados com seu próprio db.

  • Usuário DB: librenms
  • Senha DB: hakase-labs123
  • Nome DB: librenms

Definir detalhes do banco de dados

E clique em ‘Próxima Etapa‘.

- Importando Banco de Dados MySQL

Aguarde o script do instalador importar o exemplo do banco de dados para nosso banco de dados - não feche a aba do navegador durante este processo.

Etapa 2 concluída

Após todo o banco de dados ser importado, clique em ‘Ir para Adicionar Usuário‘.

- Adicionar Usuário Admin

Aqui, digite seu usuário admin, e-mail e senha.

Adicionar o usuário admin

Clique em ‘Adicionar Usuário‘.

- Gerar Configuração do LibreNMS

Gerar configuração do LibreNMS

Clique no botão ‘Gerar Config‘.

E você obterá um arquivo de configuração semelhante ao mostrado abaixo.

Salvar configuração em arquivo

Copie o script de configuração php e volte para sua sessão ssh. Vá para o diretório ‘/opt/librenms’ e crie o arquivo ‘config.php’ manualmente usando vim.

cd /etc/librenms/  
vim config.php

Cole a configuração lá e altere a propriedade do arquivo para o usuário e grupo librenms.

chown librenms:librenms config.php

Volte para seu navegador web e clique no botão ‘Finalizar Instalação‘.

Agora você chega à última página do instalador web do librenms - veja abaixo.

Instalação concluída

Passo 7 - Configuração final

Após a instalação através do navegador web ser concluída, precisamos fazer alguns outros passos.

- Configurar SNMP

Faça backup do arquivo de configuração padrão e copie a configuração de exemplo para o diretório ‘/etc/snmp/‘.

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

Edite a nova configuração com vim.

vim /etc/snmp/snmpd.conf

Substitua a linha ‘RANDOMSTRINGGOESHERE’ pelo seu próprio nome de comunidade ‘hakaselabs’, conforme mostrado abaixo.

com2sec readonly  default         hakaselabs

Salve e saia.

Arquivo de configuração SNMP

Em seguida, precisamos baixar o script de detecção de distribuição. Baixe-o usando curl, depois torne o script executável e, finalmente, reinicie o serviço snmp.

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

- Configuração do Crontab e Logrotate

Vá para o diretório librenms e copie a configuração de exemplo para Crontab e Logrotate.

cd /opt/librenms/

Copie a configuração.

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

Agora reinicie o serviço cron e recarregue a configuração do logrotate.

systemctl restart cron  
logrotate -f /etc/logrotate.conf

- Validar Configuração

Aguarde um tempo até que o script cron esteja sendo executado no sistema. Uma vez feito isso, valide com o script ‘validate.php’.

Vá para o diretório librenms e execute o script de validação.

cd /opt/librenms/  
./validate.php

Se sua instalação estiver correta, você obterá o resultado mostrado abaixo.

Validar configuração do LibreNMS

A instalação do LibreNMS com o servidor web Nginx no Ubuntu 16.04 está completa.

Referência

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.