![Page 1: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/1.jpg)
LUIS MENGUAL (c) Bases de Datos
Estableciendo Sesiones SSL en MySQL
![Page 2: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/2.jpg)
LUIS MENGUAL (c) Bases de Datos
Estableciendo Sesiones SSL en MySQL
• Crear la infraestructura de certificados X.509 necesaria para incorporar servicios de seguridad en el acceso a un Base de Datos
• Establecer de forma práctica sesiones seguras en MySQL
• Captura del trafico en el acceso a la BD
Objetivos:
![Page 3: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/3.jpg)
LUIS MENGUAL (c) Bases de Datos
Índice Creación de la Infraestructura necesaria para el establecimiento de accesos seguros SSL: 1. Usuario cliente_ssl0: Cliente SSL sin Autenticación de usuario 2. Usuario cliente_ssl: Cliente SSL con Autenticación de usuario
![Page 4: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/4.jpg)
LUIS MENGUAL (c) Bases de Datos
Confirmar que la versión actual de MySQL soporta el protocolo SSL
2. Desde un cliente mysql -u root Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version: 5.1.37 Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> SHOW VARIABLES LIKE "have_ssl"; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | have_ssl | YES | +---------------+-------+ 1 row in set (0.00 sec)
1. Desde el servidor MySQL mysqld --ssl [ERROR] mysql: unknown option ‘—ssl’ ->Esto indica que no soporta SSL
![Page 5: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/5.jpg)
LUIS MENGUAL (c) Bases de Datos
Crear certificados Certificado de la CA
openssl> genrsa -out CAClavePrivada.pem 4096 (Generamos un par de claves pública y privada. Obtenemos el fichero “CAClavePrivada.pem” conteniendo la clave privada de la CA) req -new -x509 -days 3650 -key CAClavePrivada.pem -out CACertificado.pem (Obtenemos un certificado autofirmado, fichero “CACertificado.pem”, que será el certificado de la CA) x509 –inform PEM –in CACertificado.pem –outform DER –out CACertificado.crt (Podemos convertir el formato *.pem del certificado a formato *.crt)
![Page 6: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/6.jpg)
LUIS MENGUAL (c) Bases de Datos
genrsa -out SR_ClavePrivada.pem 1024 (Generamos un par de claves pública y privada para el usuario. Obtenemos el fichero “SR_ClavePrivada.pem” conteniendo la clave privada del servidor) req –new -key SR_ClavePrivada.pem -out SR_Peticion.csr (Creamos un certificado de usuario y creamos una petición a la espera que la firme la CA) x509 -req -days 365 -in SR_Peticion.csr -CA CACertificado.pem -CAkey CAClavePrivada.pem -set_serial 01 -out SR_Certificado.pem (obtenemos un certificado firmado por la CA, listo para ser utilizado en el Gestor de la BD, servidor)
Crear certificados Certificado del Servidor (I)
![Page 7: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/7.jpg)
LUIS MENGUAL (c) Bases de Datos
x509 –inform PEM –in SR_Certificado.pem –outform DER –out SR_Certificado.crt (opcionalmente podemos obtener el fichero del certificado del servidor en formato *.crt) pkcs12 -export -in SR_Certificado.pem -inkey SR_ClavePrivada.pem -out SR_Certificado.p12 (opcionalmente podemos obtener el fichero del certificado del servidor en formato *.p12, incorporando la clave privada)
Crear certificados Certificado del Servidor (II)
![Page 8: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/8.jpg)
LUIS MENGUAL (c) Bases de Datos
Arranque Servidor
1. Arranque manual del Servidor mysqld --ssl --ssl-ca=CACertificado.pem --ssl-cert=SR_Certificado.pem --ssl-key=SR_ClavePrivada.pem (Los certificados deben estar en el path adecuado) 2. Arranque automático con el fichero de configuración (my.ini)
![Page 9: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/9.jpg)
LUIS MENGUAL (c) Bases de Datos
Arranque Manual Servidor Variables SSL
![Page 10: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/10.jpg)
LUIS MENGUAL (c) Bases de Datos
Conexión Cliente root ssl Comprobación certificados cargados correctamente (I)
mysql -u root --ssl-ca=CACertificado.pem Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 Server version: 5.1.37 Source distribution Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. Ahora comprobamos que la conexión se ha establecido con ssl mysql> SHOW STATUS LIKE "ssl_cipher"; +---------------+--------------------+ | Variable_name | Value | +---------------+--------------------+ | Ssl_cipher | DHE-RSA-AES256-SHA | +---------------+--------------------+
![Page 11: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/11.jpg)
LUIS MENGUAL (c) Bases de Datos
mysql> \s -------------- mysql Ver 14.14 Distrib 5.5.16, for Win32 (x86) Connection id: 3 Current database: Current user: root@localhost SSL: Cipher in use is DHE-RSA-AES256-SHA Using delimiter: ; Server version: 5.1.37 Source distribution Protocol version: 10 Connection: localhost via TCP/IP Server characterset: latin1 Db characterset: latin1 Client characterset: cp850 Conn. characterset: cp850 TCP port: 3306 Uptime: 30 sec Threads: 3 Questions: 22 Slow queries: 0 Opens: 19 Flush tables: 1 Open tab les: 12 Queries per second avg: 0.733 --------------
Conexión Cliente root ssl Comprobación certificados cargados correctamente (II)
![Page 12: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/12.jpg)
LUIS MENGUAL (c) Bases de Datos
Si no están bien cargados los certificados saldría lo siguiente: mysql -u root --ssl-ca=CACertificado.pem Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 9 Server version: 5.1.37 Source distribution Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> SHOW STATUS LIKE "ssl_cipher"; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | Ssl_cipher | | +---------------+-------+ 1 row in set (0.00 sec)
Conexión Cliente root ssl Comprobación certificados cargados correctamente (III)
![Page 13: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/13.jpg)
LUIS MENGUAL (c) Bases de Datos
mysql> \s -------------- mysql Ver 14.14 Distrib 5.5.16, for Win32 (x86) Connection id: 9 Current database: Current user: root@localhost SSL: Not in use Using delimiter: ; Server version: 5.1.37 Source distribution Protocol version: 10 Connection: localhost via TCP/IP Server characterset: latin1 Db characterset: latin1 Client characterset: cp850 Conn. characterset: cp850 TCP port: 3306 Uptime: 5 min 46 sec Threads: 1 Questions: 59 Slow queries: 0 Opens: 20 Flush tables: 1 Open tab les: 13 Queries per second avg: 0.170 --------------
Conexión Cliente root ssl Comprobación certificados cargados correctamente (IV)
![Page 14: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/14.jpg)
LUIS MENGUAL (c) Bases de Datos
Conexión Cliente root ssl MySQL Workbench (I)
![Page 15: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/15.jpg)
LUIS MENGUAL (c) Bases de Datos
Conexión Cliente root ssl MySQL Workbench (II)
![Page 16: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/16.jpg)
LUIS MENGUAL (c) Bases de Datos
ssl ssl-ca = "C:/xampp/mysql/CONFIGURACION_MYSQL_SSL/SERVER/CACertificado.pem" ssl-cert = "C:/xampp/mysql/CONFIGURACION_MYSQL_SSL/SERVER/SR_Certificado.pem" ssl-key = "C:/xampp/mysql/CONFIGURACION_MYSQL_SSL/SERVER/SR_ClavePrivada.pem" ssl-capath = "C:/xampp/mysql/CONFIGURACION_MYSQL_SSL/SERVER“ • Con el gestor de BD apagado hay que editar el fichero my.ini insertar las líneas anteriores, guardar y cerrar el fichero • Copiar los certificados en los paths especificados
• Finalmente, reiniciar el Gestor de la BD
Arranque automático Servidor (I)
Fichero configuración: “my.ini”
![Page 17: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/17.jpg)
LUIS MENGUAL (c) Bases de Datos
Arranque Automático Servidor Variables SSL
![Page 18: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/18.jpg)
LUIS MENGUAL (c) Bases de Datos
CREAR USUARIOS SSL
1. Usuario cliente_ssl0: Cliente SSL sin Autenticación de usuario 2. Usuario cliente_ssl: Cliente SSL con Autenticación de usuario 3. Usuario cliente_ssl1: Cliente SSL con Autenticación de usuario, verificando el propietario del certificado 4. Usuario cliente_ssl2: Cliente SSL con Autenticación de usuario, verificando el emisor del certificado
![Page 19: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/19.jpg)
LUIS MENGUAL (c) Bases de Datos
CREAR USUARIOS SSL (1)
1. Usuario cliente_ssl0: Cliente SSL sin Autenticación de usuario
![Page 20: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/20.jpg)
LUIS MENGUAL (c) Bases de Datos
1. Crear cliente_ssl0 (sin autenticación) Configuración en el servidor
GRANT ALL PRIVILEGES ON *.* TO 'cliente_ssl0'@'%' IDENTIFIED BY 'ssl‘ WITH GRANT OPTION; (Crear el usuario cliente_ssl0“ con clave ssl) GRANT ALL PRIVILEGES ON *.* TO 'cliente_ssl0'@'%' IDENTIFIED BY 'ssl' REQUIRE SSL; (Al cliente cliente_ssl0 con clave ssl se el exige utilizar SSL) SHOW GRANTS FOR cliente_ssl0; (Vemos los privilegios/requisitos creados para este usuario) - 'GRANT ALL PRIVILEGES ON *.* TO \'cliente_ssl0\'@\'%\' IDENTIFIED BY PASSWORD \'*035E199C2E188B7300132D5C991D9E002AB5C150\' REQUIRE SSL WITH GRANT OPTION'
![Page 21: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/21.jpg)
LUIS MENGUAL (c) Bases de Datos
1. Arranque manual del Servidor mysqld –ssl --ssl-ca=CACertificado.pem --ssl-cert=SR_Certificado.pem --ssl-key=SR_ClavePrivada.pem (Los certificados deben estar en el path adecuado) 2. Arranque automático con el fichero de configuración (my.ini)
1. Crear cliente_ssl0 (sin autenticación) Arranque Servidor
![Page 22: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/22.jpg)
LUIS MENGUAL (c) Bases de Datos
C:\Archivos de programa\MySQL\MySQL Workbench 5.2 CE> mysql -u cliente_ssl0 -p --ssl-ca=CACertificado.pem Enter password: *** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 36 Server version: 5.1.37-log Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> \s mysql Ver 14.14 Distrib 5.1.40, for Win32 (ia32) Connection id: 36 SSL: Cipher in use is DHE-RSA-AES256-SHA Using delimiter: ; Server version: 5.1.37-log Source distribution Protocol version: 10 Connection: localhost via TCP/IP Client characterset: latin1 Server characterset: latin1 TCP port: 3306 Uptime: 37 min 30 sec mysql -u cliente_ssl0 -p Enter password: *** ERROR 1045 (28000): Access denied for user 'cliente_ssl0'@'localhost' (using pas sword: YES)
1. Crear cliente_ssl0 (sin autenticación) Conexión cliente (I)
![Page 23: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/23.jpg)
LUIS MENGUAL (c) Bases de Datos
show status like "ssl%“ (Comprobamos que hemos establecido una conexión SSL) ---- 'Ssl_accept_renegotiates', '0' 'Ssl_accepts', '0' 'Ssl_callback_cache_hits', '0' 'Ssl_cipher', 'DHE-RSA-AES256-SHA' 'Ssl_cipher_list', 'DHE-RSA-AES256-SHA:AES256-SHA:DHE-RSA-AES128-SHA:AES128-SHA:AES256-RMD: AES128-RMD:DES-CBC3-RMD:DHE-RSA-AES256-RMD:DHE-RSA-AES128-RMD:DHE-RSA-DES-CBC3-RMD: RC4-SHA:RC4-MD5:DES-CBC3-SHA:DES-CBC-SHA:EDH-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC-SHA' 'Ssl_client_connects', '0' 'Ssl_connect_renegotiates', '0' 'Ssl_ctx_verify_depth', '0' 'Ssl_ctx_verify_mode', '0' 'Ssl_default_timeout', '500' 'Ssl_finished_accepts', '0' 'Ssl_finished_connects', '0' 'Ssl_session_cache_hits', '0' 'Ssl_session_cache_misses', '0' 'Ssl_session_cache_mode', 'Unknown' 'Ssl_session_cache_overflows', '0' 'Ssl_session_cache_size', '0' 'Ssl_session_cache_timeouts', '0' 'Ssl_sessions_reused', '0' 'Ssl_used_session_cache_entries', '0' 'Ssl_verify_depth', '0' 'Ssl_verify_mode', '0' 'Ssl_version', 'TLSv1'
1. Crear cliente_ssl0 (sin autenticación) Conexión cliente (II)
![Page 24: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/24.jpg)
LUIS MENGUAL (c) Bases de Datos
FICHERO: “mysql.log”: 130927 16:20:49 1 Connect Access denied for user 'cliente_ssl0'@'localhost‘ (using password: YES) 130927 16:21:35 2 Connect cliente_ssl0@localhost on 2 Query select @@version_comment limit 1 130927 16:21:39 2 Quit
mysql -u cliente_ssl0 -p ........................................... 16:20 mysql -u cliente_ssl0 -p --ssl-ca=CACertificado.pem................ 16:21
1. Crear cliente_ssl0 (sin autenticación) Fichero de logs “mysql.log”
![Page 25: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/25.jpg)
LUIS MENGUAL (c) Bases de Datos
1. Crear cliente_ssl0 (sin autenticación) MySQL Workbench (I)
![Page 26: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/26.jpg)
LUIS MENGUAL (c) Bases de Datos
1. Crear cliente_ssl0 (sin autenticación) MySQL Workbench (II)
![Page 27: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/27.jpg)
LUIS MENGUAL (c) Bases de Datos
CREAR USUARIOS SSL (2)
2. Usuario cliente_ssl: Cliente SSL con Autenticación de usuario
![Page 28: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/28.jpg)
LUIS MENGUAL (c) Bases de Datos
GRANT ALL PRIVILEGES ON *.* TO 'cliente_ssl'@'%' IDENTIFIED BY 'ssl‘ WITH GRANT OPTION; (Crear el usuario cliente_ssl“ con clave ssl) GRANT ALL PRIVILEGES ON *.* TO 'cliente_ssl'@'%' IDENTIFIED BY 'ssl‘ REQUIRE SSL; (Al cliente cliente_ssl con clave ssl se el exige utilizar SSL) GRANT ALL PRIVILEGES ON *.* TO 'cliente_ssl'@'%' IDENTIFIED BY 'ssl‘ REQUIRE X509; (Al cliente cliente_ssl con clave ssl se el exige autenticación a traves de un Certificado digital X.509) SHOW GRANTS FOR cliente_ssl; - 'GRANT ALL PRIVILEGES ON *.* TO \'cliente_ssl\'@\'%\' IDENTIFIED BY PASSWORD \'*035E199C2E188B7300132D5C991D9E002AB5C150\‘ REQUIRE X509 WITH GRANT OPTION'
2. Crear cliente_ssl (con autenticación) Configuración en el servidor
![Page 29: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/29.jpg)
LUIS MENGUAL (c) Bases de Datos
genrsa -out CL_ClavePrivada.pem 1024 (Generamos un par de claves pública y privada para el usuario. Obtenemos el fichero “CLClavePrivada.pem” conteniendo la clave privada del cliente) req –new -key CL_ClavePrivada.pem -out CL_Peticion.csr (Creamos un certificado de usuario y creamos una petición a la espera que la firme la CA) x509 -req -days 365 -in CL_Peticion.csr -CA CACertificado.pem -CAkey CAClavePrivada.pem -set_serial 02 -out CL_Certificado.pem (obtenemos un certificado firmado por la CA, listo para ser utilizado en el cliente)
2. Crear cliente_ssl (con autenticación) Certificado del Cliente(I)
![Page 30: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/30.jpg)
LUIS MENGUAL (c) Bases de Datos
x509 –inform PEM –in CL_Certificado.pem –outform DER –out CL_Certificado.crt (opcionalmente podemos obtener el fichero del certificado del cliente en formato *.crt) pkcs12 -export -in CL_Certificado.pem -inkey CL_ClavePrivada.pem -out CL_Certificado.p12 (opcionalmente podemos obtener el fichero del certificado del cliente en formato *.p12, incorporando la clave privada)
2. Crear cliente_ssl (con autenticación) Certificado del Cliente(II)
![Page 31: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/31.jpg)
LUIS MENGUAL (c) Bases de Datos
1. Arranque manual del Servidor mysqld --ssl --ssl-ca=CACertificado.pem –ssl-cert=SR_Certificado.pem --ssl-key=SR_ClavePrivada.pem
2. Arranque automático con el fichero con el fichero de configuración (my.ini)
2. Crear cliente_ssl (con autenticación) Formas de Arranque Servidor
![Page 32: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/32.jpg)
LUIS MENGUAL (c) Bases de Datos
Arranque Manual Servidor Variables SSL
![Page 33: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/33.jpg)
LUIS MENGUAL (c) Bases de Datos
Arranque Automático Servidor Variables SSL
![Page 34: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/34.jpg)
LUIS MENGUAL (c) Bases de Datos
1: Acceso desde línea de Comandos mysql -u cliente_ssl -p --ssl-ca=CACertificado.pem --ssl-cert=CL_Certificado.pem --ssl-key=CL_ClavePrivada.pem 2: Acceso desde el Workbench Creamos desde el workbench una conexion “cliente_ssl” incorporando los paths de los certificados del cliente CA FILE: C:\Archivos de programa\MySQL\CONFIGURACION_MYSQL_SSL\CLIENTE_SSL\CACertificado.pem SSL CERT C:\Archivos de programa\MySQL\CONFIGURACION_MYSQL_SSL\CLIENTE_SSL\CL_Certificado.pem SSL KEY FILE: C:\Archivos de programa\MySQL\CONFIGURACION_MYSQL_SSL\CLIENTE_SSL\CL_ClavePrivada.pem
2. Crear cliente_ssl (con autenticación) Conexión Cliente (I)
![Page 35: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/35.jpg)
LUIS MENGUAL (c) Bases de Datos
C:\Archivos de programa\MySQL\MySQL Workbench 5.2 CE> mysql -u cliente_ssl –p Enter password: *** ERROR 1045 (28000): Access denied for user 'cliente_ssl'@'localhost' (using pass word: YES) C:\Archivos de programa\MySQL\MySQL Workbench 5.2 CE> mysql -u cliente_ssl -p --ssl-ca=CACertificado.pem --ssl-cert=CL_Certificado.pem--ssl-key=CL_ClavePrivada.pem Enter password: *** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 10 Server version: 5.1.37-log Source distribution mysql> \s -------------- mysql Ver 14.14 Distrib 5.1.40, for Win32 (ia32) Connection id: 10 SSL: Cipher in use is DHE-RSA-AES256-SHA Using delimiter: ; Server version: 5.1.37-log Source distribution Protocol version: 10 Connection: localhost via TCP/IP Client characterset: latin1 Server characterset: latin1 TCP port: 3306 Uptime: 8 min 46 sec
2. Crear cliente_ssl (con autenticación) Conexión Cliente Acceso línea comandos
![Page 36: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/36.jpg)
LUIS MENGUAL (c) Bases de Datos
Acceso workbench cliente_ssl (I)
2. Crear cliente_ssl (con autenticación) Conexión Cliente Acceso MySQL Workbench (I)
![Page 37: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/37.jpg)
LUIS MENGUAL (c) Bases de Datos
2. Crear cliente_ssl (con autenticación) Conexión Cliente Acceso MySQL Workbench (II)
![Page 38: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/38.jpg)
LUIS MENGUAL (c) Bases de Datos
CREAR USUARIOS SSL (3)
3. Usuario cliente_ssl1: Cliente SSL con Autenticación de usuario, verificando el propietario del certificado
![Page 39: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/39.jpg)
LUIS MENGUAL (c) Bases de Datos
GRANT ALL PRIVILEGES ON *.* TO 'cliente_ssl1'@'%' IDENTIFIED BY 'ssl‘ WITH GRANT OPTION; (Crear el usuario cliente_ssl1“ con clave ssl) GRANT ALL PRIVILEGES ON *.* TO 'cliente_ssl1'@'%' IDENTIFIED BY 'ssl' REQUIRE X509; (Al cliente cliente_ssl1 con clave ssl se el exige autenticación a través de un Certificado digital X.509, implícitamente se le exige SSL) GRANT ALL PRIVILEGES ON *.* TO 'cliente_ssl1'@'%' IDENTIFIED BY 'ssl‘ REQUIRE SUBJECT '/C=ES/ST=MA/L=BOA/O=FIM/OU=UPM/ CN=CERTIFICADO_CLIENTE_FIRMADO_CA/[email protected]'; (Al cliente cliente_ssl con clave ssl se el exige además tener un certificado concreto) SHOW GRANTS FOR cliente_ssl1; - 'GRANT ALL PRIVILEGES ON *.* TO ''cliente_ssl1''@''%'' IDENTIFIED BY PASSWORD ''*035E199C2E188B7300132D5C991D9E002AB5C150'‘ REQUIRE SUBJECT ''/C=ES/ST=MA/ L=BOA/O=FIM/OU=UPM/CN=CERTIFICADO_CLIENTE_FIRMADO_CA/emailAddress= [email protected]'' WITH GRANT OPTION'
3. Crear cliente_ssl1 (con autenticación) REQUIRE SUBJECT
Configuración en el servidor
![Page 40: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/40.jpg)
LUIS MENGUAL (c) Bases de Datos
1. Arranque manual del Servidor mysqld --ssl --ssl-ca=CACertificado.pem –ssl-cert=SR_Certificado.pem --ssl-key=SR_ClavePrivada.pem
2. Arranque automático con el fichero con el fichero de configuración (my.ini)
3. Crear cliente_ssl1 (con autenticación) REQUIRE SUBJECT
Formas de Arranque Servidor
![Page 41: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/41.jpg)
LUIS MENGUAL (c) Bases de Datos
1: Acceso desde línea de Comandos mysql -u cliente_ssl1 -p --ssl-ca=CACertificado.pem --ssl-cert=CL_Certificado.pem --ssl-key=CL_ClavePrivada.pem (los certificados deben estar accesibles) 2: Acceso desde el Workbench Creamos desde el workbench una conexion “cliente_ssl1” incorporando los paths de los certificados del cliente CA FILE: C:\Archivos de programa\MySQL\CONFIGURACION_MYSQL_SSL\CLIENTE_SSL\CACertificado.pem SSL CERT C:\Archivos de programa\MySQL\CONFIGURACION_MYSQL_SSL\CLIENTE_SSL\CL_Certificado.pem SSL KEY FILE: C:\Archivos de programa\MySQL\CONFIGURACION_MYSQL_SSL\CLIENTE_SSL\CL_ClavePrivada.pem
3. Crear cliente_ssl1 (con autenticación) REQUIRE SUBJECT
Conexión Cliente (I)
![Page 42: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/42.jpg)
LUIS MENGUAL (c) Bases de Datos
3. Crear cliente_ssl1 (con autenticación) REQUIRE SUBJECT
Conexión Cliente (II)
![Page 43: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/43.jpg)
LUIS MENGUAL (c) Bases de Datos
3. Crear cliente_ssl1 (con autenticación) REQUIRE SUBJECT
Conexión Cliente (III)
![Page 44: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/44.jpg)
LUIS MENGUAL (c) Bases de Datos
3. Crear cliente_ssl1 (con autenticación) REQUIRE SUBJECT
Conexión Cliente (IV)
![Page 45: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/45.jpg)
LUIS MENGUAL (c) Bases de Datos
Si no hay coincidencia del “subject” especificado y el “subject” recibido en el fichero mysql.err obtendríamos el siguiente mensaje de error: ****************************************************************************************** Version: '5.1.37-log' socket: '' port: 3306 Source distribution 131001 13:01:54 [Note] X509 subject mismatch: should be '/C=ES/ST=MA/L=BOA/O=FIM/OU=UPM/CN=CERTIFICADO_CLIENTE_FIRMADO_CA/ [email protected]' but is '/C=ES/ST=MA/L=BOA/O=FIM/OU=UPM/ CN=CERTIFICADO_SR_FIRMADO_CA/[email protected]‘ 131001 13:02:01 [Note] C:\XAMPP_28MAR11_LM\xampp\mysql\bin\mysqld.exe: Normal shutdown ********************************************************************************************
3. Crear cliente_ssl1 (con autenticación) REQUIRE SUBJECT
Fichero de logs “mysql.err”
![Page 46: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/46.jpg)
LUIS MENGUAL (c) Bases de Datos
CREAR USUARIOS SSL (4)
4. Usuario cliente_ssl2: Cliente SSL con Autenticación de usuario, verificando el emisor del certificado
![Page 47: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/47.jpg)
LUIS MENGUAL (c) Bases de Datos
GRANT ALL PRIVILEGES ON *.* TO 'cliente_ssl2'@'%' IDENTIFIED BY 'ssl‘ WITH GRANT OPTION; (Crear el usuario cliente_ssl2“ con clave ssl) GRANT ALL PRIVILEGES ON *.* TO 'cliente_ssl2'@'%' IDENTIFIED BY 'ssl' REQUIRE X509; (Al cliente cliente_ssl1 con clave ssl se el exige autenticación a través de un Certificado digital X.509, implícitamente se le exige SSL) GRANT ALL PRIVILEGES ON *.* TO 'cliente_ssl2'@'%' IDENTIFIED BY 'ssl‘ REQUIRE ISSUER '/C=ES/ST=MA/L=BOA/O=FIM/OU=UPM/CN=CA_GBD/ [email protected]'; (Al cliente cliente_ssl con clave ssl se el exige además tener un certificado emitido por una Autoridad de Certificación concreta) SHOW GRANTS FOR cliente_ssl2; - 'GRANT ALL PRIVILEGES ON *.* TO ''cliente_ssl2''@''%'' IDENTIFIED BY PASSWORD ''*035E199C2E188B7300132D5C991D9E002AB5C150'' REQUIRE ISSUER ''/C=ES/ST=MA/L=BOA/O=FIM/OU=UPM/CN=CA_GBD/[email protected]'‘ WITH GRANT OPTION'
3. Crear cliente_ssl2 (con autenticación) REQUIRE ISSUER
Configuración en el servidor
![Page 48: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/48.jpg)
LUIS MENGUAL (c) Bases de Datos
1. Arranque manual del Servidor mysqld --ssl --ssl-ca=CACertificado.pem –ssl-cert=SR_Certificado.pem --ssl-key=SR_ClavePrivada.pem
2. Arranque automático con el fichero con el fichero de configuración (my.ini)
4. Crear cliente_ssl2 (con autenticación) REQUIRE ISSUER
Formas de Arranque Servidor
![Page 49: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/49.jpg)
LUIS MENGUAL (c) Bases de Datos
1: Acceso desde línea de Comandos mysql -u cliente_ssl2 -p --ssl-ca=CACertificado.pem --ssl-cert=CL_Certificado.pem --ssl-key=CL_ClavePrivada.pem (los certificados deben estar accesibles) 2: Acceso desde el Workbench Creamos desde el workbench una conexion “cliente_ssl2” incorporando los paths de los certificados del cliente CA FILE: C:\Archivos de programa\MySQL\CONFIGURACION_MYSQL_SSL\CLIENTE_SSL\CACertificado.pem SSL CERT C:\Archivos de programa\MySQL\CONFIGURACION_MYSQL_SSL\CLIENTE_SSL\CL_Certificado.pem SSL KEY FILE: C:\Archivos de programa\MySQL\CONFIGURACION_MYSQL_SSL\CLIENTE_SSL\CL_ClavePrivada.pem
4. Crear cliente_ssl2 (con autenticación) REQUIRE ISSUER
Conexión Cliente (I)
![Page 50: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/50.jpg)
LUIS MENGUAL (c) Bases de Datos
4. Crear cliente_ssl2 (con autenticación) REQUIRE ISSUER
Conexión Cliente (II)
![Page 51: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/51.jpg)
LUIS MENGUAL (c) Bases de Datos
4. Crear cliente_ssl2 (con autenticación) REQUIRE ISSUER
Conexión Cliente (III)
![Page 52: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/52.jpg)
LUIS MENGUAL (c) Bases de Datos
4. Crear cliente_ssl2 (con autenticación) REQUIRE ISSUER
Conexión Cliente (IV)
![Page 53: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/53.jpg)
LUIS MENGUAL (c) Bases de Datos
Si no hay coincidencia del “issuer” especificado y el “issuer” recibido en el fichero mysql.err obtendríamos el siguiente mensaje de error: ****************************************************************************************** Version: '5.1.37-log' socket: '' port: 3306 Source distribution 131001 17:38:58 [Note] X509 issuer mismatch: should be '/C=ES/ST=MA/L=BOA/O=FIM/OU=UPM/ CN=CA_GBD/[email protected]' but is '/C=es/ST=ma/O=FIM/OU=UPM/ CN=LMENGUAL_CA/[email protected]' ********************************************************************************************
4. Crear cliente_ssl2 (con autenticación) REQUIRE ISSUER
Fichero de logs “mysql.err”
![Page 54: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/54.jpg)
LUIS MENGUAL (c) Bases de Datos
CAPTURA TRÁFICO
![Page 55: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/55.jpg)
LUIS MENGUAL (c) Bases de Datos
CAPTURA TRÁFICO Dirección IP Máquina Virtual
![Page 56: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/56.jpg)
LUIS MENGUAL (c) Bases de Datos
CAPTURA TRÁFICO Acceso desde la máquina real (I)
![Page 57: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/57.jpg)
LUIS MENGUAL (c) Bases de Datos
CAPTURA TRÁFICO Arranque Monitor tráfico
![Page 58: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/58.jpg)
LUIS MENGUAL (c) Bases de Datos
CAPTURA TRÁFICO Acceso desde la máquina real (I)
![Page 59: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/59.jpg)
LUIS MENGUAL (c) Bases de Datos
CAPTURA TRÁFICO Captura Consulta SQL
![Page 60: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/60.jpg)
LUIS MENGUAL (c) Bases de Datos
CAPTURA TRÁFICO Cliente_ssl0 desde Máquina Real (I)
![Page 61: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/61.jpg)
LUIS MENGUAL (c) Bases de Datos
CAPTURA TRÁFICO Cliente_ssl0 desde Máquina Real (II)
![Page 62: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/62.jpg)
LUIS MENGUAL (c) Bases de Datos
CAPTURA TRÁFICO Cliente_ssl0 desde Máquina Real (III)
![Page 63: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/63.jpg)
LUIS MENGUAL (c) Bases de Datos
CAPTURA TRÁFICO Cliente_ssl0 desde Máquina Real (IV)
![Page 64: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/64.jpg)
LUIS MENGUAL (c) Bases de Datos
CAPTURA TRÁFICO Cliente_ssl desde Máquina Real (V)
![Page 65: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/65.jpg)
LUIS MENGUAL (c) Bases de Datos
Verificación Certificado Servidor (I)
![Page 66: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/66.jpg)
LUIS MENGUAL (c) Bases de Datos
C:\Archivos de programa\MySQL\MySQL Workbench 5.2 CE> mysql -u cliente_ssl0 -p –h "127.0.0.1" --ssl-ca=CACertificado.pem --ssl-verify-server-cert Enter password: *** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 5 Server version: 5.1.37-log Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> \s -------------- mysql Ver 14.14 Distrib 5.1.40, for Win32 (ia32) Connection id: 5 SSL: Cipher in use is DHE-RSA-AES256-SHA Using delimiter: ; Server version: 5.1.37-log Source distribution Protocol version: 10 Connection: 127.0.0.1 via TCP/IP Client characterset: latin1 Server characterset: latin1 TCP port: 3306 Uptime: 7 min 50 sec Threads: 3 Questions: 29 Slow queries: 0 Opens: 22 Flush tables: 1 Open tab les: 13 Queries per second avg: 0.61
Verificación Certificado Servidor (I) Sin Autenticación de Cliente
![Page 67: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/67.jpg)
LUIS MENGUAL (c) Bases de Datos
C:\Archivos de programa\MySQL\MySQL Workbench 5.2 CE> mysql -u cliente_ssl0 -p –h "127.0.0.1" --ssl-ca=CACertificado.pem --ssl-verify-server-cert Enter password: *** ERROR 2026 (HY000): SSL connection error
Verificación Certificado Servidor (II) Sin Autenticación de Cliente
![Page 68: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/68.jpg)
LUIS MENGUAL (c) Bases de Datos
C:\Archivos de programa\MySQL\MySQL Workbench 5.2 CE> mysql -u cliente_ssl -p –h "127.0.0.1" --ssl-ca=CACertificado.pem --ssl-cert=CL_Certificado.pem --ssl-key=CL_ClavePrivada.pem --ssl-verify-server-cert Enter password: *** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version: 5.1.37-log Source distribution mysql> \s -------------- mysql Ver 14.14 Distrib 5.1.40, for Win32 (ia32) Connection id: 1 SSL: Cipher in use is DHE-RSA-AES256-SHA Using delimiter: ; Server version: 5.1.37-log Source distribution Protocol version: 10 Connection: 127.0.0.1 via TCP/IP Client characterset: latin1 Server characterset: latin1 TCP port: 3306 Uptime: 37 sec Thre ads: 1 Questions: 4 Slow queries: 0 Opens: 19 Flush tables: 1 Open tabl es: 12 Queries per second avg: 0.108 --------------
Verificación Certificado Servidor (I) Con Autenticación de Cliente
![Page 69: Estableciendo Sesiones SSL en MySQLlmengual/bases_datos/BD_ACCESO_SSL.pdf · MySQL Workbench (II) Bases de Datos LUIS MENGUAL (c) CREAR USUARIOS SSL (2) 2. Usuario cliente_ssl: Cliente](https://reader031.vdocuments.pub/reader031/viewer/2022021823/5b34ae8f7f8b9aec518c75ac/html5/thumbnails/69.jpg)
LUIS MENGUAL (c) Bases de Datos
C:\Archivos de programa\MySQL\MySQL Workbench 5.2 CE> mysql -u cliente_ssl -p –h "127.0.0.1" --ssl-ca=CACertificado.pem --ssl-cert=CL_Certificado.pem --ssl-key=CL_ClavePrivada.pem --ssl-verify-server-cert Enter password: *** ERROR 2026 (HY000): SSL connection error
Verificación Certificado Servidor (II) Con Autenticación de Cliente