# Главная
# О библиотеке

# Выбор дистрибутива
преимущества Linux/UNIX | основные дистрибутивы | серверный Linux | BSD | LiveCDs | прочее

# Установка и удаление программ
общие вопросы | каталоги софта | специальные случаи

# Настройка и работа
установка, загрузчики | настройка Linux | консоль | файловые системы | процессы | шеллы, русификация, коммандеры | виртуальные машины, эмуляторы

# X Window и оконные менеджеры
настройка X Window | GNOME | KDE | IceWM и др.

# Работа с текстами
редакторы | офис | шрифты, кодировки и русификация | преобразования текстовых файлов | LaTeX, SGML и др. | словари

# Графика
GIMP | фото | обработка изображений | форматы графических файлов

# Сети, администрирование
общие вопросы | Dialup & PPP | брандмауэры | маршрутизация | работа в Windows-сетях | веб-серверы | Apache | прокси-серверы | сетевая печать | прочее

# Программирование
GCC & GNU make | программирование в UNIX | графические библиотеки | Tcl | Perl | PHP | Java & C# | СУБД | CVS | прочее

# Ядро
# Мультимедиа
# Интернет
# Почта
# Безопасность
# Железо
# Разное

# Linux HowTo (как сделать)
# Книги и руководства
# Материалы на английском языке


MySQL The World's Most Popular Open Source Database # Online shop | Site map |  
CompanyProductsSupport & ConsultingTraining & CertificationDownloadsDocumentation
  BooksArticlesMailing ListsPresentationsOther Sites  
Search the MySQL manual:
MySQL Manual
  • 4 Администрирование баз данных
    • 4.3 Управление учетными записями пользователей MySQL
      • 4.3.9 Использование безопасных соединений
        • 4.3.9.1 Основные сведения
        • 4.3.9.2 Требования
        • 4.3.9.3 Параметры команды GRANT

Buy this Reference Manual in softcover from Barnes & Noble!

MySQL Reference Manual
Previous / Next / Up / Table of Contents

4.3.9.1 Основные сведения

MySQL поддерживает шифрованные SSL-соединения. Для лучшего понимания того, как в MySQL используется SSL, мы приводим здесь основные сведения по SSL и X509. Пользователи, которые уже знакомы с данным протоколом и стандартом, эту часть могут пропустить.

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

В протоколе SSL используются различные алгоритмы шифрования, обеспечивающие безопасность для данных, передаваемых через общедоступные сети. Этот протокол содержит средства, позволяющие обнаруживать любые изменения, потери и повторы данных. В протоколе SSL также применяются алгоритмы для проведения идентификации при помощи стандарта X509.

Шифровка - это метод, позволяющий сделать прочтение любых данных невозможным. Фактически при современном положении дел для алгоритмов шифрования требуется использование дополнительных элементов безопасности. Они должны обеспечивать противодействие многим видам известных на настоящий момент атак, таких как изменение порядка зашифрованных сообщений или повторение данных.

Стандарт X509 позволяет производить идентификацию в Internet. Чаще всего он используется в приложениях электронной коммерции. Упрощенно схема его применения выглядит следующим образом: существует некая организация под названием "Certificate Authority" (можно перевести как ``Сертификационное Бюро''. - Прим. пер.), которая назначает электронные сертификаты всем, кому они нужны. Сертификаты основываются на асимметричных алгоритмах шифрования, содержащих два ключа - публичный и секретный. Владелец сертификата может подтвердить свою личность, предъявив свой сертификат другой стороне. Сертификат состоит из публичного ключа владельца. Любые данные, зашифрованные при помощи этого публичного ключа могут быть расшифрованы только при помощи соответствующего секретного ключа, который находится у владельца сертификата.

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

Если вы хотите получить дополнительную информацию о SSL/X509/шифровании, необходимо воспользоваться своим любимым поисковым сервером Internet и произвести поиск по словам, которые вас интересуют.

User Comments

Posted by Bat Fung on Saturday October 5 2002, @7:54pm[Delete] [Edit]

I would hope the openssl will be compiled into the
binary releases in future as it is a very desirable
feature when connecting to a MySQL server via the
internet is necessary. I don't see how it will slow
down the normal connections because ssl will not be
activated unless the client connects by specifying the
CLIENT_SSL flag.

Posted by Michael Wartman on Tuesday October 29 2002, @1:43pm[Delete] [Edit]

A few gripes here. first off, i agree with the comment
posted above. they should have the ssl enabled
binary able to be downloaded. at least have the
option of downloading one with ssl enabled. Also,
and most important: I cannot get mysql to build on
redhat8.0. i can install the rpm fine, but the rpm
doesn't have ssl options. i have downgraded my gcc
as i saw somewhere on this site, and i still get the
same error:

libmysql.c: In function `mysql_real_connect':
libmysql.c:1673: warning: passing arg 5 of
`gethostbyname_r' from incompatible pointer type
libmysql.c:1673: too few arguments to function
`gethostbyname_r'
libmysql.c:1673: warning: assignment makes
pointer from integer without a cast
make[2]: *** [libmysql.lo] Error 1
make[2]: Leaving directory
`/home/admins/shad0/build/mysql-4.0.4-
beta/libmysql'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/home/admins/shad0/build/mysql-4.0.4-beta'
make: *** [all-recursive-am] Error 2
[root@lachesis mysql-4.0.4-beta]#

did that with 3.23.53 as well. this is quite annoying,
and i have spent the entire day trying to get this to
work as stated.

Posted by Georg Richter on Thursday January 30 2003, @1:55pm[Delete] [Edit]

To fix that Problem just install: gcc-c++-3.2-7 on your RedHat8.0 and i will work fine! dependencie rpm is libstdc++-devel

nice day

Posted by Derick Rethans on Monday February 3 2003, @4:50am[Delete] [Edit]

I also had to install libtermcap-devel on RH8, which is not installed by default.

Posted by Manfred Jordan on Friday February 14 2003, @7:01am[Delete] [Edit]

I had the same problem with SuSe 8.1 distribution.
examined a whole day the source code of mysql - was a pain in the neck :-)

They should mention that the gcc++ compiler is needed - the error message is a bit confusing.

Manfred

Add your own comment.

Top / Previous / Next / Up / Table of Contents
# MySQL.com home | Site map | Contact us | Press | Jobs | Privacy policy | Trademark info | © 1995-2003 MySQL AB. All rights reserved.