环境:win7+springboot+mybatis+mariadb
需求说明:
未做安全加固前用wireshark抓包:
可以很明显看到用户名、数据库和 SQL,这种情况是有安全风险的。
1.下载openssl
官网上面是源码,需要自己编译,可以到http://slproweb.com/products/Win32OpenSSL.html 下载,32和64位均有。
2.证书生成
参考:https://www.cnblogs.com/huiy/p/9982405.html
我这边的my.ini配置,红色部分是我添加的:
[mysqld] datadir=D:/app/MariaDB 10.3/data port=3306 innodb_buffer_pool_size=511M character-set-server=utf8 event_scheduler=ON max_connections=1000 ssl ssl-ca=D:/cert/ca-cert.pem ssl-cert=D:/cert/server-cert.pem ssl-key=D:/cert/server-key.pem [client] port=3306 plugin-dir=D:/app/MariaDB 10.3/lib/plugin
3.改造自己的JDBCURL
添加:useSSL=true&trustServerCertificate=true
4.启动工程测试
已经看不到用户名和数据库了。
再也找不到明文SQL,返回的数据也已经加密了。