Как удалить W3 Total Cache плагин из WordPress

Для удаления W3 Total Cache из WordPress нужно:

1) В меню плагина нажать кнопку очистки кеша.

2) Деактивировать плагин в меню плагинов и там же нажать «Удалить»

3) В корневой директории сайта, в начале файла wp-config.php, если остались, удалить строки:

/** Enable W3 Total Cache Edge Mode */
define('W3TC_EDGE_MODE', true); // Added by W3 Total Cache

/** Enable W3 Total Cache */
define('WP_CACHE', true); // Added by W3 Total Cache

4) Как я заметил после плагина остается много файлов, а на крупных сайтах могут остаться миллионы файлов с кешированными данными.
В директории wp-content удалим файлы, если они есть, advanced-cache.php, object-cache.php, директории w3tc-config и cache (здесь кешированные данные).

Все.

nice и ionice. Приоритеты процессов

nice — позволяет указывать приоритет выполнения процессором различных задач, диапазон приоритетов -20 до 19, где 19 наименьший, если не указать, то будет стандартный приоритет 0. Удобен например при упаковке данных в архивы, чтобы эта задача не грузила сервер или когда нужно запустить много процессов, распределив нагрузку, которые занимают все процессорное время.

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

nice -n 19 КОМАНДА

Посмотреть таблицу процессов и их приоритетов можно так (колонка NI):

ps axl
ps -l

Если таблица большая, можно перенаправить вывод команды в Less и смотреть постранично:

ps axl | less

Чтобы изменить приоритет:

renice -n 19 ПРОЦЕСС(PID)

Проверка значения приоритета по умолчанию (стандартно 0):

nice

ionice — позволяет указать приоритет при операциях ввода/вывода, например чтобы снизить нагрузку на диск. Первым указывается класс от 1 до 3, потом приоритет от 0 до 7, где 7 наименьший.
Классы есть трех видов:
1) Real time — Преимущественный без обращения внимания на другие процессы с указанием приоритетов от 0 до 7.
2) Best Effort — Стандартный с указанием приоритетов от 0 до 7.
3) Idle — При простое без указания приоритетов.

Пример выполнения команды с самым низким приоритетом ввода/вывода:

ionice -c2 -n7 КОМАНДА

Для изменения приоритета:

ionice -c2 -n7 -p ПРОЦЕСС(PID)

Для просмотра установленного приоритета:

ionice -p ПРОЦЕСС(PID)

Можно указать одновременно приоритеты через nice и ionice:

nice -n 19 ionice -c2 -n7 КОМАНДА

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

PHP скрипт «ТОП должников АСРМ «Ника»»

Приведу пример PHP кода отображающего список должников из базы данных АСРМ «Ника»:

<?php
// данные доступа к базе данных
$db_host="192.168.1.1";
$db_user="user";
$db_password="password";
$db_name = "base";
$table_name = "abon";

// соединение с БД
mysql_connect($db_host, $db_user, $db_password) or die (mysql_error());
mysql_select_db($db_name) or die (mysql_error());
mysql_query("SET NAMES 'utf8'");

// запрос
$query = 'SELECT * FROM `'.$table_name.'` WHERE `depozit`<0 ORDER BY `depozit` ASC LIMIT 100;';
$sql = mysql_query($query);

// обрабатываем полученный результат
// количество
$num_rows = mysql_num_rows($sql);
echo $num_rows.' должников показано:<br />';

// выводим данные
while ($sql_data = mysql_fetch_array($sql)) {
    echo '<table cellpadding="5" cellspacing="3" border="0"><tr><td>';
    echo '<tr><td>'.$sql_data['depozit'].'</td><td>'.$sql_data['id'].'</td><td>'.$sql_data['first_name'].'</td><td>'.$sql_data['second_name'].'</td></tr>';
    echo '</tr></td></table>';
}
?>

Смотрите также:
Простое кеширование страниц

Отключение шифрования ecryptfs домашнего каталога

Понадобилось однажды отключить шифрование ecryptfs домашнего каталога, которое было когда-то настроено при установке системы.

В первую очередь сделаем копию домашнего каталога нужного пользователя:

sudo cp -rp /home/user /home/user_backup

Получим точку монтирования в каталоге:

PRIVATE=`cat ~/.ecryptfs/Private.mnt 2>/dev/null || echo $HOME/Private`

Отмонтируем каталог:

ecryptfs-umount-private

Установим права на каталог:

chmod 750 $PRIVATE

Удалим каталог и директории ~/.Private, ~/.ecryptfs:

rm -rf $PRIVATE ~/.Private ~/.ecryptfs

А также в сделанной копии, а то ecryptfs-utils может не удалится:

rm -rf /home/user_backup/.Private /home/user_backup/.ecryptfs

Если ecryptfs больше не будет использоваться в системе, то удалим утилиты:

sudo apt-get remove ecryptfs-utils libecryptfs0

Установим правильные права на директорию пользователя:

sudo chmod 750 /home/user
sudo chown user:user -R /home/user

Скопируем из резервной копии домашнего каталога нужные файлы.
Все.

Можно посмотреть встроенную инструкцию командой:

ecryptfs-setup-private --undo

Смотрите также:
Решение ошибки «Could not chdir to home directory /home/user: Permission denied»

Решение ошибки «Could not chdir to home directory /home/user: Permission denied»

Перенес однажды систему на другой диск и при подключении через SSH увидел следующие ошибки:

Could not chdir to home directory /home/user: Permission denied
-bash: /home/user/.bash_profile: Отказано в доступе

Как оказалось, причиной ошибок были неверные права на директорию /home, а именно не было прав на выполнение от группы и других пользователей.

Чтобы решить проблему сначала посмотрим какие права установлены на директорию home (должны быть drwxr-xr-x):

ls -l /
ls -l /home

И установим верные:

sudo chmod +x /home

При необходимости установим права на директорию нужного пользователя:

sudo chmod 750 /home/user
sudo chown user:user /home/user

Все, в моем случае ошибка исчезла.

Удаление эксплоита с Ubiquiti устройств

Заметил однажды развитие вируса/эксплоита в сети с устройствами Ubiquiti. Эксплоит используя уязвимость в старых версиях прошивок копировал себя на другие устройства и с них же атаковал следующие.

Под атаку в моем случае попались устройства airMAX M с прошивками ниже 5.6.2 XM/XW и включенным http/https смотрящим наружу.

Эксплоит сохраняется в /etc/persistant, создает поддиректорию .mf и файл mf.tar, а также использует rc.poststart
Пароль пользователя изменялся на случайно генерированный, но также можно было войти используя логин эксплоита moth3r и пароль fuck.3r либо fucker.

Посмотреть сгенерированный пароль можно командой ниже, однако позже он все равно менялся:

grep -E "users|sshd.auth.key" /tmp/system.cfg

Для удаления необходимо подключится к устройству через SSH и выполнить следующие команды:

rm -fr /etc/persistent/rc.* /etc/persistent/profile
cfgmtd -w; reboot -f

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

Также есть официальная лечащая утилита написанная на JAVA, скачать её можно тут http://www.ubnt.com/downloads/XN-fw-internal/tools/ubnt-CureMalware.zip
Она умеет сканировать указанную подсеть, удалять эксплоит и обновлять прошивку.

Смотрите также:
Ограничение доступа к Ubiquiti по IP используя Firewall

Ограничение доступа к Ubiquiti по IP используя Firewall

Для теста возьму секторную антенну airMAX Rocket M5 в режиме бриджа и клиентскую airMAX NanoBeam M5 в режиме роутера.

Ограничим доступ сначала на клиентской.
Предположим что она подключена к секторной и имеет IP адрес 192.168.110.40 который смотрит в интернет (получила по DHCP).
IP администратора который должен иметь доступ к ней дистанционно — 10.10.10.5, остальным его необходимо заблокировать.

И так, зайдем в web интерфейс airMAX NanoBeam M5, откроем вкладку «NETWORK«, напротив «Configuration Mode:» выберем «Advanced«, после этого появится больше настроек.
Внизу где «Firewall» поставим галочку на «Enable«.

Чуть ниже добавим правило, указав:
Target: DROP
Interface: WLAN0
IP Type: TCP
Source: 10.10.10.5 (IP с какого разрешено подключаться, а также обязательно поставим галочку перед ним под знаком восклицания)
Port: оставим пустым
Destination: 192.168.110.40 (IP антенны который смотрит наружу)
Port: 22 (это порт SSH, аналогично создаются другие правила для ограничения доступа к HTTP порт — TCP 80, HTTPS — TCP 443, Telnet — TCP 23, SNMP — UDP 161, Discovery — UDP 10001)

Как видим это правило блокирует все TCP соединения к порту 22 интерфейса WLAN0 на IP 192.168.110.40, а поставленная галочка на ! перед Source: 10.10.10.5 означает что блокируется все кроме этого IP.

Жмем «Add«, потом «Change» внизу и вверху «Apply» чтобы применить изменения, после этого антенна перезапустится.

Чтобы ограничить доступ на секторной антенне которая настроена бриджом, добавим эти же правила, только где Interface: укажем ANY (ВСЕ).

Все.

После добавления правил и подключения к устройству по SSH в конфигурации можно увидеть следующее:

ebtables.status=enabled
ebtables.1.status=enabled
ebtables.1.cmd=-A FIREWALL -p 0x0800 --ip-protocol 6 --ip-src ! 10.10.10.5/32 --ip-dst 192.168.110.40/32 --ip-dport 22 -j DROP
ebtables.1.comment=
ebtables.2.status=enabled
ebtables.2.cmd=-A FIREWALL -p 0x0800 --ip-protocol 6 --ip-src ! 10.10.10.5/32 --ip-dst 192.168.110.40/32 --ip-dport 80 -j DROP
ebtables.2.comment=
ebtables.3.status=enabled
ebtables.3.cmd=-A FIREWALL -p 0x0800 --ip-protocol 6 --ip-src ! 10.10.10.5/32 --ip-dst 192.168.110.40/32 --ip-dport 443 -j DROP
ebtables.3.comment=
ebtables.4.status=enabled
ebtables.4.cmd=-A FIREWALL -p 0x0800 --ip-protocol 17 --ip-src ! 10.10.10.5/32 --ip-dst 192.168.110.40/32 --ip-dport 161 -j DROP
ebtables.4.comment=

Смотрите также:
Управление оборудованием Ubiquiti по SSH