Установка Zabbix 2.4 на FreeBSD10.1

На саму установку FreeBSD я отвлекаться не буду так как данной информации в интернете хватает.

Если вы только поставили FreeBSD, то перед установкой Zabbix, рекомендуется провести первичную настройку. Данная настройка проходит в два этапа.

1. Установка и настройка утилиты portsnap
2. Установка mc (данный пункт по желанию)

И так логинимся под суперпользователем (root)

Приступаем к установке Portsnap данная утилита предназначена для построения и обновления древа портов. Делается это при помощи команды

```
# portsnap fetch && portsnap extract

```

На этом с portsnap все

При последующих обновлениях достаточно будет выполнить команду

```
# portsnap fetch update

```

Установка mc (аналог total commander)

```
# pkg install mc

```

Если же вы хотите пакет собирать самостоятельно, то тогда переходим в каталог

```
# cd /usr/ports

```

узнаем где находится mc

```
# whereis mc

```

и начинаем установку

```
# make -C /usr/ports/misc/mc/ install clean

```

после установки, выполним команду

```
# rehash

```

Примечание: второй метод, намного дольше, но он вам позволит настроить программу под вас. Так что выбор за вами)))

Теперь приступим не посредственно к установки Zabbix.

Для установки zabbix сервера нам потребуется база данных, мы будем использовать MySQL56.

```
# pkg install mysql56-server

```

Добавим сервис в автозагрузку, для этого нужно добавить запись `mysql_enable="YES"` в файл `/etc/rc.conf`

```
# echo 'mysql_enable="YES"'>>/etc/rc.conf

```

Запускаем MySQL

```
# /usr/local/etc/rc.d/mysql-server start

```

Назначаем пароль для root в MySQL

```
# mysqladmin -u root password 123

```

**Устанавливаем zabbix сервер**

```
# pkg install zabbix24-server

```

Теперь нужно подключиться к базе, создать новую базу данных ***zabbix*** и нового пользователя ***zabbix*** с паролем ***zabbix***.

```
# mysql -u root -p
Enter password:
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
mysql> flush privileges;
mysql> exit

```

Импортируем начальную схему и данные из `/usr/local/share/zabbix24/server/database/mysql`

```
# mysql -u zabbix -pzabbix zabbix < data.sql

```

Теперь нужно создать конфигурационный фал сервера `zabbix_server.conf` из файла образца в `/usr/local/etc/zabbix24`

```
# cp zabbix_server.conf.sample zabbix_server.conf

```

После создания файла его нужно отредактировать.

```
# ee zabbix_server.conf

```

Указываем параметры:

`*DBName=zabbix*
DBUser=zabbix

DBPassword=zabbix

HousekeepingFrequency=2

FpingLocation=/usr/local/sbin/fping`

Добавляем zabbix\_server в автозагрузку

```
# echo 'zabbix_server_enable="YES"'>>/etc/rc.conf

```

Запускаем сервер zabbix

```
# /usr/local/etc/rc.d/zabbix_server start

```

На этом установка zabbix сервера завершена.

**Устанавливаем агента zabbix:**

```
# pkg install zabbix24-agent

```

Создаем конфигурационный файл для агента `zabbix_agentd.conf` в `/usr/local/etc/zabbix24` из файла образца

```
# cp zabbix_agentd.conf.sample zabbix_agentd.conf

```

Отредактируем его

```
# ee zabbix_agentd.conf

```

Указываем IP сервера и имя сервера

`*Server=192.168.1.55*`

`*Hostname=Zabbix server*`

Причем  Hostname может быть не доменным, а произвольным.

Добавим агент в автозагрузку.

```
# echo 'zabbix_agentd_enable="YES"'>>/etc/rc.conf

```

Запускаем агент

```
# /usr/local/etc/rc.d/zabbix_agentd start

```

Переходим к настройке**веб-интерфейса**zabbix:

Для запуска веб-интерфейса нам потребуется Apache.

```
# pkg install apache24

```

Добавим его в автозагрузку

```
# echo 'apache24_enable="YES"'>>/etc/rc.conf

```

Устанавливаем zabbix frontend

```
# pkg install zabbix24-frontend

```

Вместе с zabbix -frontend был установлен и php56, но для его работы в Apache нам потребуется mod\_php56

```
# pkg install mod_php56

```

Для работы PHP нужно создать файл `php.ini` в `/usr/local/etc`

```
# cd /usr/local/etc
# cp php.ini-production php.ini

```

Вносим в него правки

```
# ee php.ini

```

`*max\_execution\_time = 300*`
`max_input_time = 300`

`memory_limit = 128M`

`post_max_size = 16M`

`upload_max_filesize = 2M`

`always_populate_raw_post_data = -1`

`date.timezone = Europe/Moscow`

**Переходим к настройке Apache:**

Редактируем файл конфигурации `httрd.conf`

```
# ee /usr/local/etc/apache24/httpd.сonf

```

найти и раскомментировать строку `ServerName www.Example.com:80`

В конец файла добавить следующие строки:

`*<FilesMatch "\.php$">*
    SetHandler application/x-httpd-php

</FilesMatch>

<FilesMatch "\.phps$">

    SetHandler application/x-httpd-php-source

</FilesMatch>

 Alias /zabbix "/usr/local/www/zabbix24/"

 <Directory "/usr/local/www/zabbix24/">

 DirectoryIndex index.php

 Options none

 AllowOverride Limit

 Order Deny,Allow

 Require all granted

 </Directory>`

Запускаем Apache

```
# /usr/local/etc/rc.d/apache24 start

```

Теперь заходим через браузер

http://192.168.1.55/zabbix

и видим приглашение zabbix

на следующем шаге zabbix проверяет соответствие настроек php минимальным требованиям

Далее нужно указать пользователя и пароль для подключения к БД. Указываем User **zabbix** и Password **zabbix.** Жмем Test Connection и если все OK переходим к следующему шагу.

Далее можно указать хост и порт сервера zabbix, в нашем случае оставляем как есть и переходим к следующему шагу.

на следующем шаге проверяем указанные ранее параметры и жмем next

Теперь zabbix создал конфигурационный файл, который нужно скачать и разместить на сервере в `/usr/local/www/zabbix24/conf`

Создаем файл zabbic.conf.php

```
# ee /usr/local/www/zabbix24/conf/zabbix.conf.php

```

Добавляем в него содержимое скаченного файла:

`*<?php*
// Zabbix GUI configuration file.

global $DB;`

`*$DB['TYPE']     = 'MYSQL';*
$DB['SERVER']   = 'localhost';

$DB['PORT']     = '0';

$DB['DATABASE'] = 'zabbix';

$DB['USER']     = 'zabbix';

$DB['PASSWORD'] = 'zabbix';`

`*// Schema name. Used for IBM DB2 and PostgreSQL.*
$DB['SCHEMA'] = '';`

`*$ZBX\_SERVER      = 'localhost';*
$ZBX_SERVER_PORT = '10051';

$ZBX_SERVER_NAME = '';`

`*$IMAGE\_FORMAT\_DEFAULT = IMAGE\_FORMAT\_PNG;*
?>`

Жмем **Retry** и должны увидеть следующую картину:

Жмем Finish и на этом установка завершена.

Теперь можно зайти на сервер, username **Admin** и password **zabbix**