Librenms - Uma ferramenta de monitoramento de rede totalmente em destaque para Linux

Librenms - Uma ferramenta de monitoramento de rede totalmente em destaque para Linux

Librenms é um sistema de monitoramento de rede baseado em php de código aberto, poderoso e rico em recursos, que usa o protocolo SNMP. Ele suporta uma ampla gama de sistemas operacionais, incluindo Linux, FreeBSD, bem como dispositivos de rede, incluindo Cisco, Juniper, Brocade, Foundry, HP e muitos outros.

Recursos Librenms:

  1. Ele descobre automaticamente toda uma rede usando esses protocolos: CDP, FDP, LLDP, OSPF, BGP, SNMP e ARP.
  2. Possui uma interface da web amigável para dispositivos móveis, com painéis personalizáveis.
  3. Suporta um agente UNIX.
  4. Suporta escala horizontal para expandir com sua rede.
  5. Suporta um sistema de alerta altamente flexível e personalizável; envia notificações por e -mail, IRC, folga e muito mais.
  6. Suporta uma API para gerenciar, representar e recuperar dados do seu sistema.
  7. Oferece um sistema de cobrança de tráfego.
  8. Também suporta um aplicativos Android e iOS que oferecem funcionalidades principais.
  9. Apoia a integração com NFSEN, Collectd, Smokeping, Rancid e Oxidized.
  10. Suporta vários métodos de autenticação, como MySQL, HTTP, LDAP, RADIUS e Active Directory.
  11. Permite atualização automática e muitos outros recursos.

Uma demonstração online está disponível para você tentar antes de instalar Librenms nos sistemas Linux.

URL de demonstração: https: // demonstração.Librenms.org/ Nome de usuário: demonstração Senha: demonstração 

Ambiente de teste:

  1. Ubuntu 16.04 com pilha Lemp
  2. CentOS 7 com pilha Lemp

Neste tutorial, aprenderemos a instalar Ferramenta de monitoramento de rede Librenms em um recém -instalado Ubuntu ou CENTOS Linux (as mesmas instruções também funcionam em Debian e RHEL distribuições baseadas).

OBSERVAÇÃO: Todas essas instruções neste artigo devem ser executadas como o raiz Usuário, se não estiver, use o comando sudo para obter privilégios de usuário root.

Etapa 1: Instale os pacotes necessários

1. Primeiro começo instalando todos os pacotes necessários usando o gerenciador de pacotes padrão, conforme mostrado.

No Ubuntu/Debian

$ sudo apt install compositor fping git graphviz imagemagick mariadb-client mariadb-servidor mtr tiny nginx-cheio nmap php7.0-cli php7.0-CURL PHP7.0-FPM PHP7.0-gd php7.0-MCRYPT PHP7.0-MYSQL PHP7.0-SNMP PHP7.0-xml php7.0-ZIP Python-Memcache Python-MysqldB rrdtool SNMP SNMPD WHOIS 

No CentOS/Rhel

# yum installel -lançamento # rpm -uvh https: // espelho.webtatic.com/yum/el7/webtatic-lançamento.rpm # yum install composer cronie fping git ImageMagick jwhois mariadb mariadb-server mtr MySQL-python net-snmp net-snmp-utils nginx nmap php72w php72w-cli php72w-common php72w-curl php72w-fpm php72w-gd php72w-mysql php72w-process php72w-snmp php72w-xml php72w-zip python-memcaching rrdtool 

2. Depois que todos os pacotes forem instalados, nginx, PHP-FPM, Mariadb e SNMP Os serviços serão iniciados e habilitados para iniciar automaticamente a hora da inicialização (esse é normalmente o caso Ubuntu), caso contrário, você pode executar os comandos abaixo para iniciar e habilitá -los.

------------ No Debian/Ubuntu ------------ $ sudo systemctl nginx start php7.0-fpm mysql snmp $ sudo systemctl atability nginx php7.0-FPM MySQL SNMP ------------ No CentOS/Rhel ------------ # Systemctl nginx Iniciar php-fpm mariadb snmpd # SystemCtl Ativar nginx php-fpm mariadb snmpd 

Etapa 2: Instale a ferramenta de monitoramento do Librenms

3. Em seguida, crie um usuário do sistema chamado Librenms, com o comando userAdd; onde o -M sinalizador desativa a criação do diretório doméstico do usuário e -r Permite a criação de uma conta do sistema. Em seguida, adicione o Librenms usuário do grupo www-data (sobre Ubuntu) ou nginx (sobre CENTOS) do seguinte modo.

------------ No Debian/Ubuntu ------------ $ sudo userAdd librenms -d /opt /librenms -m -r $ sudo userMod -a -g Librenms www -data ------------ No CentOS/Rhel ------------ # userAdd Librenms -d /opt /librenms -m -r # userMod -a -g Librenms nginx 

4. Em seguida, instale Librenms através da compositor comando como mostrado.

------------ No Debian/Ubuntu ------------ $ CD /OPT $ sudo compositor crie-project--no-dev --keep-vcs Librenms /Librenms Librenms Dev-Mestre ------------ No CentOS/Rhel ------------ # CD /OPT # compositor create-project--no-dev --keep-vcs Librenms /librenms Librenms Dev-mestre 

Etapa 3: Crie um banco de dados Librenms

5. Antes de começar a usar o Mariadb Servidor, você precisa proteger sua instalação, executar o script de segurança fornecido no pacote binário. Ele solicitará que você defina uma senha root, remova usuários anônimos, desative o login root remotamente e remova o banco de dados de teste.

Você pode iniciar o script emitindo o comando abaixo e responder a todas as perguntas com Sim/y.

$ sudo mysql_secure_installation [em Debian/Ubuntu] # mysql_secure_installation [em CENTOS/RHEL] 

6. Em seguida, faça o login para Mariadb Banco de dados para criar um banco de dados para Librenms (lembre -se de usar uma senha forte/segura em um ambiente de produção).

$ sudo mysql -u root -p Mariadb [(nenhum)]> Criar banco de dados Librenms Set de caracteres utf8 colle utf8_unicode_ci; Mariadb [(nenhum)]> Criar usuário 'Librenms'@' localhost 'identificado por'[Email protegido]!#@%$ libre'; Mariadb [(nenhum)]> Conceder todos os privilégios em librenms.* Para 'librenms'@'localhost'; Mariadb [(nenhum)]> Privilégios descarregados; Mariadb [(nenhum)]> saída 

7. Depois, desative Mysql Modo rigoroso por enquanto (compatibilidade com o modo rigoroso MySQL ainda está para ser adicionado).

$ sudo vim/etc/mysql/mariadb.conf.d/50-server.CNF [ON Debian/Ubuntu] # vi /etc /meu.CNF [ON CENTOS/RHEL] 

Dentro do [MySqld] Seção, adicione.

innodb_file_per_table = 1 Lower_Case_Table_Names = 0 

Em seguida, reinicie o servidor de banco de dados para efetuar as alterações.

$ sudo systemctl reinicie o mysql [em Debian/Ubuntu] # SystemCtl reinicie o mariadb [em CENTOS/RHEL] 

Etapa 4: Configurar e iniciar o PHP-FPM

8. Em seguida, defina seu data.fuso horário no php.ini para o seu fuso horário atual, por exemplo “África/Kampala”, como mostrado na captura de tela a seguir.

------------ No Debian/Ubuntu ------------ $ sudo vim/etc/php/7.0/FPM/PHP.ini $ sudo vim/etc/php/7.0/CLI/PHP.ini ------------ No CentOS/Rhel ------------ # vi /etc /php.ini 
Defina o fuso horário no arquivo php

9. Em seguida, ative o McRypt Módulo PHP In Ubuntu e reinicie PHP-FPM como mostrado.

------------ No Debian/Ubuntu ------------ $ sudo phpenmod mcrypt $ sudo systemctl reiniciar php7.0-fpm 

10. Sobre CENTOS/RHEL você precisa fazer as seguintes alterações em PHP-FPM arquivo de configuração.

# vi /etc /php-fpm.d/www.conf 

Fazer as seguintes alterações.

; user = upache user = nginx group = apache; Mantenha o grupo como apache; ouça = 127.0.0.1: 9000 Ouça =/var/run/php-fpm/php7.2-fpm.Sock Ouça.proprietário = nginx ouça.grupo = nginx ouça.modo = 0660 

11. Reiniciar PHP-FPM serviço como mostrado.

# SystemCtl Reinicie o PHP-FPM 

Etapa 5: Configure o nginx para Librenms

12. Nesta etapa, você precisa configurar um Nginx bloco de servidor para Librenms Para acessar a interface da usuário da web. Criar uma .conf Arquive como mostrado.

$ sudo vim/etc/nginx/conf.D/Librenms.conf [on Debian/Ubuntu] # vi/etc/nginx/conf.D/Librenms.conf [on CENTOS/RHEL] 

Adicione o seguinte Config, editar nome do servidor como requerido.

servidor ouça 80; nome do servidor Librenms.exemplo.com; root/opt/librenms/html; ÍNDICE ÍNDICE.php; CHARSET UTF-8; gzip on; gzip_types text/css aplicativo/javascript text/javascript Application/x-javascript imagem/svg+xml text/texto simples/text/xsd text/xsl/xml imagem/x-icon; Localização / Try_files $ URI $ URI / / ÍNDICE.php?$ query_string;  localização /api /v0 try_files $ uri $ uri / /api_v0.php?$ query_string;  localização ~ \.php inclua fastcgi.conf; fastcgi_split_path_info ^(.+\.php) (//.+) $; fastcgi_pass unix:/var/run/php/php7.0-fpm.meia;  localização ~ /\.ht negar tudo;  

13. Em seguida, salve e saia do arquivo. Remova também a configuração padrão do bloco do servidor e reinicie o servidor nginx.

------------ No Debian/Ubuntu ------------ $ sudo rm/etc/nginx/sites-inabled/padrão $ sudo systemctl reiniciar nginx ------------ No CentOS/Rhel ------------ # SystemCtl Reiniciar nginx 

OBSERVAÇÃO: Sobre CENTOS/RHEL, Você precisará desativar o site padrão Seção, se este é o único site que você está hospedando. Exclua a seção do servidor de /etc/nginx/nginx.conf arquivo.

14. Também em CENTOS/RHEL, você precisa instalar o Ferramenta de política para Selinux e configurar o contextos Necessário de Librenms usando os seguintes comandos.

------------ No CentOS/Rhel ------------ # yum install 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/ # SEMANAGE FCONTEXT -A -T HTTPD_SYS_CONTENT_T'/OPT/LIBRENMS/RRD (/.*)?' # semanage fcontext -a -t httpd_sys_rw_content_t'/opt/librenms/rrd (////.*)?' # RESTORECON -RFVV/OPT/LIBRENMS/RRD/ # SetSeBool -p httpd_can_sendmail = 1 # setSeBool -p httpd_execmem 1 

15. Permitir fping criando o arquivo http_fping.tt com o seguinte conteúdo.

No CentOS/Rhel
Módulo http_fping 1.0; requer digite httpd_t; Capacidade de classe net_raw; classe RAWIP_SOCKET getOpt Create Setopt Write Read;  #============= httpd_t ============= Permitir httpd_t self: capacidade net_raw; Permitir httpd_t self: rawip_socket getOpt Create Setopt Write Read; 

16. Em seguida, execute esses comandos.

------------ No CentOS/Rhel ------------ # checkModule -m -m -o http_fping.mod http_fping.tt # semodule_package -o http_fping.pp -m http_fping.mod # semodule -i http_fping.pp 

17. Se você estiver usando o firewall CENTOS/RHEL, Ativar acesso http/https através do firewall.

------------ No CentOS/Rhel ------------ # firewall-cmd-zone público-add-service http # firewall-cmd --permanent-zone público-add-service http # firewall-cmd-zone público-add-service https # firewall-cmd- -Permanent-Zone Public --Add-Service HTTPS 

Etapa 6: Configurar SNMPD para Librenms

18. Agora use a amostra SNMP Configuration para criar seu arquivo de configuração e abri -lo para edição, como segue.

------------ No Debian/Ubuntu ------------ $ sudo cp/opt/librenms/snmpd.conf.exemplo/etc/snmp/snmpd.conf $ sudo vim/etc/snmp/snmpd.conf ------------ No CentOS/Rhel ------------ # cp/opt/librenms/snmpd.conf.exemplo/etc/snmp/snmpd.conf # vi/etc/snmp/snmpd.conf 

Encontre a string RandomstringGoSehere e mude para sua própria corda de comunidade, conforme mostrado na captura de tela.

Defina a string snmp

19. Em seguida, faça o download de um script de shell no seu sistema, que ajuda a detectar qual sistema operacional e, se for Linux, ele detectará qual distribuição do Linux, você está usando:

------------ No Debian/Ubuntu ------------ $ sudo curl -o/usr/bin/distro https: // raw.GithubUserContent.com/librenms/librenms-agent/master/snmp/distro $ sudo chmod +x/usr/bin/distro $ sudo systemctl reiniciar snmpd ------------ No CentOS/Rhel ------------ # Curl -o/usr/bin/distro https: // RAW.GithubUserContent.com/librenms/librenms-agent/master/snmp/distro # chmod +x/usr/bin/distro # systemctl reiniciar snmpd 

Etapa 7: Crie Cron e configure Logrotate

20. Agora execute o comando abaixo para configurar um trabalho de cron para Librenms.

# cp/opt/librenms/librenms.não raiz.cron /etc /cron.D/Librenms 

21. Em seguida, tudo Librenms Os logs são gravados em /opt/librenms/logs, você pode precisar configurar esses logs para serem rotatados automaticamente, usando o arquivo de configuração do Logrotate fornecido, como este.

# cp/opt/librenms/misc/librenms.Logrotato /etc /Logrotate.D/Librenms 

Em seguida, defina as permissões apropriadas no diretório raiz de instalação do Librenms e arquivos de log.

------------ No Debian/Ubuntu ------------ $ sudo chown -R Librenms: librenms/opt/librenms $ sudo setfacl -d -m g :: rwx/opt/librenms/rrd/opt/librenms/logs $ sudo setfacl -r -m g :: rwx/ot/librenms/rdd /opt/librenms/logs ------------ No CentOS/Rhel ------------ # CHOWN -R Librenms: Librenms/Opt/Librenms # setfacl -d -m g :: rwx/opt/librenms/rrd/opt/librenms/logs # setfacl -r -m g :: rwx/opt/librenms/rrd/opt/ Librenms/logs 

Etapa 8: Access Librenms Web Installer

22. Em seguida, use o seguinte URL para acessar o instalador da web e siga as instruções na tela.

http: // Librenms.Tecmint.LAN/instalação.php 

Para que este endereço funcione em uma máquina local, você precisa configurar um DNS local usando o arquivo hosts (/etc/hosts), para fins de resolução ou teste de domínio local antes de ir ao ar.

192.168.43.31 Tecmint.LAN 192.168.43.31 Librenms.Tecmint.LAN 
Configure o DNS local para domínio

23. Você verá a página de boas -vindas da instalação, conforme mostrado na captura de tela a seguir, clique Próximo estágio continuar.

Instalador da Web Librenms

24. Em seguida, insira as configurações (host de banco de dados, porta, nome de usuário e senha de usuário) para o banco de dados Librenms e clique Próximo estágio para prosseguir.

Configurações do banco de dados Librenms

25. O instalador da web começará agora a importar o banco de dados MySQL, isso levará algum tempo. Observe que o processo tentará pausar em determinados pontos, clique em Tente novamente Para continuar com o processo de importação.

Importação de banco de dados Librenms

26. Depois que a importação do banco de dados estiver concluída, você verá a mensagem “O banco de dados está atualizado!”, Como mostrado na captura de tela abaixo. Em seguida, clique em GOTO Add User para prosseguir.

Banco de dados Librenms atualizado

27. Em seguida, adicione um Librenms Usuário, especifique o nome de usuário, senha e e -mail e clique em Adicionar usuário para efetuar as mudanças.

Adicione o usuário do Librenms

28. Agora clique em Criar o Librenms Configuração do seu sistema, clicando Gerar configuração.

Gere Librenms Config Configuração do Librenms

29. Depois que a configuração for gerada, como mostrado no Screenhot anterior, copie -o e salve -o no diretório raiz da sua instalação, em um arquivo chamado /opt/librenms/config.php.

# vi/opt/librenms/config.php 
Configuração do Librenms
 

30. Salve e feche o arquivo. Em seguida, retorne ao instalador da web para continuar com o processo de instalação, clicando Termine a instalação.

Conclua a instalação do Librenms

31. Agora você Librenms A instalação está completa, você pode clicar em “Validar sua instalação e corrigir quaisquer problemas”, A página de login deve aparecer.

Validar Librenms Instalar

32. Em seguida, insira suas credenciais de usuário para acessar a página de validação.

Página de login Librenms

33. Do processo de validação de instalação, Librenms Descobriu dois problemas, um é que os dispositivos não foram adicionados (este é um aviso por enquanto) e, em segundo lugar, não definimos a permissão apropriada no arquivo de configuração (/opt/librenms/config.php) que foi adicionado manualmente, conforme mostrado na captura de tela abaixo.

Problemas de permissão Librenms

Agora execute o seguinte comando para definir a permissão correta no arquivo de configuração.

$ sudo chown -r librenms: librenms/opt/librenms/config.php 

34. Para adicionar dispositivos, vá para: http: // Librenms.Tecmint.LAN/AddHost. Depois de adicionar dispositivos, você pode ir à página inicial e adicionar vários painéis.

Painel de Librenms

É isso! Você pode encontrar mais informações, incluindo instalação e configuração na documentação do Librenms em https: // docs.Librenms.org/.

Librenms é um sistema de monitoramento de rede totalmente em destaque que suporta uma variedade de hardware de rede. Esperamos que este tenha sido um guia de instalação lúcido, se você tiver alguma dúvida, chegue -nos através do formulário de feedback abaixo.