Решение «Suspicious process running under user» и «Excessive resource usage»

Иногда некоторые нужные процессы используют много ресурсов на сервере и система начинает часто уведомлять об этом на email.
Например как в моем случае, после установки Zabbix агента начали приходить уведомления:

Suspicious process running under user zabbix
и
Excessive resource usage: zabbix

Чтобы исключить проверки Zabbix или других служб, необходимо в самом низу WHM панели открыть «ConfigServer Security & Firewall» и в разделе «lfd — Login Failure Daemon» где «Edit lfd ignore file» выбрать «csf.pignore, Process Tracking«, нажать «Edit» и в самом низу добавить путь к выполняемому процессу, например:

exe:/usr/sbin/zabbix_agentd

Чтобы применить изменения нажмем внизу кнопку «Change«.

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

Смотрите также мои статьи:
Как в Linux узнать PID процесса и убить его
Решение ошибки «LFD: Excessive resource usage»

Как включить Horde, SquirrelMail и RoundCube в cPanel

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

Настройки находятся в «WHM» — «Server Configuration (Конфигурация сервера)» — «Tweak Settings (Параметры настройки)» — вкладка «Mail»

Где можно указать On (включено) или Off (выключено) напротив Enable Horde Webmail, Enable RoundCube Webmail или Enable SquirrelMail Webmail.

Для сохранения изменений нужно нажать внизу кнопку «Save (Сохранить)«.

Поиск текста с использованием grep

grep — утилита для поиска указанного текста в файлах, именах файлов и т.д. из командной строки.

Можно искать используя grep даже например в результатах выполнения какой-то команды:

КОМАНДА | grep ТЕКСТ

Можно посчитать количество строк где встречается указанный текст:

grep -c ТЕКСТ ФАЙЛ
grep ТЕКСТ ФАЙЛ | wc -l

Для поиска и отображения строк с указанным текстом выполним:

grep ТЕКСТ ФАЙЛ

Поиск во всех фалах указанной директории:

grep ТЕКСТ /ДИРЕКТОРИЯ/*

Искать только целое указанное слово:

grep -w СЛОВО ФАЙЛ

Отобразить строки где встречаются указанные слова:

grep -E "(СЛОВО|СЛОВО|СЛОВО)" ФАЙЛ

Отобразить строки где указанные слова встречаются несколько раз:

grep -E "(СЛОВО|СЛОВО).*\1"

Отобразить также строки после искомой, например 5 строк:

grep -A 5 СЛОВО ФАЙЛ

Или строки перед искомой:

grep -B 5 СЛОВО ФАЙЛ

Показать строки где встречается СЛОВО1,СЛОВО2,СЛОВО3:

grep СЛОВО[1-3] ФАЙЛ

Показать все строки где встречается IP-адрес:

grep -E "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}" ФАЙЛ

Показать строки где встречаются заглавные буквы:

grep "[[:upper:]]" ФАЙЛ

Показать строки где встречается указанное слово с табуляцией по обе стороны:

grep "[[:blank:]]СЛОВО[[:blank:]]" ФАЙЛ
grep " СЛОВО " ФАЙЛ

Найти и заменить текст на другой можно командой:

grep 'текст_который_ищем' -P -R -I -l  * | xargs sed -i 's/текст_который_ищем/текст_на_который_заменяем/g'

Опишу некоторые опции запуска:
-b (отображение номера блока в котором был найден фрагмент, блоки нумеруются с 0)
-c (отображение только количества строк в которых был найден фрагмент)
-r (искать также в подкаталогах)
-n (отображает номер строки)
-h (скрывает имена файлов перед найденными фрагментами, когда поиск выполняется по нескольким файлам)
-l (отображение только имен файлов где встречается фрагмент)
-i (игнорирование регистра символов, то есть большие и маленькие буквы равны при поиске)
-s (скрывает сообщения о несуществующих или недоступных файлах)
-v (отображает все строки кроме указанного образца)

Установка и настройка Postfix

Postfix — агент пересылки почты (MTA — mail transfer agent) с открытым исходным кодом

Допустим на IP-адрес сервера настроено доменное имя, от которого в дальнейшем будет рассылаться почта.

Переключимся сразу на пользователя root:

sudo -i

Приступим к установке Postfix.
Для установки в Ubuntu выполним:

apt-get update
apt-get install postfix

Для установки в CentOS:

yum install postfix

Во время установки будут заданы некоторые вопросы.
1) Выберем «Интернет-сайт»
2) Укажем полное доменное имя сервера (FQDN), например example.com

После этого Postfix уже начнет работать.
Файлы конфигурации обычно находятся в /etc/postfix.

Можем посмотреть статус/перезапустить/остановить/запустить Postfix командами:

service postfix status
service postfix restart
service postfix stop
service postfix start

В случае необходимости можно перенастроить набрав команду:

dpkg-reconfigure postfix

Посмотрим используются ли порты:

netstat -na | grep LISTEN | grep 25
netstat -na | grep LISTEN | grep 587

Можно выполнить автоматическую проверку:

postfix check

Попробуем отправить письмо на указанный адрес (после команды наберем желаемый текст и поставим точку для завершения):

sendmail -v admin@example.com

Можно искать в логах нужную информацию через grep, например найдем все строки содержащие admin@example.com:

grep admin@example.com /var/log/mail.log

Можно также подключится с другого хоста на порт postfix через telnet и убедится что он запущен.

Для диагностики можно наблюдать за соединениями используя tcpdump:

tcpdump port 25
tcpdump port 587

Установка и использование iotop

iotop — консольная программа отображающая статистику использования дискового пространства.

Установить в Debian, Ubuntu, Mint можно командой:

sudo apt-get install iotop

В Red Hat, Fedora,CentOS:

yum install iotop

Обычный запуск:

iotop

Запуск с опцией:

iotop ОПЦИЯ

Опишу возможные опции запуска:
—version (просмотр версии)
-h (просмотр справки)
-o (отображение только активных процессов или потоков которые выполняют чтение или запись, вместо отображения всех)
-b (включение не интерактивного режима, удобного например для вывода информации в файл)
-t (отображение времени в каждой строке, для не интерактивного режима -b)
-n ЧИСЛО (число итераций после которого будет выполнен выход, если не указано, то стандартно не выполняется выход)
-d ЧИСЛО (задержка между итерацией в секундах, можно указать не целое число, стандартное значение 1)
-p PID (отображение статистики только для указанных процессов/потоков, стандартно для всех)
-u ПОЛЬЗОВАТЕЛЬ (отображение статистики только для указанных пользователей, стандартно для всех)
-P (отображать только процессы)
-a (накопление статистики от начала запуска iotop)
-k (статистика в килобайтах)
-q (сокращенный вид, убираются некоторые строки заголовка, при использовании с опцией -b. Есть более сокращенный, например -qq без имен заголовков и -qqq без общей сводки)

Добавление SIP клиента во FreePBX

Чтобы добавить SIP клиента во FreePBX, откроем меню «Applications» — «Extensions«, выберем например «Generic CHAN SIP Device» и укажем основные параметры:

User Extension: 6000 (номер SIP)
Display Name: Operator (любое имя для отображения)
Secret: ПАРОЛЬ
и нажмем «Submit«.

Все, SIP добавлен, по указанному номеру и паролю он может уже регистрироваться.

Как добавить SIP в конфигурационном файле я описывал в этой статье — Добавление SIP клиентов в Asterisk

Установка и настройка Zabbix агента в CentOS/RHEL

Перед установкой посмотрим версию системы:

lsb_release -a

У меня версия CentOS 6.8 X64, удалено в этот момент находился Zabbix сервер версии 3.0.7, по этому я подобрал версию 3.0 на http://repo.zabbix.com/zabbix/ (там есть новее, например 3.1, 3.2 и т.д.).
Добавим источник:

rpm -Uvh http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm

Для CentOS/RHEL 7 другая ссылка:

rpm -Uvh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

Для CentOS/RHEL 5:

rpm -Uvh http://repo.zabbix.com/zabbix/3.0/rhel/5/x86_64/zabbix-release-3.0-1.el5.noarch.rpm

Теперь выполним команду установки Zabbix агента:

yum install zabbix zabbix-agent

После установки отредактируем файл конфигурации например редактором nano (в котором Ctrl+X для выходя, y/n и Enter для сохранения или отмены изменений):

nano /etc/zabbix/zabbix_agentd.conf

А именно укажем:
Server=192.168.1.11 (ip адрес удаленного Zabbix сервера)
ServerActive=192.168.1.11 (ip адрес удаленного Zabbix сервера)
Hostname=имя такое же как у системы, можно посмотреть командой hostname

После редактирования применим изменения перезапустив Zabbix агент:

/etc/init.d/zabbix-agent restart

Остановить/запустить его можно командами:

/etc/init.d/zabbix-agent stop
/etc/init.d/zabbix-agent start

Смотрите также:
Установка и настройка Zabbix агента в Ubuntu