Поставлена задача организовать беспроводную сеть для рабочего процесса в организации (не для телефонов сотрудников). Для этой цели решено использовать CAPsMAN (Controlled Access Point system Manager) – диспетчер управляемых точек доступа. Он позволяет централизовать управление беспроводной сетью и при необходимости выполнять обработку данных. Все управляемые точки доступа (Controlled Access Points или CAPs) получают от него настройки. У всех точек доступа один общий SSID. Так же диспетчер позволяет централизованно обновлять прошивки управляемых точек. Плавное переключение клиента от точки со слабым сигналом к точке с хорошим сигналом без разрыва соединения, системой не предусматривается. В настоящее время (2022г) в CAPsMAN нет функционала бесшовного wi-fi.
Архив метки: Mikrotik
Zabbix — система мониторинга оборудования в ЛВС (на ОС Ubuntu20).
Zabbix – это система мониторинга сетевого оборудования с широкими возможностями. Официальный сайт.
В описании ниже пример установки Zabbix-сервера в нашей организации. Информация поступает на сервер от различного сетевого оборудования внутри локальной сети. От Интернета сеть отделена сетевым экраном и считается условно безопасной. Вопросы информационной безопасности в описании не рассматриваются, но обязательны.
Сервер установлен на ПК со следующими параметрами:
Процессор: Intel Core I5-3450 3.1ГГцх4.
ОЗУ: 8Гб.
HDD: 2Tb.
Сетевая карта 1Гбит/сек.
Сервер подключен в сеть, ему раздается IP-адрес по DHCP с доступом к Интернету.
Этот же компьютер используется в нашей локальной сети как сервер сбора логов.
Скачиваем Ubuntu 20. Desktop image с графическим интерфейсом.
Создаем установочную флэшку с помощью ПО Rufus и переносим скачанный образ на нее.
Загружаемся с установочной флэшки.
Выбираем – Try or Install Ubuntu.
Далее откроется мастер установки.
Выбраны следующие параметры:
Install Ubuntu – установить Ubuntu.
English – язык системы.
Keyboard layout – English – язык клавиатуры.
Normal installation – тип установки – нормальная.
Download updates while installing Ubuntu – загрузить обновления вовремя установки (если подключен Интернет).
Erase disk and install Ubuntu – стереть диск и установить Ubuntu (все данные с диска удаляются!).
Where are you – выбираем часовой пояс.
Who are you – имя ПК, логин, пароль.
После установки вытаскиваем из ПК флэшку и нажимаем кнопку «Ввод» на клавиатуре.
Система установлена. Вводим указанный ранее логин и пароль и попадаем на рабочий стол.
Компьютер подключен в сеть. IP-адрес присвоился по DHCP.
Запускаем терминал Ctrl+Alt+T.
Входим от имени root.
|
1
| sudo su — root |
Вводим пароль учетной записи. Ввод пароля не отображается.
Далее все действия в терминале выполняются с правами root.
Обновляем систему.
|
1 2
| apt—get update apt—get upgrade —y |
Настройка удаленного доступа.
Подключение будет происходить от ПК с Windows 10 к ПК с Ubuntu 20.
Запускаем терминал. Вводим команды.
|
1
| apt install xrdp —y |
Выполнится установка.
Выходим из профиля.
Power Off >> Log Out.
(если не выйти, то по RDP не войти)
Подключаемся по RDP из Windows на IP-адрес ПК с Ubuntu.
Win+R >> mstsc.
Вводим IP-адрес.
Вводим логин-пароль (без указания домена).
Попадаем на рабочий стол Ubuntu.
Для работы Zabbix потребуются следующие компоненты:
Apache
PHP
MYSQL
Запускаем терминал Ctrl+Alt+T. Входим от имени root.
|
1
| sudo su — root |
Вводим пароль учетной записи. Ввод пароля не отображается.
Далее все действия в терминале выполняются с правами root.
Установка Apach2.
Устанавливаем apach2.
|
1
| apt—get install apache2 —y |
Включаем автозапуск.
|
1
| systemctl enable apache2 |
Запускаем службу
|
1
| systemctl start apache2 |
Проверяем статус
|
1
| systemctl status apache2 |
Active (running) – значит работает.
Можно посмотреть страницу приветствия перейдя в браузере по адресу:
|
1
| http://localhost |
Установка PHP.
Информация о пакете php.
|
1
| apt show php |
(текущая версия 7.4)
Можно посмотреть какие есть модули.
|
1
| apt—cache search php7.4 |
Установка.
|
1
| apt—get install php7.4 —y |
Установка дополнительных модулей.
Для работы, ускорения и прочих особенностей выбраны сл. модули.
|
1
| apt—get install libapache2—mod—php7.4 |
(работа с apache, возможно он уже установлен автоматически)
|
1
| apt—get install php7.4—mysql |
(работа с bd mysql)
|
1
| apt—get install php7.4—curl |
(библиотека для передачи через протоколы http https)
|
1
| apt—get install php7.4—xml |
(взаимодействие с xml)
|
1
| apt—get install php7.4—gd |
(работа с графикой)
Эти два модуля возможно уже присутствуют.
|
1
| apt—get install php7.4—json |
(сериализация объектов в текст )
|
1
| apt—get install php7.4—opcache |
(кэш кода php для ускорения обработки большого кол-ва запросов)
Проверка работы php.
В командной строке создаем файл info.php
|
1
| vi /var/www/html/info.php |
Вставляем в файл содержание.
|
1
| <?php phpinfo(); ?> |
Выходим из редактора vi
esc
|
1
| :wq |
(сохранить и закрыть)
В браузере проверяем ссылку
|
1
| http://localhost/info.php |
Должна открыться страница параметров php.
Установка MYSQL.
|
1
| apt—get install mysql—server —y |
Добавление в автозагрузку и старт
|
1 2
| systemctl enable mysql systemctl start mysql |
Проверка версии mysql
|
1
| mysqld —version |
Проверка статуса mysql
|
1
| systemctl status mysql |
Active (running) – работает.
После всех установок нужно перезапустить веб-сервер
|
1
| systemctl restart apache2 |
Установка Zabbix.
Переходим на официальный сайт и выбираем компоненты для установки.
Выбраны компоненты как на картинке.

На основании выбранных компонентов ниже генерируется код для установки. Копируем его по шагам в терминал.
OS Distribution Ubuntu или Ubuntu (arm64) выбирается в зависимости от разрядности процессора.
Устанавливаем репозиторий Zabbix и выполняем обновление списка пакетов для установки.
Скачиваем.
|
1
| wget https://repo.zabbix.com/zabbix/6.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.2-2%2Bubuntu20.04_all.deb |
Устанавливаем пакет zabbix
|
1
| dpkg —i zabbix—release_6.2—2+ubuntu20.04_all.deb |
Обновляем списки пакетов.
|
1
| apt update |
Устанавливаем компоненты Zabbix.
Сервер.
|
1
| apt install zabbix—server—mysql —y |
Веб-интерфейс
|
1
| apt install zabbix—frontend—php —y |
Настройка для apache.
|
1
| apt install zabbix—apache—conf —y |
Настройка-скрипт для импорта данных в базу sql.
|
1
| apt install zabbix—sql—scripts —y |
Агент.
|
1
| apt install zabbix—agent —y |
Создадим базу данных с названием zabbix, пользователя с паролем и назначим права.
Заходим в mysql с правами root.
|
1
| mysql —u root |
(пароля нет)
|
1
| create database zabbix character set utf8mb4 collate utf8mb4_bin; |
|
1
| create user zabbix@localhost identified by ‘password’; |
|
1
| grant all privileges on zabbix.* to zabbix@localhost; |
|
1
| set global log_bin_trust_function_creators = 1; |
|
1
| flush privileges; |
|
1
| exit; |
Импорт схемы.
|
1
| zcat /usr/share/zabbix—sql—scripts/mysql/server.sql.gz | mysql —default—character—set=utf8mb4 —uzabbix —p zabbix |
(вводим пароль password, ждем пару минут)
Отключение настройки log_bin_trust_function_creators
|
1
| mysql —root |
|
1
| set global log_bin_trust_function_creators = 0; |
|
1
| exit; |
Добавляем пароль БД в конфигурацию Zabbix.
Используем редактор vi.
|
1
| vi /etc/zabbix/zabbix_server.conf |
Вставляем в файл строку.
|
1
| DBPasswor=password |
Сохранить и выйти.
|
1
| :wq |

Пароль — password представлен для примера, в реальной ситуации нужно выбирать сложный пароль.
Перезапускаем программы
|
1
| systemctl restart zabbix—server apache2 |
Автозапуск при включении.
|
1
| systemctl enable zabbix—server zabbix—agent |
Статус сервера
|
1
| systemctl status zabbix—server |

В браузере переходим по адресу.
|
1
| http://localhost/zabbix |

Нажимаем кнопку «Next step».
Проверка предварительных требований. Нажимаем «Next step».
Следующий шаг – параметры базы данных.
Вводим пароль – password. Нажимаем кнопку «Next step».

На следующем шаге указываем имя сервера и часовой пояс. Нажимаем «Next step».
Проверяем всю введенную информацию. Нажимаем «Next step».
Завершаем настройку нажав «Finish».
На странице авторизации вводим учетные данные Zabbix.
Логин: Admin.
Пароль: zabbix.
Установка завершена.
Русификация.
Выполняем команду для изменения локальных настроек.
|
1
| dpkg—reconfigure locales |
Выбираем стрелками вверх-вниз ru_RU.UTF-8 UTF-8 и ru_RU ISO-8859-5. Отмечаем на пробел. Нажимаем TAB, чтоб перейти на ОК. Нажимаем Ввод.


Перезапускаем apache и zabbix
|
1
| systemctl restart zabbix—server apache2 |
В настройках профиля выбираем русский язык.

Интерфейс становится на русском.
Удаление Zabbix.
|
1
| apt—get purge zabbix* |
Удаление компонентов Zabbix.
|
1 2 3 4 5
| apt remove zabbix—server—mysql —y apt remove zabbix—frontend—php —y apt remove zabbix—apache—conf —y apt remove zabbix—sql—scripts —y apt remove zabbix—agent —y |
Мониторинг сетевых устройств с помощью Zabbix.
Мониторинг осуществляется через протокол SNMP — Simple Network Management Protocol или простой протокол управления сетью.
Настройка выполняется на MikroTik RB750GR3 с прошивкой v6.49 через WinBox в защищенной локальной сети.
Активация SNMP.
В боковом меню выбираем System >> SNMP.
Отмечаем галочкой Enabled для активации.
Trap Version: 2 – версия trap для SNMPv2.

Настройка Community.
Выбираем сообщество «public» нажав кнопку «Communities» и настраиваем его. 
Addresses: 192.168.5.120 – IP-адрес с которого можно подключатся к микротику по SNMP (это IP-адресс сервера Zabbix).
Проверяем галочку Read Access – только чтение.
Сохраняем настройку.
Так же сохраняем настройку в окне SNMP Settings.

Через командную строку терминала:
|
1 2
| /snmp community set [ find default=yes ] addresses=192.168.5.120/32 /snmp set enabled=yes trap—version=2 |
Выполняем настройку в ZABBIX.
Добавляем новый хост.
Мониторинг >> Узлы сети >> Создать узел сети.

Имя узла сети – GW-LAN-5 – название роутера в локальной сети.
Шаблоны – выбираем MikroTik hEX SNMP – в соответствии с моделью роутера.
Группы узлов сети – Discovered hosts или своя любая группа.
Интерфейсы >> SNMP, IP-адрес 192.168.5.30 – адрес роутера в сети. Порт 161 без изменений.
Интерфейсы >> Версия SNMP – SNMPv2.
Нажимаем кнопку «Добавить».
В боковом меню выбираем «Узлы сети» и видим что статус роутера – «Доступен».

Можно посмотреть различную информацию по этому хосту, выбрав последние данные, это – температура, нагрузка на CPU, память и многое другое.

Если мониторинг не заработал, то нужно проверить доступность портов, проверить файервол в Ubuntu на котором установлен Zabbix, трассу между сервером и роутером на наличие дополнительных промежуточных роутеров с ограничивающими трафик правилами.
Удаление хоста из Zabbix.
Выбираем нужный хост и переходим в настройку.

В нижней части экрана нажимаем «Удалить».

Скачиваем и устанавливаем агента Zabbix с официального сайта.
Выбираем параметры файла для загрузки под свою систему и скачиваем.

В данном случае выбран дистрибутив для ОС Windows под платформу c 64 разрядным процессором (не обязательно фирмы AMD) версия Zabbix 6.2 с шифрованием передачи данных между сервером и агентом, установочный пакет MSI.
Если выбрать PACKAGING >> Archive, то нужно будет выполнять установку через командную строку.
Устанавливаем скаченного агента.

Путь установки и содержание можно не менять.

На следующем шаге указываем IP-адрес сервера Zabbix.

Завершаем установку.
Агент будет работать в виде службы. Убедиться в этом можно перейдя в службы.

Далее переходим на сервер Zabbix.
В боковом меню выбираем «Узлы сети» (Hosts).

Создаем новый узел сети.

Указываем имя хоста. Оно должно соответствовать реальному имени ПК.

Добавляем несколько стандартных шаблонов Windows.

Выбираем их из списка.

Добавляем группу и IP-адрес хоста с установленным агентом.

Через пару минут проверяем состояние хоста на сервере. Агент доступен.

Можно посмотреть получаемые данные.

Если не заработало.
Проверяем файл конфигурации.
|
1
| C:Program FilesZabbix Agentconfzabbix_agentd.conf |
Смотрим активные строки.

Строки, начинающиеся знаком #, — это комментарии.
LogFile=C:Program FilesZabbix Agentzabbix_agentd.log – место сохранения лога.
Server=192.168.5.120 – IP-адрес Zabbix-сервера.
ServerActive=192.168.5.120:10051 IP-адрес Zabbix-сервера для активных проверок.
Hostname=ADMIN101-GO имя ПК, должно соответствовать написанному в Zabbix-сервере.
Проверяем файл логов и выясняем причины ошибок, если они есть.
Проверяем правило брандмауэра Windows.
При установке, программа сама создает правило, но оно какое-то странное, разрешает любую активность, поэтому решено его не использовать.
Создано правило разрешающее входящее соединение по порту 10050 только с IP-адреса Zabbix-сервера.



Порт 10050 используется для доступа сервер-агент.
Порт 10051 используется для доступа агент-сервер.
Можно открыть в файрволе Ubuntu временно для проверки доступ на входящие и исходящие соединения для портов 10050 и 10051 для любых источников.
Сперва лучше проверить связь от сервера до агента через telnet.
Подключаемся к серверу, открываем терминал, вводим команду.
|
1
| telnet 192.168.5.15 10050 |

На картинке результат при нормально работающем агента.
Скачиваем и устанавливаем агента Zabbix с официального сайта.
Выбираем параметры файла для загрузки под свою систему и скачиваем.
КОМПОНЕТ ЗАББИКС – Agent (выбираем агента).

На основании выбранных компонентов ниже генерируется код для установки. Копируем его по шагам в терминал.
Скачиваем.
|
1
| wget https://repo.zabbix.com/zabbix/6.2/ubuntu-arm64/pool/main/z/zabbix-release/zabbix-release_6.2-3%2Bubuntu20.04_all.deb |
Устанавливаем пакет zabbix
|
1
| dpkg —i zabbix—release_6.2—3+ubuntu20.04_all.deb |
Обновляем списки пакетов.
|
1
| apt update |
Устанавливаем компонент zabbix-agent.
|
1
| apt install zabbix—agent —y |
Перезапускаем агент и включаем его запуск при старте системы.
|
1 2
| systemctl restart zabbix—agent systemctl enable zabbix—agent |
Проверяем статус агента.
|
1
| systemctl status zabbix—agent |

Active (running) – значит работает.
Изменяем файл конфигурации Zabbix-агента через редактор vi.
|
1
| vi /etc/zabbix/zabbix_agentd.conf |
Находим строку Server=127.0.0.1 и вписываем IP-адрес Zabbix-сервера.

Находим строку #HostName= раскомментируем ее (убираем #) и указываем актуальное имя ПК на котором агент.

Находим строку # ListenPort и раскомментируем ее.

Порт 10050 используется для связи сервер-агент.
Для активных проверок так же можно указать адрес сервера Заббикс.

Сперва нужно определиться, какой режим мониторинга будет использоваться: активный или пассивный.
При пассивном – запрос приходит от сервера и агент ему отвечает.
При активном – агент сам отправляет серверу данные и не ждет от него запроса, сверяя только шаблон.
У нас в сети используется в основном пассивный мониторинг.
Выходим и сохраняем.
Esc
|
1
| :wq |
Перезапускаем агента.
|
1
| systemctl restart zabbix—agent |
Далее переходим на сервер Zabbix.
В боковом меню выбираем «Узлы сети» (Hosts).

Создаем новый узел сети.

Заполняем необходимые поля.

Имя узла сети должно соответствовать реальному имени ПК и тому, что написано в файле конфигурации агента.
Шаблон выбираем для Linux.
Группа узлов сети любая.
Интерфейс – указываем IP-адрес компьютера с установленным агентом. Порт 10050 остается без изменений.
Нажимаем кнопку «Добавить».
Через некоторое время смотрим на статус добавленного узла.

Статус – Доступен.
Если не заработало.
Проверяем связь от сервера до агента через telnet.
На сервере открываем терминал, вводим команду.
|
1
| telnet 192.168.5.18 10050 |

На картинке нормальный результат. Подключение и через некоторое время отключение.
Проверяем еще раз файл конфигурации.
|
1
| /etc/zabbix/zabbix_agentd.conf |
Минимально необходимыми в нем должны быть только такие строки.
|
1 2 3 4 5 6 7
| PidFile=/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix—agent/zabbix_agentd.log LogFileSize=0 Server=192.168.5.120 ListenPort=10050 ServerActive=192.168.5.120 Hostname=UBUNTU—PC |
Проверяем файл логов и выясняем причины ошибок, если они есть.
|
1
| /var/log/zabbix—agent/zabbix_agentd.log |
Проверяем состояние служб и портов.
Устанавливаем net-tool (если раньше не было установлено)
|
1
| apt install net—tools |
Просмотр работающих сервисов.
|
1
| netstat —pnltu |

Проверяем firewall Ubuntu.
Если на сервере закрыты все порты, то можно временно для проверки открыть порты 10050 и 10051 на все направления.
Подключаемся с правами root.
|
1
| sudo su — root |
(пароль)
Добавляем правила.
Для 10051.
|
1 2
| iptables —A INPUT —p tcp —dport 10051 —j ACCEPT iptables —A OUTPUT —p tcp —dport 10051 —j ACCEPT |
Для 10050.
|
1 2
| iptables —A OUTPUT —p tcp —dport 10050 —j ACCEPT iptables —A INPUT —p tcp —dport 10050 —j ACCEPT |

Просмотр созданных правил.
|
1
| iptables —L |
Если это помогло, то конкретизируем направления, указав IP-адреса источника и назначения (сервер-клиент).
Если не помогло, удаляем все правила.
|
1
| iptables —F |
RouterOS Scanner для Mikrotik от Microsoft
В марте этого года Microsoft выпустила необычный продукт — бесплатный Open Source сканер заражения RouterOS (Mikrotik) — RouterOS Scanner. Он выполняет следующие проверки на устройствах:
Сервер логов Rsyslog+Loganalyzer на ОС Ubuntu20.
На этой странице представлено описание установки и настройки сервера для централизованного сбора логов с оборудования в локальной сети.

Rsyslog – это высокопроизводительный сервер логов на Linux с возможностью сохранять информацию в базу данных. Поставляется вместе с пакетами Ubuntu20. Официальный сайт.
Loganalyzer – это веб-интерфейс для доступа к базе данных логов от Rsyslog. Через него можно просматривать и анализировать сообщения логов. Официальный сайт.
Все это ПО распространяется бесплатно.
Логи поступают от различного сетевого оборудования внутри локальной сети.
От Интернета сеть отделена сетевым экраном и считается условно безопасной. Вопросы информационной безопасности в описании не рассматриваются, но обязательны.
Сервер установлен на ПК(не ВМ) со следующими параметрами:
Процессор: Intel Core I5-3450 3.1ГГцх4.
ОЗУ: 8Гб.
HDD: 2Tb.
Сетевая карта 1Гбит/сек.
Сервер подключен в сеть, ему раздается IP-адрес по DHCP с доступом к Интернету.
Установка ОС.
Скачиваем Ubuntu 20. Desktop image с графическим интерфейсом.
Создаем установочную флэшку и переносим скачанный образ на нее.
Создание происходит с помощью ПО Rufus. Выбираем флэшку, скачанный образ Ubuntu, нажимаем кнопку «Старт».

Возможно, появится сообщение о загрузке необходимых данных. Нажимаем ДА.
Режим записи – Записать в ISO-образ режиме. ОК. 
Следует учитывать, что все данные на флэшке будут уничтожены. Подтверждаем это. 
Через пару минут флэшка готова.
С использованием созданной флэшки устанавливаем операционную систему.
Загружаемся с установочной флэшки.
Выбираем – Try or Install Ubuntu. 
Далее откроется мастер установки.
Выбраны следующие параметры:
Install Ubuntu – установить Ubuntu.
English – язык системы.
Keyboard layout – English – язык клавиатуры.
Normal installation – тип установки – нормальная.
Download updates while installing Ubuntu – загрузить обновления вовремя установки (если подключен Интернет).
Erase disk and install Ubuntu – стереть диск и установить Ubuntu (все данные с диска удаляются!).
Where are you – выбираем часовой пояс.
Who are you – имя ПК, логин, пароль.
После установки вытаскиваем из ПК флэшку и нажимаем кнопку «Ввод» на клавиатуре.
Система установлена. Вводим указанный ранее логин и пароль и попадаем на рабочий стол.
Компьютер подключен в сеть. IP-адрес присвоился по DHCP.
Запускаем терминал Ctrl+Alt+T.
Входим с правами root.
|
1
| sudo su — root |
Вводим пароль админа. Ввод пароля не отображается.
Далее все действия в терминале выполняются с правами root!
В командах ниже это ни как не обозначено (например $ или sudo перед командой).
Настраиваем удаленный доступ к серверу.
Работы будут выполняться в локальной сети. Подключение будет происходить от ПК с Windows 10 к ПК с Ubuntu 20 по этому решено воспользоваться протоколом RDP.
Запускаем терминал.
Вводим команды.
|
1
| apt install xrdp —y |
(-y = yes подтверждение установки)
Проверка статуса
|
1
| systemctl status xrdp |
Подключаемся по RDP из Windows на IP-адрес ПК с Ubuntu.
Предварительно пользователь на Ubuntu должен выйти из системы, чтоб удаленный пользователь из Windows вошел.
Переходим на ПК с Windows.
Пуск >> Все программы >> Стандартные — Windows >> Подключение к удаленному рабочему столу.
Или через командную строку:
Win+R >> mstsc.

Вводим IP-адрес.

Вводим логин-пароль (без указания домена).

Попадаем на рабочий стол Ubuntu.
Если дополнительно появится окно аутентификации, то нужно ввести пароль и подтвердить 2 раза (или нажать отмену).

Существуют другие альтернативные варианты удаленного доступа, например с использованием AnyDesk и подобных программ.
AnyDesk скачивается через браузер с официального сайта и устанавливается через менеджер установок (Software install).
Перед дальнейшей установкой желательно выполнить обновление.
Обновляем систему.
|
1
| apt—get update |
|
1
| apt—get upgrade |
После второй команды начнется обновление всех установленных пакетов. Это может происходить продолжительное время.
Установка Rsyslog.
Для работы Rsyslog потребуются следующие компоненты:
Apache
PHP
MYSQL
Loganalyzer
Установка Apache2.
Устанавливаем apach2 и модуль работы с php.
|
1
| apt—get install apache2 —y |
|
1
| apt—get install libapache2—mod—php —y |
Включаем автозапуск.
|
1
| systemctl enable apache2 |
Запускаем службу
|
1
| systemctl start apache2 |
Проверяем статус
|
1
| systemctl status apache2 |

Active (running) – значит работает.
Можно посмотреть страницу приветствия перейдя в браузере по адресу:
|
1
| http://localhost |

Установка PHP.
Информация о пакете php.
|
1
| apt show php |
(текущая версия 7.4)
Можно посмотреть какие есть модули.
|
1
| apt—cache search php7.4 |
Установка.
|
1
| apt—get install php7.4 |
Установка дополнительных модулей.
Для работы, ускорения и прочих особенностей выбраны сл. модули.
|
1
| apt—get install php7.4—mysql |
(работа с bd mysql)
|
1
| apt—get install php7.4—curl |
(библиотека для передачи через протоколы http https)
|
1
| apt—get install php7.4—xml |
(взаимодействие с xml)
|
1
| apt—get install php7.4—gd |
(работа с графикой, без этого модуля не отображаются диаграммы статистики)
Эти два модуля возможно уже присутствуют.
|
1
| apt—get install php7.4—json |
(сериализация объектов в текст )
|
1
| apt—get install php7.4—opcache |
(кэш кода php для ускорения обработки большого кол-ва запросов)
Проверка работы php.
В командной строке создаем файл info.php с помощью редактора vi.
|
1
| vi /var/www/html/info.php |
Содержание файла
|
1
| <?php phpinfo(); ?> |
Выходим из редактора vi — нажимаем кнопку Esc
Затем пишем в командной строке.
|
1
| :wq |
(сохранить и закрыть)
Можно создать этот файлик вручную если не получается через редактор в терминале.

В браузере проверяем ссылку.
|
1
| http://localhost/info.php |

Если видим эту страницу, значит все сделано правильно и php работает.
Установка MYSQL.
|
1
| apt—get install mysql—server —y |
Модуль для Rsyslog
|
1
| apt—get install rsyslog—mysql —y |
В появившемся сообщении нажимаем <No> создадим БД позже.

Добавление в автозагрузку и старт
|
1
| systemctl enable mysql |
|
1
| systemctl start mysql |
Проверка версии mysql
|
1
| mysqld —version |
Результат.
|
1
| /usr/sbin/mysqld Ver 8.0.30—0ubuntu0.20.04.2 for Linux on x86_64 ((Ubuntu)) |
Проверка статуса mysql
|
1
| systemctl status mysql.service |
Результат.

После всех установок нужно перезапустить веб-сервер
|
1
| systemctl restart apache2 |
Установка RSYSLOG.
Проверяем какой Rsyslog уже есть в UBUNTU
|
1
| apt list —a rsyslog |

Создадим базу данных для логов с названием rsyslog.
Заходим в mysql с правами root.
|
1
| mysql —u root |
(пароля нет)
Далее создаем БД с названием rsyslog.
|
1
| create database rsyslog; |
Создаем пользователя для доступа к базе данных.
Имя пользователя любое, например syslogmaster.
Пароль – password.
|
1
| create user syslogmaster@localhost identified by ‘password’; |
Назначаем привилегии.
|
1
| grant all privileges on rsyslog.* to syslogmaster@localhost; |
Перечитываем конфигурацию.
|
1
| flush privileges; |
Выходим.
|
1
| exit; |

Импорт схемы для БД.
|
1
| mysql —u syslogmaster —D rsyslog —p < /usr/share/dbconfig—common/data/rsyslog—mysql/install/mysql |
(-u -юзер, -D-бд, -p-пароль)
вводим пароль password
![]()
Если не выполнить эту настройку, то в БД не создадутся таблицы.
Можно посмотреть базу данных и пользователя соответствующими командами:
|
1
| mysql —u root |
(вход в mysql)
|
1
| select user from mysql.user; |
(список пользователей)
|
1
| show databases; |
(список баз данных)
Содержание БД rsyslog.
Выбираем БД.
|
1
| use rsyslog; |
Вводим команду чтоб показать таблицы.
|
1
| show tables; |

|
1
| exit; |
Изменим конфигурацию rsyslog в файле rsyslog.conf, чтоб он слушал UDP и TCP 514 порт.
Переходим в редактор vi. Выбираем файл.
|
1
| vi /etc/rsyslog.conf |
Стрелками спускаемся до нужной строки и удаляем # (которая означает начало комментария).
Раcкомментируем строки как на картинке:

Выходим из редактора vi
Нажимаем Esc, затем:
|
1
| :wq |
(сохранить и закрыть)
Настроим отправку логов в базу данных.
Отредактируем файл mysql.conf через редактор vi.
|
1
| vi /etc/rsyslog.d/mysql.conf |
Изменим имя БД, пользователя и его пароль, см картинку.
Наводим на букву в строке, нажимаем i, редактируем, нажимаем Esc. Идем дальше…
Удаление пустых строк быстрое нажатие dd.
Если что-то неправильно введено, то нужно выйти без сохранения с помощью команды:
|
1
| :q! |

Выходим из редактора vi
Esc
|
1
| :wq |
(сохранить и закрыть)
Перезапускаем rsyslog
|
1
| systemctl restart rsyslog |
Проверка статуса Rsyslog
|
1
| systemctl status rsyslog |

Установка Loganalyzer.
Подготовка БД.
Создаем базу данных для Loganalyzer, так ее и назовем.
|
1
| mysql —u root |
|
1
| create database loganalyzer; |
(все буквы нижнего регистра)
База нужна в основном для пользователей.
Создаем пользователя для БД.
|
1
| create user logan@localhost identified by ‘password’; |
Назначаем привилегии.
|
1
| grant all privileges on loganalyzer.* to logan@localhost; |
Перечитываем конфигурацию.
|
1
| flush privileges; |
Выходим.
|
1
| exit; |

Установка приложения Loganalyzer.
Скачиваем и устанавливаем.
Переходим во временную папку.
|
1
| cd /tmp |
Скачиваем последнюю актуальную версию ПО.
|
1
| wget http://download.adiscon.com/loganalyzer/loganalyzer-4.1.12.tar.gz |
Распаковываем архив.
|
1
| tar —xzvf loganalyzer—4.1.12.tar.gz |
Возврат в корень.
|
1
| cd |
Создаем папку для Loganalyzer в apach2
|
1
| mkdir /var/www/html/loganalyzer |
Копируем из временной папки в созданную
|
1
| cp —r /tmp/loganalyzer—4.1.12/src/* /var/www/html/loganalyzer |
Создаем файл конфигурации.
Переходим в папку.
|
1
| cd /var/www/html/loganalyzer |
Создаем пустой файл конфигурации.
|
1
| touch config.php |
Меняем владельца.
|
1
| chown www—data:www—data config.php |
(www-data:www-data это пользователь и группа которой мы даем права на файл config.php)
Задаем права на чтение и запись для config.php .
|
1
| chmod 666 config.php |
Цифра 6 означает права на чтение и запись.
6 – для владельца.
6 – для группы.
6 – для пользователя.
Возвращаемся в корень.
|
1
| cd |
Меняем владельца всех файлов в папке на www-data
|
1
| chown www—data:www—data —R /var/www/html/loganalyzer/ |
(-R указывается чтоб применилось для всех вложенных объектов)

Теперь переходим в браузере по адресу
|
1
| http://localhost/loganalyzer |
Видим страницу.

Если ничего не открылось нужно перезапустить все службы и попробовать еще раз (или перезагрузить ПК).
Проверить все статусы и файлы конфигурации, сверится с эталоном настроек из описания выше.
Нажимаем на ссылку Click here to Install Adiscon LogAnalyzer.
На первом шаге просто нажимаем Next.

Шаг 2 — проверка разрешения файла – перезаписываемый (Writeable).

Шаг 3 — вводим данные для БД. В данном случае это база loganalyzer.
Пользователь logan, пароль password (создан ранее). Нажимаем Next.

Может возникнуть ошибка при неправильном вводе логина-пароля. Вводим правильно.

Шаг 4 — нажимаем Next.

Шаг 5 — проверка SQL, нажимаем Next.

Шаг 6 — создание аккаунта администрирования. Пользователь может быть любой. Пароль придумываем. Нажимаем Next.

На следующем шаге 7 указываем источник логов – это база rsyslog. Вводим логин и пароль для этой базы.

Название таблицы — SystemEvents (с учетом регистра букв).
Настройка завершена.
Нажимаем кнопку Finish.

Проверяем.
Логи от разных устройств начали приходить. Они были предварительно настроены на IP-адрес этого сервера логов.
К веб-интерфейсу можно подключатся по IP-адресу с других компьютеров, например так:
|
1
| http://192.168.5.120/loganalyzer/ |

Следует помнить про информационную безопасность и разрешить доступ к серверу логов только с доверенных адресов.
В процессе настроек могут появиться некоторые ошибки.

Решается эта проблема добавлением строчки в файле конфигурации
Открываем редактор vi в терминале
|
1
| vi /etc/group |
Добавляем в самом низу строчку
|
1
| adm:x:4:www—data |
Выходим с сохранением.
|
1
| :wq |

Перезапускаем apach2.
|
1
| systemctl restart apache2 |
Ошибка связана с несоответствующей базой данных указанной в шаге №7.

Переходим в Admin Center >> Sources и редактируем настройку БД. 
Проверяем или изменяем параметры.

Если в процессе настроек страница зависла и потом открылось начало настроек. Клик на ссылку не реагирует.

Нужно удалить файл config.php и начать настройку заново.
/var/www/html/loganalyzer/config.php
Ошибка – белая страница после определенного шага.

Смотрим лог в apache2 /var/log/apache2/error.log
Часто такая ошибка связана с неправильной работой PHP. Возможна несовместимость версий Loganalyzer и php или mysql.
Проверяем версии, устанавливаем php другой версии. Выполняем настройку сначала.
С php8.1 на Ubuntu22, Loganalyzer 4.1.12 не работает.
Чтоб не получить краказябры, нужно указать кодировку utf8 в административном центре Loganalyzer.

Так же нужно проверить кодировку БД mysql. Она тоже должна быть utf8.
Проверка кодировки БД.
|
1
| mysql —u root |
|
1
| use rsyslog; |
|
1
| show tables; |
Результат вывода таблиц.
|
1 2
| SystemEvents SystemEventsProperties |
Просмотр.
|
1
| show full columns from SystemEvents; |

Если не удобно работать с БД mysql через командную строку, то можно воспользоваться веб-интерфейсом phpMyAdmin.
Установка phpMyAdmin
|
1
| apt—get install phpmyadmin —y |
Модуль для работы с utf8.
|
1
| apt—get install php—mbstring —y |
Проверяем страницу входа.
|
1
| http://localhost/phpmyadmin |
Удаление (при необходимости).
|
1
| apt—get purge phpmyadmin —y |
Чтоб иметь доступ к всем БД проще создать нового пользователя и задать ему необходимые привилегии, чем пытаться настроить пользователя root.
Входим в mysql
|
1
| mysql —u root |
Выбираем БД.
|
1
| use phpmyadmin; |
Создаем пользователя для доступа к БД.
Имя пользователя любое, например phplocal.
Пароль – password.
|
1
| create user phplocal@localhost identified by ‘password’; |
(password — для примера, в реальности сложный пароль из букв разного регистра, цифр и спец.символов).
Назначаем привилегии root чтоб видеть все БД.
|
1
| grant all privileges on *.* to ‘phplocal’@‘localhost’ with grant option; |
Перечитываем конфигурацию.
|
1
| flush privileges; |
Выходим.
|
1
| exit; |
Заходим через любой браузер.
|
1
| http://localhost/phpmyadmin |
Вводим параметры созданного ранее пользователя.
Видим все БД и можем с ними работать.

Отправка логов на сервер.
Чтоб логи приходили на сервер с различных сетевых устройств нужно на этих устройствах выполнить настройку. Для примера представлена краткая настройка некоторого оборудования. Принцип везде примерно одинаковый. Нужно указать IP-адрес сервера логов и порт на котором Rsyslog принимает сообщения.
Control Panel >> Notification >> Syslog.

Галочками можно указать какие типы событий отправлять на сервер логов.
Device можно изменить на Local 0.
Сохраняем настройку.

В зависимости от версии прошивки в NAS настройка может выполнятся из QuLog Center.

На вкладке журналов выбираем нужный тип логов.
Далее на поле где сообщения правой кнопкой мыши выбираем из меню настройку логов (Log Settings).

На вкладке внешнего логирования активируем галочкой отправку логов на Syslog-сервер и указываем его IP-адрес.

System >> Logging >> Actions
В правиле remote указываем IP-адрес сервера логов и порт с которым он работает

На вкладке Rules выбираем тип логов для отправки.
Самый простой и бесплатный способ – Event Log to Syslog. Приложение в виде службы отправляет логи по указанному IP-адресу.
Скачиваем архив последней версии для обычного размера пакетов, без LP.
Распаковываем в папку C:WindowsSystem32
Запускаем через cmd с правами админа и с указанием IP-адреса сервера.
|
1
| evtsys.exe —i —h 192.168.5.120 |
Запускаем службу.
|
1
| net start evtsys |
Проверяем в службах режим запуска и состояние.
Подробную настройку для отправки конкретных типов логов, можно посмотреть в файле PDF который, находится в архиве вместе с программой.
Изменение параметров можно выполнить в реестре
|
1
| HKEY_LOCAL_MACHINESOFTWAREECNEvtSys3.0 |
На ПК должен быть предварительно установлен и настроен Rsyslog.
Создаем файл конфигурации в папке rsyslog.d через vi редактор.
|
1
| vi /etc/rsyslog.d/log.conf |
Указываем в этом файле сервер логов и порт.
|
1
| *.* @@192.168.5.120:514 |
Выходим из редактора vi
Esc
|
1
| :wq |
(сохранить и закрыть)
Перезапускаем rsyslog
|
1
| systemctl restart rsyslog |
Все логи начнут передаваться на указанный IP-адрес. Можно выбрать конкретные типы логов для отправки.
Альтернативный вариант — отправка через модуль omfwd.
Коммутатор TL-SG3428XMP
Настройка находится в Maintenance >> Remote Logs.
Указываем IP-адрес сервера логов, порт по умолчанию 514.
Severity — уровень серьезности. Чем он ниже, тем серьезнее событие. (см. описание протокола Syslog)
Status — Enable.

Коммутатор GS1900-24.
Configuration >> Management >> Syslog >> Remote.
Тут то же самое. Указываем IP-адрес, порт, Severity и Facility (идентификатор источника сообщения).

Сохраняем настройку.
На сервере логов запускаем терминал Ctrl+Alt+T.
Входим с правами root.
|
1
| sudo su — root |
Пароль.
Переходим в папку.
|
1
| cd /etc/rsyslog.d/ |
Создаем файл.
|
1
| touch 10—filter.conf |

Имя файла должно быть таким, чтоб он располагался выше чем файл с именем 50-deafault.conf
Отредактируем файл через редактор vi.
|
1
| vi /etc/rsyslog.d/10—filter.conf |
Копируем туда строчку.
|
1
| :fromhost, isequal, «LOGSERVER» stop |
Синтаксис.
:property, [!]compare-operation, «value»
[свойство] [операция] [значение]
:fromhost — с хоста
isequal — сравнение
LOGSERVER — имя хоста
stop — остановить
Выходим.
|
1
| :wq |

Возвращаемся в корень.
|
1
| cd |
Перезапускаем Rsyslog.
|
1
| systemctl restart rsyslog |
Проверяем статус Rsyslog.
|
1
| systemctl status rsyslog |
В результате логи с самого сервера логов перестали появляться в Loganalizer.
Фильтровать можно не только по имени, но так же по IP-адресу, источнику, тэгу и другим параметрам. Подробнее в документации на rsyslog.
WireGuard Site to Site VPN Between MikroTik RouterOS 7
WireGuard is a free, open source, secure and high-speed modern VPN solution. WireGuard is extremely easy to implement but utilizes state-of-the-art cryptography. WireGuard can be used as either Client-Server VPN technology or Site to Site VPN technology.
From the RouterOS 7, MikroTik introduces WireGuard VPN as their native package. So, who are using RouterOS 7 can use WireGuard VPN and can implement both client-server and site to site VPN with WireGuard free VPN server.
In my previous article, I discussed how to configure client-server free VPN server with WireGuard and how to connect windows client with WireGuard VPN. In this article, I am going to show how to setup a site-to-site WireGuard VPN between two MikroTik RouterOS 7.
Site to Site WireGuard VPN Network Diagram
In this article, we are going to implement a site-to-site VPN like the following image where two offices are connected over WireGuard site to site VPN service.

Note: in the above diagram, we are using private IP addresses in public interface for demo purpose. In live network, you should replace these IP Addresses with your public IP Addresses.
Site to Site WireGuard VPN Configuration in RouterOS 7
According to the above network diagram, we will now configure site to site WireGuard VPN in MikroTik RouterOS. But before going to start WireGuard VPN, you should have RouterOS 7 basic configuration which includes WAN, LAN, DNS, Gateway and Masquerade setup.
If you are new in MikroTik RouterOS, feel free to study another article about how to configure MikroTik RouterOS 7 first time and complete WAN, LAN, DNS and other Setup and then follow our WireGuard configuration steps.
If you have existing network and RouterOS 7 is running there, don’t forget to replace my demo IP information according to your existing one. You just follow my steps keeping your existing IP information.
We will now do configurations those are required for WireGuard configuration. For WireGuard configuration we need to do enabling WireGuard, Creating Peers, assigning IP address in WireGuard virtual interface and doing routing over virtual interface to communicate among LAN devices.
Enabling WireGuard in MikroTik RouterOS
WireGuard package is installed by default in MikroTik RouterOS 7. So, you will get a WireGuard menu item in Winbox by default. To enable WireGuard in R1 Router, do the following steps.
- Login to R1 Router of Office 1 with Winbox using full access user credentials.
- Click on WireGuard menu item from Winbox menu bar. WireGuard window will appear.
- Click on PLUS SIGN (+) to create a new WireGuard interface. New Interface window will appear.
- Put an interface name in Name input field or you can keep the default name wireguard1.
- Click Apply button. Public Key and Private Key will be generated as soon as you click the Apply button. The Public Key will be required when WireGuard Peer will be created in R2 Router (Office 2 Router).
- Click OK button.
Similarly, enable WireGuard in R2 Router of Office 2 Router and create a new WireGuard interface. Your configurations will look like the following image.

Assigning IP Address on WireGuard Virtual Interface
After enabling WireGuard in RouterOS 7, a new virtual interface will be created in each Router. We will now assign IP address in each WireGuard interface so that both interfaces can communicate with each other after establishing WireGuard tunnel.
To assign IP address on WireGuard virtual interface in R1 Router, issue the following steps.
- From Winbox, go to IP > Addresses menu item. Address List window will appear.
- Click on PLUS SIGN (+) to add new address. New Address window will appear.
- Put an IP address (in this article: 10.10.10.1/30) that you to assign for WireGuard VPN tunnel in Address input field.
- Choose WireGuard interface (in this article: wireguard1) from Interface dropdown menu.
- Click Apply and OK button.
Similarly, add the second IP address on the WireGuard virtual interface of R2 Router at office 2. According to the above diagram, the second router’s IP will be 10.10.10.2/30.
Creating WireGuard Peers Between Two RouterOS
After assigning IP addresses on WireGuard virtual interface, we will now configure peers in both Routers. To create peers in R1 Router of office1, issue the following steps.
- From Winbox, click on WireGuard menu item and then click on Peers tab.
- Click on PLUS SIGN (+). New WireGuard Peer window will appear.
- Choose WireGuard interface (wireguard1) from Interface dropdown menu.
- Put the Public Key that was generated at R2 Router when WireGuard was enabled, in Public Key input field.
- Put the Public IP address (For demo purpose, in this article: 172.26.0.2) of R1 Router in Endpoint input field.
- If you don’t change the port number (default is 13231), no need to change the Endpoint Port but if you change, put the listen port of R1 Router in Endpoint Port input field.
- Put the IP blocks (in this article: 10.10.10.0/30 for tunnel interface and 192.168.26.0/24 LAN IP Block of R2 Router) those will be passed over WireGuard VPN Tunnel in Allowed Address input field. If you want to allow all IP addresses, put 0.0.0.0/0 in this field.
- In Persistent Keepalive input, put a time value in seconds (for 10 second: 00:00:10) when the tunnel will be checked and keep lived.
- Click Apply and OK button.

Similarly, create peer in R2 Router and information accordingly. Be careful to put Public Key, Endpoint and Endpoint Port of R1 Router. Also be careful to put IP block of R2 Router’s LAN block. The configuration should be like the following image.

Static Routing Configuration Between RouterOS
At the last step of site-to-site WireGuard VPN configuration, we will configure static routing between R1 and R2 Router so that R1 Router’s LAN can access R2 Router’s LAN and vice versa.
To configure static routing in R1 Router, do the following steps.
- From Winbox, go to IP > Routes menu item. Route List window will appear.
- Click PLUS SIGN (+) to add new route. New Route window will appear.
- In Dst. Address input field, put the LAN IP block (in this article: 192.168.26.0/24) of R2 Router.
- Put the IP address (10.10.10.2) assigned on WireGuard interface of R2 Router in Gateway input field.
- Click Apply and OK button.

Similarly, configure static routing in R2 Router and put the LAN IP block (in this article: 192.168.25.0/24) of R1 Router and WireGuard interface IP address (10.10.10.1) of R1 Router.
How to configure site to site WireGuard VPN between two RouterOS has been discussed in this article. I hope, you will now be able to configure site to site WireGuard VPN in MikroTik RouterOS. However, if you face any issue to configure site to site WireGuard VPN in MikroTik RouterOS, feel free to discuss in comment or contact me from Contact page. I will try my best to stay with you.
MikroTik – отправка логов на внешний сервер.
Логи от разных устройств в локальной сети собираются в одном месте, на сервере логов, чтоб их было удобно анализировать. Одно из таких устройств – роутер микротик. Выполним настройку отправки логов на сервер и проверим результат.
Настройка выполняется на роутере RB750Gr3 c прошивкой v6.49 через WinBox.
Освоить MikroTik Вы можете с помощью онлайн-куса
«Настройка оборудования MikroTik». Курс содержит все темы, которые изучаются на официальном курсе MTCNA. Автор курса – официальный тренер MikroTik. Подходит и тем, кто уже давно работает с микротиками, и тем, кто еще их не держал в руках. В курс входит 162 видеоурока, 45 лабораторных работ, вопросы для самопроверки и конспект.
Настройка отправки логов.
IP-адрес сервера логов.
Подключаемся к роутеру, в боковом меню переходим в System >> Logging >> Actions.
Выбираем строчку: remote

Remote Address: 192.168.5.15 — адрес сервера логов в локальной сети.
Удаленный порт 514 не изменяем, потому что, как правило, syslog протокол передается по этому порту в большинстве серверов логов.
ОК для сохранения настройки.
Через командную строку терминала:
|
1
| /system logging action set 3 remote=192.168.5.15 |
Правило отправки логов.
Переходим на вкладку правил System >> Logging >> Rules
Создаем новое правило нажав +
Topics: !debug – все темы кроме debug (! – означает отрицание).
Action: remote — настроенное ранее действие отправки логов на удаленный сервер.
OK.
Через командную строку терминала:
|
1
| /system logging add action=remote topics=!debug |
debug не выбран потому что он создает много мешающих логов калькуляций. Можно исключить другие не используемые логи. Можно выбрать конкретные логи, которые хотим просматривать.
Если выбрать в одном правиле три темы, то лог будет отправлен только при выполнении всех трех событий одновременно.

Чтоб отправлялись логи с содержанием хотя бы одной темы, для каждой темы нужно создавать отдельное правило.

Чтоб не летело множество debug логов из какой-нибудь конкретной темы, например PPP хотим мониторить, нужно исключить debug из этой темы.

Проверка приема логов.
Для проверки необходим сервер логов, подключенный в локальную сеть. Одно из быстрых и бесплатных решений для Windows – Syslog Watcher.
Недостаток бесплатной версии Syslog Watcher – можно добавить только 3 источника логов.
Скачиваем, устанавливаем.
Запускаем программу от имени администратора.
Далее переходим в настройки.

Создаем сетевой интерфейс UDP.

Это все, что нужно для работы. Дополнительно можно указать другое место хранения логов. Подробная инструкция есть на сайте этого ПО.
Нажимаем кнопку «Start Server».
Выполняем любые действия в роутере, создающие логи или ждем пару минут, если роутер работает в локальной сети.
Далее смотрим, что прилетело в сервер логов.
Нажимаем кнопку «View» и выбираем время.
В списке источников на вкладке «Originators» микротик уже появился автоматически. Можно добавлять источники в ручную.

Видим логи из роутера.

В разных ЛВС используются разные серверы логов и данный вариант был представлен только для демонстрации отправки логов с роутера MikroTik.
Освоить MikroTik Вы можете с помощью онлайн-куса
«Настройка оборудования MikroTik». Курс содержит все темы, которые изучаются на официальном курсе MTCNA. Автор курса – официальный тренер MikroTik. Подходит и тем, кто уже давно работает с микротиками, и тем, кто еще их не держал в руках. В курс входит 162 видеоурока, 45 лабораторных работ, вопросы для самопроверки и конспект.