環境: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,返回的數據也已經加密了。