Spec-Zone.ru › MySQL 8.4

6.4.2 mysql_secure_installation — Улучшение безопасности установки MySQL

Эта программа позволяет улучшить безопасность вашей установки MySQL следующими способами:

  • Вы можете установить пароль для root учетных записей.

  • Вы можете удалить root учетных записей, доступных извне локального хоста.

  • Вы можете удалить учетные записи анонимных пользователей.

  • Вы можете удалить базу данных test (которая по умолчанию доступна всем пользователям, даже анонимным пользователям), а также привилегии, позволяющие любому пользователю получить доступ к базам данных с именами, начинающимися с test_.

mysql_secure_installation поможет вам реализовать рекомендации по безопасности, аналогичные тем, которые описаны в разделе 2.9.4, «Обеспечение безопасности начальной учетной записи MySQL».

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

mysql_secure_installation

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

Компонент validate_password может использоваться для проверки надежности паролей. Если плагин не установлен, mysql_secure_installation запросит пользователя о желании установить его. Все введённые позже пароли будут проверяться с помощью плагина, если он активирован.

Большинство стандартных опций клиента MySQL, таких как --host и --port, могут быть использованы в командной строке и в файлах опций. Например, для подключения к локальному серверу через IPv6, используя порт 3307, используйте следующую команду:

mysql_secure_installation --host=::1 --port=3307

mysql_secure_installation поддерживает следующие опции, которые могут быть указаны в командной строке или в группах [mysql_secure_installation] и [client] файла опций. Сведения о файлах опций, используемых программами MySQL, см. в разделе 6.2.2.2, «Использование файлов опций».

Таблица 6.9 Параметры mysql_secure_installation

Таблица 6.9 Параметры mysql_secure_installation
Имя опции Описание
--defaults-extra-file Чтение указанного файла опций помимо обычных файлов опций
--defaults-file Чтение только указанного файла опций
--defaults-group-suffix Значение суффикса группы опций
--help Отображение сообщения справки и выход
--host Хост, на котором находится сервер MySQL
--no-defaults Не читать файлы опций
--password Принимается, но всегда игнорируется. При каждом вызове mysql_secure_installation пользователя просят ввести пароль
--port Номер TCP/IP порта для подключения
--print-defaults Печать значений по умолчанию
--protocol Протокол транспорта для использования
--socket Файл Unix-сокет или именованная Windows-пайпа для использования
--ssl-ca Файл, содержащий список доверенных SSL-Центров сертификации
--ssl-capath Директория, содержащая файлы сертификатов доверенных SSL-Центров сертификации
--ssl-cert Файл, содержащий X.509 сертификат
--ssl-cipher Разрешённые шифры для шифрования соединения
--ssl-crl Файл, содержащий списки отзыва сертификатов
--ssl-crlpath Директория, содержащая файлы списков отзыва сертификатов
--ssl-fips-mode Включить режим FIPS на стороне клиента
--ssl-key Файл, содержащий X.509 ключ
--ssl-mode Желаемое состояние безопасности соединения с сервером
--ssl-session-data Файл, содержащий данные SSL сеанса
--ssl-session-data-continue-on-failed-reuse Поддерживать соединения, если переиспользование сеанса завершится неудачно
--tls-ciphersuites Разрешённые наборы шифров TLSv1.3 для зашифрованных соединений
--tls-sni-servername Имя сервера, предоставленное клиентом
--tls-version Разрешённые протоколы TLS для зашифрованных соединений
--use-default Выполнить без взаимодействия с пользователем
--user Имя пользователя MySQL для подключения к серверу

END_OF_DOCUMENT_MARKER
  • --help, -?

    Формат командной строки --help

    Отобразить сообщение справки и завершить работу.

  • --defaults-extra-file=file_name

    Формат командной строки --defaults-extra-file=file_name
    Тип Имя файла

    Считывать этот файл параметров после глобального файла параметров, но (в Unix) перед файлом параметров пользователя. Если файл не существует или недоступен, возникает ошибка. Если file_name не является абсолютным путем, он интерпретируется относительно текущей директории.

    Для дополнительной информации об этом и других параметрах файла параметров, см. Раздел 6.2.2.3, «Параметры командной строки, влияющие на обработку файла параметров».

  • --defaults-file=file_name

    Формат командной строки --defaults-file=file_name
    Тип Имя файла

    Использовать только указанный файл параметров. Если файл не существует или недоступен, возникает ошибка. Если file_name не является абсолютным путем, он интерпретируется относительно текущей директории.

    Для дополнительной информации об этом и других параметрах файла параметров, см. Раздел 6.2.2.3, «Параметры командной строки, влияющие на обработку файла параметров».

  • --defaults-group-suffix=str

    Формат командной строки --defaults-group-suffix=str
    Тип Строка

    Считывать не только обычные группы параметров, но также группы с обычными именами и суффиксом str. Например, mysql_secure_installation обычно считывает группы [client] и [mysql_secure_installation]. Если этот параметр задан как --defaults-group-suffix=_other, mysql_secure_installation также считывает группы [client_other] и [mysql_secure_installation_other].

    Для дополнительной информации об этом и других параметрах файла параметров, см. Раздел 6.2.2.3, «Параметры командной строки, влияющие на обработку файла параметров».

  • --host=host_name, -h host_name

    Формат командной строки --host

    Подключиться к серверу MySQL на указанном хосте.

  • --no-defaults

    Формат командной строки --no-defaults

    Не считывать никакие файлы параметров. Если запуск программы терпит неудачу из-за считывания неизвестных параметров из файла параметров, --no-defaults можно использовать для предотвращения их считывания.

    Исключением является то, что файл .mylogin.cnf считывается во всех случаях, если он существует. Это позволяет указывать пароли более безопасным способом, чем в командной строке, даже когда используется --no-defaults. Для создания .mylogin.cnf используйте утилиту mysql_config_editor. См. Раздел 6.6.7, «mysql_config_editor — Утилита конфигурации MySQL».

    Для дополнительной информации об этом и других параметрах файла параметров, см. Раздел 6.2.2.3, «Параметры командной строки, влияющие на обработку файла параметров».

  • --password=password, -p password

    Формат командной строки --password=password
    Тип Строка
    Значение по умолчанию [none]

    Этот параметр принимается, но игнорируется. Используется ли этот параметр или нет, mysql_secure_installation всегда запрашивает пароль у пользователя.

  • --port=port_num, -P port_num

    Формат командной строки --port=port_num
    Тип Числовое
    Значение по умолчанию 3306

    Номер порта для TCP/IP соединений.

  • --print-defaults

    Формат командной строки --print-defaults

    Вывести имя программы и все параметры, полученные из файлов параметров.

    Для дополнительной информации об этом и других параметрах файла параметров, см. Раздел 6.2.2.3, «Параметры командной строки, влияющие на обработку файла параметров».

  • --protocol={TCP|SOCKET|PIPE|MEMORY}

    Формат командной строки --protocol=type
    Тип Строка
    Значение по умолчанию [see text]
    Допустимые значения

    TCP

    SOCKET

    PIPE

    MEMORY

    Транспортный протокол для подключения к серверу. Полезно, когда другие параметры подключения обычно приводят к использованию протокола, отличного от того, который вам нужен. Для получения подробностей о допустимых значениях см. Раздел 6.2.7, «Протоколы транспортного соединения».

  • --socket=path, -S path

    Формат командной строки --socket={file_name|pipe_name}
    Тип Строка

    Для соединений с localhost, используемый файл Unix-соккета или, в Windows, имя именованной трубы.

    В Windows этот параметр применим только если сервер был запущен с включенным системным переменной named_pipe, чтобы поддерживать соединения с использованием именованных труб. Кроме того, соединение должно быть членом группы Windows, указанной системной переменной named_pipe_full_access_group.

  • --ssl*

    Параметры, начинающиеся с --ssl, определяют, нужно ли подключаться к серверу с использованием шифрования, и указывают, где найти ключи и сертификаты SSL. См. Параметры командной строки для шифрованных соединений.

END_OF_DOCUMENT_MARKER
  • --ssl-fips-mode={OFF|ON|STRICT}

    Формат командной строки --ssl-fips-mode={OFF|ON|STRICT}
    Устаревший Да
    Тип Перечисление
    Значение по умолчанию OFF
    Допустимые значения

    OFF

    ON

    STRICT

    Управляет включением режима FIPS на стороне клиента. Опция --ssl-fips-mode отличается от других опций --ssl-xxx тем, что она не используется для установления защищенных соединений, а скорее для управления разрешенными криптографическими операциями. Смотрите Раздел 8.8, «Поддержка FIPS».

    Разрешены следующие значения --ssl-fips-mode:

    • OFF: Отключить режим FIPS.

    • ON: Включить режим FIPS.

    • STRICT: Включить “строгий” режим FIPS.

    Примечание

    Если модуль FIPS Object OpenSSL недоступен, единственное допустимое значение для --ssl-fips-mode равно OFF. В этом случае установка --ssl-fips-mode в ON или STRICT приводит к появлению предупреждения при запуске клиента и работе в режиме, отличном от FIPS.

    Эта опция устарела. Ожидается, что она будет удалена в будущих версиях MySQL.

  • --tls-ciphersuites=ciphersuite_list

    Формат командной строки --tls-ciphersuites=ciphersuite_list
    Тип Строка

    Допустимые наборы шифров для защищенных соединений, использующих TLSv1.3. Значение представляет собой список одного или нескольких имён наборов шифров, разделенных двоеточием. Наборы шифров, которые могут быть указаны для этой опции, зависят от используемой библиотеки SSL при компиляции MySQL. Подробнее см. Раздел 8.3.2, «Защищенные соединения Протоколы и шифры TLS».

  • --tls-sni-servername=server_name

    Формат командной строки --tls-sni-servername=server_name
    Тип Строка

    При указании имя передаётся в библиотеку API C libmysqlclient с помощью опции MYSQL_OPT_TLS_SNI_SERVERNAME. Имя сервера не чувствительно к регистру. Чтобы увидеть имя сервера, указанное клиентом для текущей сессии, если таковое имеется, проверьте переменную состояния Tls_sni_server_name.

    Server Name Indication (SNI) — это расширение протокола TLS (OpenSSL должен быть скомпилирован с расширениями TLS для работы этой опции). Реализация SNI в MySQL представляет только клиентскую сторону.

  • --tls-version=protocol_list

    Формат командной строки --tls-version=protocol_list
    Тип Строка
    Значение по умолчанию

    TLSv1,TLSv1.1,TLSv1.2,TLSv1.3 (OpenSSL 1.1.1 или выше)

    TLSv1,TLSv1.1,TLSv1.2 (в противном случае)

    Допустимые протоколы TLS для защищенных соединений. Значение представляет собой список одного или нескольких имён протоколов, разделённых запятыми. Протоколы, которые могут быть указаны для этой опции, зависят от используемой библиотеки SSL при компиляции MySQL. Подробнее см. Раздел 8.3.2, «Защищенные соединения Протоколы и шифры TLS».

  • --use-default

    Формат командной строки --use-default
    Тип Булево

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

  • --user=user_name, -u user_name

    Формат командной строки --user=user_name
    Тип Строка

    Имя пользователя учётной записи MySQL, используемой для подключения к серверу.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/mysql-secure-installation.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API