mirror of
https://git.reisber.space/Reisber/Personal
synced 2026-04-01 15:14:35 +00:00
110
linux/zabbix.md
Normal file
110
linux/zabbix.md
Normal file
@@ -0,0 +1,110 @@
|
||||
# Установка Zabix на Debian 12 в связке с Nginx
|
||||
|
||||
## Установка Zabbix 7 LTS Server и нужных пакетов
|
||||
Добавим официальный репозиторий Zabbix для Debian 12 (в данном случае будем ставить версию 7.0 LTS):
|
||||
```
|
||||
wget https://repo.zabbix.com/zabbix/7.0/debian/pool/main/z/zabbix-release/zabbix-release_7.0-1+debian12_all.deb
|
||||
dpkg -i zabbix-release_7.0-1+debian12_all.deb
|
||||
apt update && apt upgrade -y
|
||||
```
|
||||
Установим Zabbix Server, Nginx, Mysql и Zabbix agent:
|
||||
```
|
||||
apt install zabbix-server-mysql mariadb-server zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts zabbix-agent
|
||||
```
|
||||
|
||||
## Настройка MySQL
|
||||
```
|
||||
mysql_secure_installation
|
||||
```
|
||||
```
|
||||
Enter current password for root (enter for none):
|
||||
OK, successfully used password, moving on... Жмем ENTER так как у нас пока не задан пароль
|
||||
|
||||
Switch to unix_socket authentication [Y/n] n
|
||||
|
||||
Change the root password? [Y/n] y
|
||||
|
||||
СОЗДАЕМ ПАРОЛЬ ДЛЯ ROOT в Mysql
|
||||
|
||||
Remove anonymous users? [Y/n] y
|
||||
|
||||
Disallow root login remotely? [Y/n] y
|
||||
|
||||
Remove test database and access to it? [Y/n] y
|
||||
|
||||
Reload privilege tables now? [Y/n] y
|
||||
```
|
||||
Создаем базу данных, пользователя и пароль, даем все привилегии на базу пользователю zabbix:
|
||||
```
|
||||
mysql -uroot -p
|
||||
```
|
||||
```
|
||||
create database zabbix character set utf8mb4 collate utf8mb4_bin;
|
||||
create user zabbix@localhost identified by 'ПАРОЛЬ';
|
||||
grant all privileges on zabbix.* to zabbix@localhost;
|
||||
set global log_bin_trust_function_creators = 1;
|
||||
quit;
|
||||
```
|
||||
Импортируем начальную схему и данные (вводим недавно созданный пароль в Mysql для нашего пользователя zabbix):
|
||||
```
|
||||
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix
|
||||
```
|
||||
Выключаем опцию log_bin_trust_function_creators после импорта схемы базы данных:
|
||||
```
|
||||
mysql -uroot -p
|
||||
```
|
||||
```
|
||||
set global log_bin_trust_function_creators = 0;
|
||||
|
||||
quit;
|
||||
```
|
||||
Настраиваем конфигурационный файл zabbix_server.conf :
|
||||
```
|
||||
nano /etc/zabbix/zabbix_server.conf
|
||||
```
|
||||
|
||||
Проверяем DBName, DBUser, раскомментируем строку DBPassword и введем там пароль для пользователя zabbix, который мы сделали выше в mysql
|
||||
```
|
||||
DBName=zabbix
|
||||
DBUser=zabbix
|
||||
DBPassword=ВАШ ПАРОЛЬ
|
||||
```
|
||||
## Настройка PHP-FPM
|
||||
Установим Timezone в `/etc/zabbix/php-fmp.conf`, так-же поправим одну штучку, чтобы у нас потом не было проблем
|
||||
```
|
||||
php_value[session.save_path] = /var/lib/php/sessions #Это редачим
|
||||
php_value[date.timezone] = Europe/Moscow #Это добавляем
|
||||
```
|
||||
## Настройка Nginx
|
||||
Идём в nano /etc/zabbix/nginx.conf
|
||||
```
|
||||
server {
|
||||
listen 80;
|
||||
server_name zabbix.domain.ru;
|
||||
}
|
||||
```
|
||||
|
||||
Затем перезапускаем наши службы и добавляем их в автозагрузку
|
||||
```
|
||||
systemctl restart zabbix-server zabbix-agent nginx php8.2-fpm
|
||||
systemctl enable zabbix-server zabbix-agent nginx php8.2-fpm
|
||||
```
|
||||
## Получаем SSL сертификат (если все делается без домена, то этот этап можно и нужно пропустить и ходить по HTTP или по самописному серту)
|
||||
Установим Сертбот и плагин Nginx
|
||||
```
|
||||
apt install certbot python3-certbot-nginx
|
||||
|
||||
```
|
||||
Активируем процесс получения сетрификата
|
||||
```
|
||||
certbot run --nginx
|
||||
systemctl restart nginx
|
||||
```
|
||||
|
||||
|
||||
## Здесь потом будет часть про самоподисанный сертификат
|
||||
|
||||
|
||||
|
||||
|
||||
## После этого переходим в браузере на http/https:IP/domain_of_your_server
|
||||
Reference in New Issue
Block a user