1、创建证书
安装openssl依赖包
dnf install -y openssl
查看openssl版本
openssl version
生成SSL连接所需要的RSA密钥对
datadir 指定数据库文件鹿筋
user和uid 指定运行mysql_ssl_rsa_setup命令的用户
mysql_ssl_rsa_setup --datadir=/var/lib/mysql --user=mysql --uid=mysql
默认执行即可
mysqld_ssl_rsa_setup
-vvv 详细,debug模式
会自动在datadir
目录下创建下面的证书文件
- ca-key.pem:CA证书私钥文件,用于生成SSL连接所需的服务器和客户端证书。
- ca.pem:CA证书公钥文件,用于验证SSL连接中服务器和客户端证书的合法性。
- client-cert.pem:客户端证书,在SSL连接中用于验证客户端的身份。
- client-key.pem:客户端证书的私钥,用于加密和解密SSL连接中客户端发送的数据。
- private_key.pem:私钥文件,用于加密和解密SSL连接中的数据。
- public_key.pem:公钥文件,用于验证SSL连接中的数据。
- server_cert.pem:服务器证书,用于验证MySQL数据库服务器的身份。
- server_key.pem:服务器证书的私钥,用于加密和解密SSL连接中服务器发送的数据。
2、配置SSL证书
https://blog.csdn.net/Sn_Keys/article/details/126425869
[mysqld]
指定CA证书公钥文件的路径
ssl-ca=/path/to/ca.pem
指定mysql服务器证书的路径
ssl-cert=/path/to/server_cert.pem
指定mysql服务器证书的私钥路径
ssl-key=/path/to/server_key.pem
[client]
指定CA证书公钥文件的路径
ssl-ca=/path/to/ca.pem
指定mysql客户端证书的路径
ssl-cert=/path/to/client_cert.pem
指定mysql客户端证书的私钥路径
ssl-key=/path/to/client_key.pem
重启mysql服务
重启mysql服务
systemctl restart mysqld
检查状态
– 检查数据库是否启用SSL
show variables LIKE ‘have_SSl’;
– 查看全局变量中包含"SSL"字符的所有变量名和值
show global variables LIKE ‘%SSL%’;
– 查看tls安全传输版本
show global variables LIKE ‘tls_version’;
从 MySQL5.7.35
开始,不推荐使用 TLSv1
和 TLSv1.1
连接协议
3、配置SSL用户
创建用户普通认证方式
– 创建用户
CREATE USER 用户名@‘%’ IDENTIFIED BY ‘表名’;
– 给用户授权
GRANT ALL ON *.* TO 用户名@‘%’;
– 应用权限配置
FLUSH PRIVILEGES;
– 查看用户权限
SELECT user,host,ssl_type,ssl_cipher FROM mysql.user;
创建用户强制证书认证
REQUIRE SSL
强制要求客户端使用 SSL/TLS加密协议
与服务器进行通信
REQUIRE X509
强制要求客户端不仅要使用 SSL/TLS连接
,而且还需要提供一个有效的 x509证书
。在使用 REQUIRE X509
时,MySQL 服务器会验证客户端提供的证书是否是受信任
的,并且该证书是否匹配已经注册的用户帐户
中的证书
。
– require ssl 强制用户使用证书认证
CREATE USER 用户名@‘%’ IDENTIFIED BY ‘表名’ require ssl;
– require x509 强制用户使用证书认证
CREATE USER 用户名@‘%’ IDENTIFIED BY ‘表名’ require x509;
– 给用户授权
GRANT ALL ON *.* TO 用户名@‘%’;
– 应用权限配置
FLUSH PRIVILEGES;
– 查看用户权限
SELECT user,host,ssl_type,ssl_cipher FROM mysql.user;
设置用户强制证书登录
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注网络安全获取)
本人从事网路安全工作12年,曾在2个大厂工作过,安全服务、售后服务、售前、攻防比赛、安全讲师、销售经理等职位都做过,对这个行业了解比较全面。
最近遍览了各种网络安全类的文章,内容参差不齐,其中不伐有大佬倾力教学,也有各种不良机构浑水摸鱼,在收到几条私信,发现大家对一套完整的系统的网络安全从学习路线到学习资料,甚至是工具有着不小的需求。
最后,我将这部分内容融会贯通成了一套282G的网络安全资料包,所有类目条理清晰,知识点层层递进,需要的小伙伴可以点击下方小卡片领取哦!下面就开始进入正题,如何从一个萌新一步一步进入网络安全行业。
学习路线图
其中最为瞩目也是最为基础的就是网络安全学习路线图,这里我给大家分享一份打磨了3个月,已经更新到4.0版本的网络安全学习路线图。
相比起繁琐的文字,还是生动的视频教程更加适合零基础的同学们学习,这里也是整理了一份与上述学习路线一一对应的网络安全视频教程。
网络安全工具箱
当然,当你入门之后,仅仅是视频教程已经不能满足你的需求了,你肯定需要学习各种工具的使用以及大量的实战项目,这里也分享一份我自己整理的网络安全入门工具以及使用教程和实战。
项目实战
最后就是项目实战,这里带来的是SRC资料&HW资料,毕竟实战是检验真理的唯一标准嘛~
面试题
归根结底,我们的最终目的都是为了就业,所以这份结合了多位朋友的亲身经验打磨的面试题合集你绝对不能错过!
一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!
AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算
*](https://bbs.csdn.net/forums/4304bb5a486d4c3ab8389e65ecb71ac0)
AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算