芜湖信息网
娱乐
当前位置:首页 > 娱乐

创建ServerSSL证书和私钥

发布时间:2019-11-25 07:32:20 编辑:笔名

用户想要与MySQL服务器建立一条安全连接时,常常依赖VPN隧道或SSH待荨麻疹警惕性提高隧道。不过,获得MySQL连接的另一个办法是,启用MySQL服务器上的SSL封装器(SSL wrapper)。这每一种方法各有其优缺点。比如说,在出现多条短时间MySQL连接的高度动态环境下,VPN或SSH隧道也许是比SSL更好的选择,因为后者建立每条连接时需要成本高昂的SSL握手计算。另一方面,如果是长时间运行的MySQL连接比较少的那些应用,基于SSL的加密可能很合理。由于MySQL服务器已经内置了SSL支持功能,你不需要实施VPN或SSH隧道之类单独的安全层,这种隧道有其自己的维护开销。

在MySQL服务器中实施SSL可以加密在服务器与客户机之间来回传输的所有数据,因而防止广域或数据中心里面可能出现的窃听或数据嗅探行为。此外,SSL还通过SSL证书提供了身份验证机制,因而可以保护用户,远离可能出现的络钓鱼攻击。

我们在本文中将介绍如何启用MySQL服务器上的SSL。请注意:同样过程适用于Maria引发糖尿病本原因DB服务器。

创建Server SSL证书和私钥

我们必须为MySQL服务器创建SSL证书和私钥,通过SSL连接到服务器时要用到它们。

首先,创建一个临时的工作目录,我们将把私钥和证书文件放在该目录下。

$ sudo mkdir ~/cert $ cd ~/cert

确保OpenSSL已安装在运行MySQL服务器的系统上。通常,所有Linux发行版在默认情况下都安装了OpenSSL。想检查一下OpenSSL有没有安装,不妨使用下面这个命令。

$ openssl version OpenSSL 1.0.1f 6 Jan 2014

现在,继续创建CA私钥和证书。下面这些命令将创建m和m。

$ openssl genrsa 2048 m $ openssl req -sha1 -new -x509 -nodes -days 3650 -key m m

第二个命令会询吃新鲜蔬菜拒绝口腔溃疡袭问你几个问题。你在这些字段里填入什么并不重要。只管填好那些字段。

下一步是为服务器创建私钥。

$ openssl req -sha1 -newkey rsa:2048 -days 730 -nodes -keyout m m

这个命令会再次询问几个问题,你可以填写上一步中提供的相同答案。

下一步,使用下面这个命令,将服务器的私钥导出成RSA类型的密钥。

$ openssl rsa -in m -out m

最后,使用CA证书,创建服务器证书。

$ openssl x509 -sha1 -req -in m -days 730 -CA m -CAkey m -set_serial 01 m

配置MySQL服务器上的SSL

完成上述过程后,我们应该有了CA证书、服务器的私钥及其证书。下一步就是配置MySQL服务器,以便使用私钥和证书。

在配置MySQL服务器之前,检查一下SSL选项已被启用还是被禁用。为此,登录进入到MySQL服务器,输入下面这个查询。

mysql SHOW GLOBAL VARIABLES LIKE 'have_%ssl';

该查询的结果会如同下图。

请注意:have_openssl和have_ssl变量的默认值是被禁用,如下所示。想启用MySQL服务器中的SSL,继续执行下列步骤。

1. 将m、m和m拷贝或移动到/etc目录下。

$ sudo mkdir /etc/mysql-ssl $ sudo cp m m m /etc/mysql-ssl

2. 使用文本工具,证书。

[mysqld]

ssl-ca=/etc/mysql-ssl/m

ssl-cert=/etc/mysql-ssl/m

ssl-key=/etc/mysql-ssl/m

3. 在f中,还要找到bind-address = 127.0.0.1,并将它改成:

bind-address = *

那样一来,你就可以从另一个主机连接到MySQL服务器了。

广西看癫痫费用是多少

4. 重启MySQL服务。

$ sudo service mysql restart

$ sudo systemctl restart mysql

$ sudo /etc/init.d/mysql restart

注:相关站建设技巧阅读请移步到建站教程频道。

狮子座
野史秘闻
新闻