Instalando o LibreNMS no Debian 10

Levando em conta de que você já tem o Debian 10 instalado, siga os passos abaixo.
No terminal, rode os seguintes comandos, como root:

apt install software-properties-common sudo vim curl composer fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nmap php php-fpm php-curl php-gd php-xml php-mysql php-pear python-memcache python-mysqldb python3-pip rrdtool snmp snmpd whois nginx-full

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

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

/opt/librenms/scripts/composer_wrapper.php install --no-dev

chown -R librenms:librenms /opt/librenms
chmod 770 /opt/librenms

CONFIGURANDO O MYSQL

systemctl restart mysql
mysql -uroot -p

Depois do comando acima, será pedido uma senha, mas pode teclar apenas ENTER, em seguida digite os comandos abaixo no prompt do MySQL

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

Na sequência edite o arquivo de configuração do servidor MySQL com o seu editor preferido, inserindo as duas linhas abaixo, na sessão [mysqld]

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

innodb_file_per_table=1
lower_case_table_names=0

Depois reinicie o serviço do MySQL

systemctl restart mysql

Agora edite cada um dos arquivos do PHP, para configurar a timezone, alterando o parâmetro date.timezone para a sua zona. No exemplo está a minha: America/Bahia

vim /etc/php/7.3/fpm/php.ini
vim /etc/php/7.3/cli/php.ini

date.timezone = America/Bahia

Agora reinicie o serviço do PHP

systemctl restart php7.3-fpm

Hora de configurar o domínio virtual para o site do LibreNMS. Edite o arquivo librenms.conf com o seu editor favorito inserindo as linhas abaixo:

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

server {
listen 80;
server_name librenms.seudominio.com.br;
root /opt/librenms/html;
index index.php;
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;
}
location ~ .php {
include fastcgi.conf;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
}
location ~ /.ht {
deny all;
}
}

Na sequência, apague o arquivo de configuração default e reinicie o serviço http

rm /etc/nginx/sites-enabled/default
systemctl restart nginx

Agora vamos configurar o servidor de SNMP

cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf
vim /etc/snmp/snmpd.conf

subistituia RANDOMSTRINGGOESHERE pela sua community default.

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

Cuidando do cron, logrotate e permissões:

cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms
cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms
chown -R librenms:librenms /opt/librenms

Para instalar, aponte o seu navegador para o instalador, conforme configurado no servidor http

http://librenms.seudominio.com.br/install.php

Altere as permissões do arquivo config.php:

chmod 775 /opt/librenms/rrd
chown -R librenms:librenms /opt/librenms
chmod -R ug=rwX /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/

Por fim, valide a instalação com os comandos abaixo, seguindo as sugestões de para correção, caso haja necessidade:

cd /opt/librenms
./validate.php

Boa instalação!

Roteamento: Introdução

Esse artigo é o primeiro de uma série sobre rede TCP/IP e roteamento. Nele vou introduzir alguns conceitos de rede, de endereçamento e de máscaras.

Para que dois computadores (ou dispositivos) comuniquem-se em rede, usualmente utiliza-se o protocolo TCP/IP. É uma forma que os computadores tem de conversarem entre si. Esse protocolo funciona através de um sistema de endereçamento numérico. Cada computador tem que ter um endereço, ou seja, um número diferente do outro. Esses números são representados no formato de quatro octetos separados por ponto, por exemplo: 192.0.20.1. Esses octetos são números que variam de zero 0 a 255, o que dá 256 números. São chamados de octetos por que 2 elevado a 8 é igual a 256. Como são 4 octetos de 256, temos 256 * 256 * 256 * 256 = 4.294.967.296 (aproximadamente 4 bilhões) de combinações possíveis. Os endereços vão de 0.0.0.0 a 255.255.255.255 em IPv4.

Continue lendo “Roteamento: Introdução”