Скриптът securemysql — подсигуряване на MySQL за cPanel
Какво представлява?
Скриптът:
/usr/local/cpanel/scripts/securemysql
се използва за засилване на сигурността на MySQL инсталацията, свързана с твоя cPanel сървър. Той извършва няколко важни промени, които елиминират уязвимости, свързани с достъп, потребители и тестови настройки.
Какво прави скриптът?
При изпълнение, той може да извърши следните действия:
- Проверява дали root паролата за MySQL съществува.
- Променя собствеността на директориите var/db/mysql и var/lib/mysql, така че те да са собственост на потребителя mysql.
- Премахва анонимни потребители и дистанционни root потребители.
- Изтрива тестовата база данни.
- Премахва глобални привилегии за LOCK TABLES и TMP TABLES.
За да отмениш направените промени, създай празен файл с име:
/etc/securemysqldisable
Как се използва?
Формат на командата:
/usr/local/cpanel/scripts/securemysql [аргументи] [действия]
Аргументи:
| Аргумент | Какво прави | Пример |
| -a | Задава кои действия да се изпълнят, разделени със запетаи. Ако искаш да изпълниш всички, използвай само -a без стойности. | -a removeanon,removetestdb |
| -F | Изпълнява скрипта без да показва помощен текст. | -F |
| -h | Показва помощната информация (help). | -h |
| -q | Изпълнява скрипта в “тих режим” — без изход към терминала. | -q |
Действия, които можеш да зададеш с -a:
| Действие | Какво прави |
| chowndatadir | Променя собствеността на директорията с MySQL данните на потребителя mysql. |
| removeanon | Премахва всички анонимни MySQL потребители. |
| removehordeallhosts | Премахва несигурни login данни и привилегии от Horde (не се използва в нови версии — cPanel вече използва SQLite). |
| removehordeblankpass | Премахва потребители с празни пароли в Horde (отново остаряла функция). |
| removelockntmp | Премахва глобалните права за LOCK TABLES и CREATE TEMPORARY TABLES. |
| removepublicgrants | Премахва стандартни привилегии за потребители на MariaDB. Особено важно за версии 10.11 и нагоре, където се създава тестова база с пълни права по подразбиране. |
| removeremoteroot | Премахва възможността за отдалечен достъп на root потребителя до MySQL. |
| removetestdb | Изтрива тестовата база test и свързаните права. |
Пример:
Да изпълниш всички действия по подсигуряване на MySQL:
/usr/local/cpanel/scripts/securemysql -a
Да премахнеш само анонимни потребители и тестовата база:
/usr/local/cpanel/scripts/securemysql -a removeanon,removetestdb