mysql 加密ssl连接
ssl就像驾照和营业执照这样的电子证书的副本,在网站中对机密文件有保密作用。ssl证书的主要作用是为用户和服务器提供认证;对传送的数据进行加密和隐藏;确保数据在传送中不被改变,即数据的完整性。ssl原理是密钥协商过程——tls握手。ssl原理是更好的保护数据传输安全。现在市面上的商业ssl证书动辄几千元,少则也需要好几百。现在很多人都在申请ssl证书。下面我们重点介绍下mysql ssl加密连接。
mysql ssl的背景
当使用非加密方式ssl连接mysql数据库时,在网络中传输的所有信息都是明文的,
可以被网络中所有人截取,敏感信息可能被泄露。在传送敏感信息(如密码)时,可以采用ssl连接的方式。
所以,现在很多网站其实默认已经开启了ssl功能,比如facebook、twtter、youtube、淘宝等。
ssl连接作用
1、数据传输的机密性:利用对称密钥算法对传输的数据进行加密。
2、身份验证机制:现在证书基本利用电子签名,对服务器和客户端进行身份验证,值得说明的是客户端的身份验证是可以选的。
安装配置ssl
(5.7.6+版本配置方式,版本小于5.7.6须用openssl方式生成认证文件和秘钥)
修改权限:
chown mysql.mysql *.pem
查看datadir下生成的认证文件和秘钥文件:
重启mysql
service mysqld stop
service mysqld start
查看ssl状态和文件位置
通过ssl连接方式
创建ssl测试用户,指定只能通过ssl连接(不指定ssl的用户即可通过用户名密码登录也可通过ssl登录)
create user ssl_test@'%' identified by '123456';
grant all on *.* to ssl_test@'%' identified by '123456'require ssl;
flush privileges;
默认通过ssl连接,也可以不加--ssl-mode
5.7客户端才有--ssl-mode参数,老版本须用ssl-ca,ssl-cert,ssl-key指定文件.
通过ssl+秘钥连接方式(安全性更高)
创建x509测试用户,指定只能通过x509加密方式连接
create user x509_test@'%' identified by '123456';
grant all on *.* to x509_test@'%' identitifed by '123456'require x509;
flush privileges;
(远程连接须拷贝认证文件及秘钥文件至远程服务器)
网站的外部链接原则有哪些?自媒体时代REO或将取代SEO小程序推广技巧,小程序推广的十种策略!云计算成为数字化转型的动力创新介绍:网络免费推广的方法提升网站权重的10个方法为什么要进行网站建设微信运营代托管的价格和什么因素有关?