Для текущего 5.1.61-alt1, а также как минимум для 5.1.56-alt4 из t6, невозможны соединения с сервером с использованием SSL. Настройка сервера: [mysqld] .... ssl=1 ssl-cert=/etc/mysql/server.cert ssl-key=/etc/mysql/server.key .... Сертификаты создаются с использованием cert-sh-functions. /etc/mysql/ создаётся внутри chroot. После перезапуска сервера согласно "SHOW VARIABLES LIKE '%ssl%'" поддержка SSL в нём включена. Подключение клиента через SSL заканчивается ошибкой: # mysql --ssl --ssl-ca=/var/lib/mysql/etc/mysql/server.cert ERROR 2026 (HY000): SSL connection error Сообщение на стороне сервера - "08S01Bad handshake". Причина - отсутствие внутри chroot /dev/urandom . После создания устройства и перезапуска сервера mkdir /var/lib/mysql/dev mknod /var/lib/mysql/dev/urandom c 1 9 chown root:root /var/lib/mysql/dev /var/lib/mysql/dev/urandom service mysqld restart соединения через SSL начинают работать: # mysql --ssl --ssl-ca=/var/lib/mysql/etc/mysql/server.cert .... mysql> status; ... SSL: Cipher in use is DHE-RSA-AES256-SHA ...
Спасибо, так и сделал в /etc/chroot.d/mysql.lib.
MySQL-5.1.61-alt2 -> sisyphus: * Wed Mar 21 2012 Michael Shigorin <mike@altlinux> 5.1.61-alt2 - create /dev/urandom in chroot so SSL support actually works; thanks naf@ (closes: #27100)
Спасибо! ... Хотя странно это всё. /dev/urandom, по документации, нужен для встроенного yaSSL - т.е. для <= 5.1.56-alt1 . Упоминаний о его необходимости в сборках с OpenSSL нет, и что-то в коде MySQL его тоже сходу увидеть не удалось. Но без него не работает - ни 5.1.56-alt1, ни сборки с OpenSSL.
Про yassl/openssl заметил, но сам с SSL его никогда не применял -- либо сокет, либо в пределах одного физического хоста опять же...