ClustrixDB使用sha256_password插件支持SSL和身份验证。

一些安全规则要求对存储在数据库中的用户密码进行更强的保护。与默认的mysql_native_password插件相比,sha256_password插件提供了在ClustrixDB中存储用户密码凭证的更安全的方法。当用户帐户配置为使用sha256_password插件时,该用户必须始终使用受SSL保护的连接进行连接。

下面的说明提供了配置ClustrixDB用于SSL加密连接的步骤,还配置ClustrixDB用户帐户使用SHA256密码安全性和SSL加密连接。要使用此功能,请使用下面的说明来生成证书和密钥,将它们复制到所有节点,配置数据库和用户以在适用时使用SSL(需要mysql客户机5.6.38或更高)。

一、用于SSL加密连接的ClustrixDB配置

配置ClustrixDB使用加密连接:

创建密钥和证书(使用您选择的方法),并将它们作为根用户复制到每个节点:

shell> scp server-cert.pem root@hostname:/data/clustrix
shell> scp server-key.pem root@hostname:/data/clustrix

在每个节点上,将这些文件的所有权转移给clxd用户:

shell> sudo chown clxd server-*.pem   

证书和密钥必须位于每个节点上的相同位置。

配置ClustrixDB以使用这些证书、密钥和SSL:

sql> SET GLOBAL ssl_cert = '/data/clustrix/server-cert.pem';
sql> SET GLOBAL ssl_key = '/data/clustrix/server-key.pem';
sql> ALTER CLUSTER RELOAD SSL;
sql> SET GLOBAL ssl_enabled = TRUE;

ALTER CLUSTER RELOAD SSL验证证书和密钥的位置。如果这个命令失败,clustrix.log可能包含更多的细节。

二、使用加密连接从客户端连接

MySQL客户端版本必须是5.6.38、5.7或更高版本。

如果你使用的是mysql 5.6.38客户端,你必须指定密码类型:

shell> mysql --ssl-cipher=AES256-SHA -u username -h hostname -p

如果你使用的是mysql 5.7客户端,不需要特殊的选项:

shell> mysql username -h hostname  -p    

\s的输出会显示是否启用了TLS:

sql> \s

并在输出中显示使用的加密类型:

Cipher in use is AES256-SHA

这个查询将显示所有会话使用的加密类型:

sql> select * from system.sessions;

三、设置用户

默认情况下,密码使用mysql_native_password。要更改现有用户的密码以使用sha256加密:

sql> ALTER USER 'seymour@'%' IDENTIFIED WITH sha256_password BY 'foo';

要设置回使用mysql本机密码:

sql> ALTER USER 'seymour'@’%’ IDENTIFIED WITH mysql_native_password by 'foo';

使用sha256_password身份验证创建新用户:

sql> CREATE USER 'seymour2'@'%' IDENTIFIED WITH sha256_password BY 'foo';

使用SHA256加密密码的用户必须使用加密连接连接到ClustrixDB。如果安全连接不可用,用户将遇到错误并无法连接。

关于使用SHA2的注意事项

  • 证书和密钥必须存在于所有节点上,并由clxd用户拥有
  • ClustrixDB不支持配置mysql_native_password之外的默认身份验证插件
  • ClustrixDB不支持RSA密码加密
  • 使用加密连接会带来性能开销

36. ClustrixDB 使用ClustrixDB加密连接的更多相关文章

  1. MySQL的SSL加密连接与性能开销

    本文转载自:http://www.innomysql.net/article/23959.html(只作转载, 不代表本站和博主同意文中观点或证实文中信息) Contents [hide] 1 前言 ...

  2. mysql 建立加密连接

    加密连接可提高数据的安全性,但会降低性能.要进行加密连接,必须满足以下要求: user权限表里要有相关的SSL数据列.如果安装的MySQL服务器是4.0.0版的,user权限表已包含相关的SSL数据列 ...

  3. MsSQL使用加密连接SSL/TLS

    说明 应用程序通过未加密的通道与数据库服务器通信, 这可能会造成重大的安全风险.在这种情况下, 攻击者可以修改用户输入的数据, 甚至对数据库服务器执行任意 SQL 命令. 例如,当您使用以下连接字符串 ...

  4. MSSQL - 最佳实践 - 使用SSL加密连接

    MSSQL - 最佳实践 - 使用SSL加密连接 author: 风移 摘要 在SQL Server安全系列专题月报分享中,往期我们已经陆续分享了:如何使用对称密钥实现SQL Server列加密技术. ...

  5. SQL Server使用加密连接SSL/TLS (转载)

    说明 应用程序通过未加密的通道与数据库服务器通信, 这可能会造成重大的安全风险.在这种情况下, 攻击者可以修改用户输入的数据, 甚至对数据库服务器执行任意 SQL 命令.例如,当您使用以下连接字符串时 ...

  6. Tomcat配置https加密连接

    配置https安全连接(ssl加密连接) https连接需要用到数字证书与数字签名(MD5算法),网站https连接首先需要申请数字证书,配置加密连接器,浏览器安装证书. 证书运用到RSA技术,RSA ...

  7. Mysql 5.7.18 加密连接mysql_ssl_rsa_setup

    MySQL 5.7.18 下载地址: https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64. ...

  8. SSM实现mysql数据库账号密码加密连接

    引言 咱们公司从事的是信息安全涉密应用的一些项目研发一共有分为三步,相比较于一般公司和一般的项目,对于信息安全要求更加严格,领导要求数据量和用户的用户名及密码信息都必需是要密文配置和存储的,这就涉及到 ...

  9. ip端口协议,SSHj加密连接

    SSH协议----一旦linux服务器开机,SSH协议就不断的侦听22端口,一旦有连接到达,就校验连接用户名和密码: 可以理解为连接ip端口为找到一栋大楼,发送用户名和密码为向大楼保安出示证件.SSH ...

随机推荐

  1. 关于HTTP返回码

    301与302区别: 301 重定向 三种主流搜索引擎(Google, Bing, Yahoo)对待301都是一样的.它们忽略原始链接然后把重定向后的新链接加入索引.例如:如果用301把 http:/ ...

  2. Hadoop环境搭建过程中遇到的问题以及解决方法

    1.启动hadoop之前,ssh免密登录slave主机正常,使用命令start-all.sh启动hadoop时,需要输入slave主机的密码,说明ssh文件权限有问题,需要执行以下操作: 1)进入.s ...

  3. gitlab安装指南(gitlab-ce-9.4.3-ce.0.el7.x86_64 centos7)

    1,安装gitlab wget https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/7/gitlab-ce-9.4.3-ce.0.el7. ...

  4. Redis获得bigkey扫描脚本

    众所周知,redis里面的大key存在是非常危险的一件事情.因为最近的工作转移到中间件相关的工作,因此关注了一下bigkey的扫描方法.首先介绍一下阿里云提供的扫描脚本:具体可见:https://yq ...

  5. 分享一些JVM常见的面试题(转)

    出处:  分享一些JVM常见的面试题 前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 ...

  6. 搭建Leanote网络云笔记

    下载启动 MongoDB Leanote 依赖 MongoDB 作为数据存储,下面开始安装 MongoDB: 下载 MongoDB 进入 /home 目录,并下载 MongoDB: cd /home ...

  7. Apache开启.htaccess 支持

    (1) <Directory "${SRVROOT}/htdocs"> # # Possible values for the Options directive ar ...

  8. selenium在爬虫中的应用之动态数据爬取

    一.selenium概念 selenium 是一个基于浏览器自动化的模块 selenium爬虫之间的关联: 1.便捷的获取动态加载的数据 2.实现模拟登录 基本使用 pip install selen ...

  9. java web开发跨域问题

    分布式环境,前后端分离背景下跨域问题 1.1 设置页面document.domain去把2个页面之间的跨域交互统一 一级域名相同的情况下 调用者和页面提供者进行一个协调 页面提供者要在document ...

  10. Redis单机安装部署

    1.下载: redis-4.0.8.tar.gz,存放至/data/tools下,解压: # wget http://download.redis.io/releases/redis-4.0.8.ta ...