SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 25.10.2013 16:51:12

IDX
Участник
Зарегистрирован: 25.10.2013
Сообщений: 11

SSL для MySQL. Платформа Windows Server 2008

Обыскал весь инет. Писал на форуме одном. мне очень умная девочко\мальчег дал(а) ссылку.
Но там все под никсовые.

1. Как создать сертификат SSL для MySQL (используемый софт)
2. Как настроить сервер MySQL с поддержкой SSL соединения (Windows Server 2008, не никсовые)
3. Строка подключения с использованием SSL.

Думаю пригодится многим начинающим  wink

Отредактированно IDX (26.10.2013 02:44:13)

Неактивен

 

#2 25.10.2013 22:56:27

IDX
Участник
Зарегистрирован: 25.10.2013
Сообщений: 11

Re: SSL для MySQL. Платформа Windows Server 2008

) сам разобрался. сделано

Действия:
1. Скачиваем OpenSSL по ссылке и кидаем в корень релиза MarinaDB, я использовал MariaDB 5.5 (x64)
2. Добавляем строки в файл my.ini (MariaDB 5.5 (x64)) (в секцию mysqld)

[mysqld]
.....
#SSL
ssl
ssl-ca=C:/SSL/ca-cert.pem
ssl-cert=C:/SSL/server-cert.pem
ssl-key=C:/SSL/server-key.pem

3. Перезапускаем службу MySQL и для проверки в консоли вводим

show variables like '%ssl%';

Вы видите:
MariaDB [(none)]> show variables like '%ssl%';
have_openss   YES                   
have_ssl         YES                   
ssl_ca            C:/SSL/ca-cert.pem     
ssl_cert          C:/SSL/server-cert.pem
ssl_key           C:/SSL/server-key.pem 

4. Создаем батник (для ускорения)

openssl genrsa 2048 > ca-key.pem
openssl req -new -x509 -nodes -days 3650 -key ca-key.pem > ca-cert.pem
openssl req -newkey rsa:2048 -days 3650 -nodes -keyout server-key.pem > server-req.pem
openssl x509 -req -in server-req.pem -days 3650 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 777 > server-cert.pem
openssl req -newkey rsa:2048 -days 3650 -nodes -keyout client-key.pem > client-req.pem
openssl x509 -req -in client-req.pem -days 3650 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 777 > client-cert.pem

Вводим параметры и в конце всего копируем соответствующие файлы  что на выходе в необходимые нам директории
ca-cert.pem,server-cert.pem, server-key.pem на сервер
client-key.pem - Клиентский ключ
client-cert.pem - Клиентский сертификат
ca-cert.pem - Сертификат CA 

Усё заработало wink

Отредактированно IDX (25.10.2013 22:58:55)


Прикрепленные файлы:
Attachment Icon start.cmd, Размер: 509 байт, Скачано: 1,013

Неактивен

 

#3 25.10.2013 23:10:21

IDX
Участник
Зарегистрирован: 25.10.2013
Сообщений: 11

Re: SSL для MySQL. Платформа Windows Server 2008

Строка подключения
Host=XXX.XXX.XXX.XXX;Port=XXX;database=test;user=sslclient;CertificateFile=<путь>\client.pfx;CertificatePassword=pass;SSL Mode=Required

Отредактированно IDX (26.10.2013 16:35:21)

Неактивен

 

#4 25.10.2013 23:55:07

IDX
Участник
Зарегистрирован: 25.10.2013
Сообщений: 11

Re: SSL для MySQL. Платформа Windows Server 2008

На серваке не забудьте изменить пользователя(-ей), установив для него что он(и) должен принимать коннект только через SSL. Ну это в привилегиях smile

Неактивен

 

#5 26.10.2013 00:45:08

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: SSL для MySQL. Платформа Windows Server 2008

IDX, спасибо мануал по SSL, обязательно пригодится кому-нибудь

Неактивен

 

#6 26.10.2013 16:33:03

IDX
Участник
Зарегистрирован: 25.10.2013
Сообщений: 11

Re: SSL для MySQL. Платформа Windows Server 2008

Забыл сказать:
нужно сформировать PFX файл
openssl pkcs12 -export -in client-cert.pem -inkey client-key.pem -certfile ca-cert.pem -out client.pfx

Отредактированно IDX (26.10.2013 16:33:45)

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson