Назад | Перейти на главную страницу

Не удается подключиться к mysql через командную строку, самоподписанный сертификат в цепочке сертификатов

Я установил mariadb в моей системе ubunutu 18.04 lts.

У меня скрипт резервного копирования работал без проблем, но где-то в обновлениях он перестал работать, но я сначала не заметил, потому что кто смотрит резервные копии, когда они надежно работали целую вечность.

Но теперь я заметил, что резервное копирование перестало работать, и когда я пытаюсь эмулировать запуск команды резервного копирования, я получаю сообщение об ошибке:

ОШИБКА 2026 (HY000): ошибка подключения SSL: самоподписанный сертификат в цепочке сертификатов

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

$ mysql -u root -p################################ -N -e 'show databases'
ERROR 2026 (HY000): SSL connection error: self signed certificate in certificate chain`

Даже если я просто войду, я получаю ту же ошибку

$ mysql -u root -p
Enter password:
ERROR 2026 (HY000): SSL connection error: self signed certificate in certificate chain

Несколько месяцев назад у меня не было проблем с запуском mysql на сервере через командную строку. Где-то обновления, должно быть, изменили это, но я не знаю, что это изменило.

Я действительно не могу выполнить какую-либо значимую команду с mysql, не отказываясь от цепочки сертификатов.

Моя версия:

$ mysql -V
mysql  Ver 15.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

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

Я обновил все в apt-get и apt, доступно 0 обновлений.

Welcome to Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-88-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

  System information as of Tue Mar  3 16:20:40 GMT 2020

  System load:  0.89             Processes:           209
  Usage of /:   5.5% of 3.58TB   Users logged in:     0
  Memory usage: 12%              IP address for eth0: ###.###.###.###
  Swap usage:   0%


 * Canonical Livepatch is available for installation.
   - Reduce system reboots and improve kernel security. Activate at:
     https://ubuntu.com/livepatch

0 packages can be updated.
0 updates are security updates.

/Etc/mysql/my.cnf

# MariaDB-specific config file.
# Read by /etc/mysql/my.cnf

[client]
# Default is Latin1, if you need UTF-8 set this (also in server section)
#default-character-set = utf8
#ojiaergoijboij = halksjd
#nduks =- ksjdfljsd

[mysql]
ssl-ca=/etc/mysql/ssl/ca.pem
#ssl-cert=/etc/mysql/ssl/client-cert.pem
#ssl-key=/etc/mysql/ssl/client-key.pem


[mysqld]
#
# * Character sets
#
# Default is Latin1, if you need UTF-8 set all this (also in client section)
#
#character-set-server  = utf8
#collation-server      = utf8_general_ci
#character_set_server   = utf8
#collation_server       = utf8_general_ci
# Import all .cnf files from configuration directory
!includedir /etc/mysql/mariadb.conf.d/
innodb_flush_log_at_trx_commit=2
innodb_file_per_table=1
innodb_buffer_pool_size=8G
thread_cache_size=10
skip-name-resolve
#query_cache_type=1
#query_cache_limit=256k
#query_cache_min_res_unit=2k
#query_cache_size=80M
tmp_table_size=256M
max_heap_table_size=256M
query_cache_size=0
query_cache_type=0

ssl
ssl-ca=/etc/mysql/ssl/ca-cert.pem
ssl-cert=/etc/mysql/ssl/server-cert.pem
ssl-key=/etc/mysql/ssl/server-key.pem

Когда я проверяю сертификаты, они выходят нормально.

openssl verify -CAfile /etc/mysql/ssl/ca-cert.pem /etc/mysql/ssl/server-cert.pem /etc/mysql/ssl/client-cert.pem
/etc/mysql/ssl/server-cert.pem: OK
/etc/mysql/ssl/client-cert.pem: OK

У вас новая почта в / var / mail / root

Могу ли я решить эту проблему с помощью флага mysql? Или это то, что мне нужно решить в настройках openSSL?

Я пробовал погуглить, но ближе всего к симптомам, которые я смог найти, был вопрос 2012 года.

В конце концов, это была самая распространенная из возможных ошибок.
Человек, а точнее я.

Раньше я комментировал клиентские сертификаты из my.cnf, но почему-то пренебрегал комментариями к корневому сертификату.

[mysql]
ssl-ca=/etc/mysql/ssl/ca.pem
#ssl-cert=/etc/mysql/ssl/client-cert.pem
#ssl-key=/etc/mysql/ssl/client-key.pem

Это вызвало ошибку.

ОШИБКА 2026 (HY000): ошибка подключения SSL: самоподписанный сертификат в цепочке сертификатов

Закомментировав корневой сертификат, проблема была решена. Возможно, предыдущие версии mariadb были более снисходительными.

[mysql]
#ssl-ca=/etc/mysql/ssl/ca.pem
#ssl-cert=/etc/mysql/ssl/client-cert.pem
#ssl-key=/etc/mysql/ssl/client-key.pem