Выполнить скрипт (cpanel doc)
whmapi1 twofactorauth_disable_policy --- metadata: command: twofactorauth_disable_policy reason: OK result: 1 version: 1
Если бэкап уже есть, но нужно сделать его заново
/usr/local/cpanel/bin/backup --force
Для старой/legacy системы бэкапа команда такая
/usr/local/cpanel/scripts/cpbackup --force
Чтобы был forward secrecy в whm добавляем в pre main include
Header always set Strict-Transport-Security "max-age=63072000; includeSubdomains;"
Нужен PHP-модуль pgsql, чтобы делать простой pg_connect.
Через EasyApache3 перекомпилировать PHP не получается, так как ему нужен установленный PGSQL сервер
The last time Cpanel::Easy::PHP5::Pgsql was run; step returned 0. That just caused Cpanel::Easy::PHP5::Pgsql to be skipped. The message it gave was: Unable to find postgresql path You might want to take that into consideration when choosing options and troubleshooting. The log for that build no longer exists.
Через PECL установить также нельзя
pear/MDB2_Driver_pgsql requires PHP extension "pgsql"
PGSQL ставим по рекомендациям разработчиков cPanel
Пересобираем PHP через EasyApache3.
Проверяем pg_connect например так
<?php $connection = pg_connect ("host=localhost dbname=site user=postgres password=root"); if($connection) { echo 'connected'; } else { echo 'there has been an error connecting'; } ?>
Всё.
Смотрим процесс
# ps -aux | grep pkgacct
И варварски убиваем
# kill -9 PID
cPanel/WHM документация
Наверное рабочие мануалы. Не проверял - всё заработало из коробки без бубнов и подсказок.
TL;DR
На DNSOnly cерверах синхронизацию с cPanel серверами отключаем и ставим для всех серверов Standalone. В cPanel ставим Synchronize Changes.
Если на сервере установлен CSF (Config Server Firewal), то значит есть демон Login Failure Daemon (lfd), который входит в состав CSF.
На почту администратора cPanel сервера при этом приходят разные раздражающие сообщения Virtual Memory Size excessive resource usage alert, Process Time excessive resource usage alert и другие.
lfd on cpanel.foobar.com: WHM/cPanel root access alert from 188.111.13.13 (RU/Russian Federation/cool.reverse-dns.net) Time: Wed Dec 23 14:26:57 2015 +0100 IP: 188.111.13.13 (RU/Russian Federation/cool.reverse-dns.net) User: root
Ставим повыше значения для PT_USERTIME и PT_USERMEM (чтобы отключить ставим равным нулю).
Для применения изменений выполняем команду csf -r
Источник: http://notes.sys4n.com/?p=598
# grep cwd /var/log/exim_mainlog | awk '/public_html/ {print $3}' | sort | uniq -c в результате будет список юзеров и путь к директориям, кто сколько разослал 16 cwd=/home/xxxx/public_html 6 cwd=/home/yyyy/public_html 1 cwd=/home/zzzz/public_html/alko 20 cwd=/home/aaaaa/public_html/forum2
http://go.cpanel.net/logposter (зеркало rtfm.wiki pdf)
cPanel logs
Access logs and user actions | /usr/local/cpanel/logs/access_log |
Account transfers and misc. logs | /var/cpanel/logs |
Auditing log (account creations, deletions, etc) | /var/cpanel/accounting.log |
Backup logs | /usr/local/cpanel/logs/cpbackup |
Brute force protection (cphulkd) log | /usr/local/cpanel/logs/cphulkd.log |
Cpanel dnsadmin dns clustering daemon | /usr/local/cpanel/logs/dnsadmin_log |
Cpanel taskqueue processing daemon | /usr/local/cpanel/logs/queueprocd.log |
DBmapping | /usr/local/cpanel/logs/setupdbmap_log |
EasyApache build logs | /usr/local/cpanel/logs/easy/apache/ |
Error log | /usr/local/cpanel/logs/error_log |
Installation log | /var/log/cpanel |
License updates and errors | /usr/local/cpanel/logs/license_log |
Locale database modifications | /usr/local/cpanel/logs/build_locale_database_log |
Login errors (CPSRVD) | /usr/local/cpanel/logs/login_log |
Horde | /var/cpanel/horde/log/ |
RoundCube | /var/cpanel/roundcube/log/ |
SquirrelMail | /var/cpanel/squirrelmail/ |
Panic log | /usr/local/cpanel/logs/panic_log |
Per account bandwidth history (Cached) | /var/cpanel/bandwidth.cache/{USERNAME} |
Per account bandwidth history (Human Readable) | /var/cpanel/bandwidth/{USERNAME} |
Service status logs | /var/log/chkservd.log |
Tailwatch driver tailwatchd log | /usr/local/cpanel/logs/tailwatch_log |
Update analysis reporting | /usr/local/cpanel/logs/updated_analysis/{TIMESTAMP}.log |
Update (UPCP) log | /var/cpanel/updatelogs/updated.{TIMESTAMP}.log |
WebDisk (CPDAVD) | /usr/local/cpanel/logs/cpdavd_error_log |
Website statistics log | /usr/local/cpanel/logs/stats_log |
cPanel access log
Access logs and user actions | /usr/local/cpanel/logs/access_log |
cPanel apache log
Apache restarts done through cPanel and WHM | /usr/local/cpanel/logs/safeapcherestart_log |
Domain access logs | /usr/local/apache/domlogs/{DOMAIN} |
Processing of log splitting | /usr/local/cpanel/logs/splitlogs_log |
suPHP audit log | /usr/local/apache/logs/suphp_log |
Web server and CGI application error log | /usr/local/apache/logs/error_log |
cPanel email log
Delivery and receipt log | /var/log/exim_mainlog | |
Incoming mail queue | /var/spool/exim/input/ | |
Log of messages rejected based on ACLS or other policies | /var/log/exim_rejectlog | |
Unexpected/Fatal error log | /var/log/exim_paniclog | |
IMAP, POP login attempts, transactions, fatal errors and spam scoring | /var/log/maillog | /var/log/messages |
Mailman | /usr/local/cpanel/3rdparty/mailmain/logs |
MySQL
MySQL error log | /var/lib/mysql/{SERVER_NAME}.err |
MySQL slow query log (if enabled in my.cnf) | /var/log/slowqueries |
#!/bin/bash for user in `ls /var/cpanel/users`; do chown ${user}:${user} /home/${user}/public_html chmod 755 /home/${user}/public_html find /home/${user}/public_html -group nobody -print0 | xargs -0 chgrp ${user} find /home/${user}/public_html -type f -print0 | xargs -0 chmod 644 find /home/${user}/public_html -type d -print0 | xargs -0 chmod 755 done
# mysqlcheck --all-databases -r #repair # mysqlcheck --all-databases -a #analyze # mysqlcheck --all-databases -o #optimize
/root/.my.cnf
Для истории
Для nginx есть несколько сторонних решений, которые добавляют поддержку nginx в панель
Вероятно MX расположены вне cPanel сервера.
Поэтому ставим Remote Mail Exchanger в разделе cPanel → Mail → MX Entry.
Ошибка ini_set() has been disabled for security reasons
Drupal при попытке войти на сайт выдает You are not authorized to access this page.
В логах
Warning: ini_set() has been disabled for security reasons in drupal_environment_initialize() (line 700 of /home/user/public_html/foobar.com/includes/bootstrap.inc). Warning: ini_set() has been disabled for security reasons in include_once() (line 334 of /home/user/public_html/foobar.com/sites/default/settings.php). Warning: ini_set() has been disabled for security reasons in drupal_settings_initialize() (line 806 of /home/user/public_html/foobar.com/includes/bootstrap.inc).
ini_set добавлен в disable_functions, как наверное понятно для безопасности. Drupal 8 увы не работает без ini_set'а.
Вероятно можно через htaccess задать необходимые параметры для PHP. Поискать в коде ini_set можно как-то так. TODO проверить
find /home/path -type f -name "*.php" -print0 | xargs -0 grep -l ini_set
Что делать не надо, так как не помогает если у вас DSO
Если нет возможности вместо DSO перейти на suPHP, то извините
The only other alternative (besides switching to suPHP) is to remove the option from the disable_functions list globally.
Ошибки (transport_errors.txt)
Решение (увеличить тайм-аут для удаленного хранилища).
Backup → Backup Configuration → Additional Destinations → Edit → Timeout
По-умолчанию было 90 секунд.
Вот почему надо использовать только Manual Updates Only в Update Preferences.
Временное решение: WHM » Home » Service Configuration » Apache Configuration » Global Configuration" and temporarily set "Optimize .htaccess (AllowOverride)" to "Search "/" and below (No optimization, Search Full Path)".
Порт Apache изменился на 8081
В файл /etc/munin/plugin-conf.d/cpanel.conf
добавляем
[apache_*] env.url http://127.0.0.1:%d/whm-server-status?auto env.ports 8081
https://forums.cpanel.net/threads/munin-plugin-warn-mysql-innodb-free-tablespace.208591/
Можно просто отключить такие алерты
В файл /etc/munin/plugin-conf.d/mysql_innodb
добавляем
[mysql_innodb] env.warning 0 env.critical 0
и перезапускаем munin-node
/etc/init.d/munin-node restart
Запустить скрипт spamd_dbm_fix
/scripts/autorepair spamd_dbm_fix
После перезапустить exim
# /etc/init.d/exim restart
Также можно запустить скрипт через браузер - http://IP:2086/scripts2/autofixer или даже так http://IP:2086/scripts2/doautofixer?autofix=spamd_dbm_fix
Коллекция скриптов для автопочинки доступна здесь
Открываем в cPanel: Plugins → ConfigServer Security & Firewall.
Находим "lfd – Login Failure Daemon" В выпадающем меню csf.ignore – IP Blocking выбираем csf.pignore - Process Tracking, далее Edit.
Добавляем
exe:/opt/cpanel/ea-php55/root/usr/bin/php-cgi exe:/opt/cpanel/ea-php56/root/usr/bin/php-cgi exe:/opt/cpanel/ea-php70/root/usr/bin/php-cgi exe:/opt/cpanel/ea-php71/root/usr/bin/php-cgi
И нажимаем Restart LFD.
На почту приходят подобные сообщения
Time: Wed Aug 31 09:15:09 2016 +0200 Account: munin Resource: Virtual Memory Size Exceeded: 215 > 200 (MB) Executable: /usr/local/cpanel/3rdparty/perl/522/bin/perl Command Line: /usr/local/cpanel/3rdparty/perl/522/bin/perl -w /usr/local/cpanel/3rdparty/share/munin/munin-update PID: 23481 (Parent PID:23479) Killed: No
Можно увеличить лимит виртуальной памяти по достижении которого LFD отсылает уведомление. Для этого нужно изменить значение PT_USERMEM
в файле /etc/csf/csf.conf
если вы работаете в SSH либо в CSF → ConfigServer Firewall → Firewall Configuration
Чтобы отключить уведомления для пользователя munin нужно добавить строку user:munin
в файл игнорирования процессов (как сложно порой перевести на русский язык некоторые фразы process ignore file).
В WHM перейти в секцию LFD () и выбрать csf.pignore Process Tracking
в выпадающем списке. Далее в конец файла добавить user:munin
Либо если вы работаете через SSH, то добавьте строку в файл /etc/csf/csf.pignore
Домен уже соответствует IP-адресу, который не использует серверы имен, связанные с этим сервером. Перенесите домен на серверы имен этого сервера или попросите администратора добавить один из его серверов имен в файл /etc/ips.remotedns
и внести надлежащие записи типа А на этом удаленном сервере имен.
Ошибка
Error from park wrapper: Не удается определить IP-адреса сервера имен. Убедитесь в том, что домен зарегистрирован у действующего регистратора доменов.
Error from park wrapper: Sorry, cannot determine nameserver IPs. Please make sure that the domain is registered with a valid domain registrar.
Причина: для домена не установлены NS cPanel сервера.
Решение: в WHM Tweak Settings активировать опции (нежелательно)
Сайт\файлы не совместимы с текущей версией загрузчика Zend. Эта ошибка появляется, когда вы кодировали сайт с помощью Zend Encoder для более низкой версии PHP и пытаетесь запустить его в более высокой версии PHP.
Т.е. вы пытаетесь выполнить закодированный в PHP 5.2 файл на PHP 5.3
Что можно сделать: