Рубрики
syslog \ rsyslog \ zabbix

librenms / debian 11

Ссылки:

https://docs.librenms.org/Installation/Install-LibreNMS/

Что?

Что то похожие на zabbix

Желательные репы для debian 11

0. vim /etc/apt/sources.list
-------------------------
deb http://deb.debian.org/debian bullseye main contrib non-free
deb-src http://deb.debian.org/debian bullseye main contrib non-free
 
deb http://deb.debian.org/debian-security/ bullseye-security main contrib non-free
deb-src http://deb.debian.org/debian-security/ bullseye-security main contrib non-free
 
deb http://deb.debian.org/debian bullseye-updates main contrib non-free
deb-src http://deb.debian.org/debian bullseye-updates main contrib non-free
 
deb http://deb.debian.org/debian bullseye-backports main contrib non-free
deb-src http://deb.debian.org/debian bullseye-backports main contrib non-free
-------------------------
1. Обновляем пакеты
apt update && apt upgrade -y 

Установка:

!!! Рекомендуется ставить на чистую систему

0. Ставим пакеты:
# apt install acl curl composer fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php7.4-cli php7.4-curl php7.4-fpm php7.4-gd php7.4-gmp php7.4-json php7.4-mbstring php7.4-mysql php7.4-snmp php7.4-xml php7.4-zip python3-dotenv python3-pymysql python3-redis python3-setuptools python3-systemd python3-pip rrdtool snmp snmpd whois vim

apt install acl curl composer fping git graphviz imagemagick mariadb-client mariadb-server \
mtr-tiny nginx-full nmap php7.4-cli php7.4-curl php7.4-fpm php7.4-gd php7.4-gmp php7.4-json \ 
php7.4-mbstring php7.4-mysql php7.4-snmp php7.4-xml php7.4-zip python3-dotenv python3-pymysql \
python3-redis python3-setuptools python3-systemd python3-pip rrdtool snmp snmpd whois vim

1. Добавляем пользователя
useradd librenms -d /opt/librenms -M -r -s "$(which bash)"


2. Скачиваем дистрибутив
cd /opt
git clone https://github.com/librenms/librenms.git

3. Выставляем разрешения:
chown -R librenms:librenms /opt/librenms
chmod 771 /opt/librenms
setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/

4. Устанавливаем зависимости
!!! вводить по одной строчки
su - librenms
./scripts/composer_wrapper.php install --no-dev
exit

5. Иногда когда используется прокси пункт "4" не полностью срабатывает:
wget https://getcomposer.org/composer-stable.phar
mv composer-stable.phar /usr/bin/composer
chmod +x /usr/bin/composer

6. Настраиваем временную зону
!!! временные зоны смотреть тут  https://php.net/manual/en/timezones.php
!!! пример Europe/Moscow
Редактируем файлы:
vim /etc/php/7.4/fpm/php.ini
vim /etc/php/7.4/cli/php.ini
timedatectl set-timezone Europe/Moscow

7. Готовим базу:
После [mysqld] нужо добавить две строчки
vim /etc/mysql/mariadb.conf.d/50-server.cnf
-------------------------------------------
[mysqld]
innodb_file_per_table=1
lower_case_table_names=0
-------------------------------------------
Перезапустить базу:
systemctl enable mariadb
systemctl restart mariadb

8. Создаем пользователя и базу:
mysql -u root
CREATE DATABASE librenms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';
FLUSH PRIVILEGES;
exit

9. Меняем настройки  PHP-FPM
cp /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/fpm/pool.d/librenms.conf
vim /etc/php/7.4/fpm/pool.d/librenms.conf
-----------------------------------------
# Изменяем [www] на [librenms]:
[librenms]
# Изменяем user и group на "librenms":
user = librenms
group = librenms
# Изменяем listen на уникальный:
listen = /run/php-fpm-librenms.sock
-----------------------------------------

10. Создаем конфиг для nginx
vim /etc/nginx/sites-enabled/librenms.vhost
-------------------------------------------
server {
 listen      80;
 server_name librenms.example.com;
 server_name _;
 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 ~ [^/]\.php(/|$) {
  fastcgi_pass unix:/run/php-fpm-librenms.sock;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  include fastcgi.conf;
 }

 location ~ /\.(?!well-known).* {
  deny all;
 }
}
-------------------------------------------

11. Перезапускаем nginx и php7.4-fpm
rm /etc/nginx/sites-enabled/default
systemctl reload nginx
systemctl restart php7.4-fpm

12. Дополнительные фичи SNMP
ln -s /opt/librenms/lnms /usr/bin/lnms
#cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms
cp /opt/librenms/misc/lnms-completion.bash /etc/bash_completion.d/
cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf
vim /etc/snmp/snmpd.conf
-----------------------
# Находим RANDOMSTRINGGOESHERE и меняем на свое комьюнити
-----------------------

13. Добавляем агент librenms
curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro
chmod +x /usr/bin/distro
systemctl enable snmpd
systemctl restart snmpd

14. cron + logrotate
cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms
cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms

15. Далее заходим librenms.example.com (надеюсь догадались изменить на свой домен) и производим первую настройку
http://librenms.example.com/install

error virtual host

https://community.librenms.org/t/404-not-found-on-virtual-host/12771

Решение:
Зайти в веб морду
global-settings -> system -> server -> Specific URL
удалить http: