数据库开启ssl
数据库:阿里云rds 系统:centos
需要修改的:nacos连接+项目连接+本地navicat连接
重点:为了兼容本地和服务器,ssl证书路径由原来的绝对路径换成环境变量参数,所以有步骤4
文章目录
- 步骤1 阿里云
- 步骤2 navicat
- 步骤3 文件复制到服务器,打开读写权限
- 步骤4 配置环境变量
- 4.1 Windows 本地电脑上配置环境变量
- 4.2 在 CentOS 服务器上配置环境变量
- 修改nacos和项目的数据库连接
步骤1 阿里云
rds控制台,安全管理里打开ssl开关,打开强制使用密码,下载CA证书,解压拿到.pem后缀的文件
1.这里如果打开ssl失败,需要手动升级数据库小版本更新,会闪断数据库1s左右。
2.先不打开强制使用密码,可以让项目和nacos正常运行
步骤2 navicat
编辑数据库连接,打开ssl选项卡,把pem文件放进【CA证书】那栏
步骤3 文件复制到服务器,打开读写权限
从堡垒机登录跳板机
——本地文件通过windterm等终端拖拽到跳板机
——跳板机scp命令复制到具体服务器
——给root用户文件夹和文件的读写权限
[root@onvip-nginx ~]# scp /root/ApsaraDB-CA-Chain.pem root@uat.internal:/opt/mysql-ssl/
root@uat.internal's password: (这里输密码)
ApsaraDB-CA-Chain.pem 100% 140KB 11.8MB/s 00:00
步骤4 配置环境变量
4.1 Windows 本地电脑上配置环境变量
【我的电脑】,选择【属性】。点击【高级系统设置】
在【系统属性】窗口中,点【环境变量】按钮 点【新建系统变量】
变量名:MYSQL_SSL_CERT_PATH
变量值:具体路径
验证 echo %MYSQL_SSL_CERT_PATH%
4.2 在 CentOS 服务器上配置环境变量
[root@xzdevlocaldomain xz-dev]# sudo vi /etc/profile进入vi 最后一行增加:export MYSQL_SSL_CERT_PATH=/opt/mysql-ssl/ApsaraDB-CA-Chain.jks[root@xzdevlocaldomain conf]# source /etc/profile
[root@xzdevlocaldomain conf]# echo $MYSQL_SSL_CERT_PATH
/opt/mysql-ssl/ApsaraDB-CA-Chain.jks
修改nacos和项目的数据库连接
都改application.properties文件
找nacos配置文件位置/root/nacos/conf,找到文件里面的Connect URL of DB
修改链接
[root@uat-new logs]# ps -ef | grep nacos
root 5712 1 1 Aug22 ? 08:34:53 /usr/lib/jvm/jdk-1.8-oracle-x64/bin/java -Xms512m -Xmx512m -Xmn256m -Dnacos.standalone=true -Dnacos.member.list= -Djava.ext.dirs=/usr/lib/jvm/jdk-1.8-oracle-x64/jre/lib/ext:/usr/lib/jvm/jdk-1.8-oracle-x64/lib/ext -Xloggc:/opt/nacos/logs/nacos_gc.log -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M -Dloader.path=/opt/nacos/plugins/health,/opt/nacos/plugins/cmdb -Dnacos.home=/opt/nacos -jar /opt/nacos/target/nacos-server.jar --spring.config.additional-location=file:/opt/nacos/conf/ --logging.config=/opt/nacos/conf/nacos-logback.xml --server.max-http-header-size=524288 nacos.nacos
root 1834006 1833954 0 15:32 pts/1 00:00:00 grep --color=auto nacos
[root@uat-new logs]# cd /opt/nacos/conf
[root@xzdevlocaldomain conf]# vim application.properties
[root@xzdevlocaldomain nacos]# kill 5712
[root@xzdevlocaldomain nacos]# cd bin/
[root@xzdevlocaldomain bin]# ls
logs nohup.out shutdown.cmd shutdown.sh start-standalone startup.cmd startup.sh work
[root@xzdevlocaldomain bin]# sh startup.sh -m standalone
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-3.el8.x86_64/bin/java -Xms512m -Xmx512m -Xmn256m -Dnacos.standalone=true -Dnacos.member.list= -Djava.ext.dirs=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-3.el8.x86_64/jre/lib/ext:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-3.el8.x86_64/lib/ext -Xloggc:/root/nacos/logs/nacos_gc.log -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M -Dloader.path=/root/nacos/plugins/health,/root/nacos/plugins/cmdb -Dnacos.home=/root/nacos -jar /root/nacos/target/nacos-server.jar --spring.config.additional-location=file:/root/nacos/conf/ --logging.config=/root/nacos/conf/nacos-logback.xml --server.max-http-header-size=524288
nacos is starting with standalone
nacos is starting,you can check the /root/nacos/logs/start.out
命令 | 用法 |
---|---|
useSSL=true | 启用 SSL 连接 |
requireSSL=true | 强制要求客户端使用 SSL |
verifyServerCertificate=true | 验证服务器证书 |
enabledTLSProtocols=TLSv1.2 | 指定使用的 TLS 协议版本 |
trustCertificateKeyStoreUrl | 指定 CA 证书路径(这里把绝对路径换成了环境变量) |
正常绝对路径增加以下后缀:
&useSSL=true&requireSSL=true&verifyServerCertificate=true&enabledTLSProtocols=TLSv1.2&trustCertificateKeyStoreUrl=file:///opt/mysql-ssl/ApsaraDB-CA-Chain.pem
环境变量优化版本:
&useSSL=true&requireSSL=true&verifyServerCertificate=true&enabledTLSProtocols=TLSv1.2&trustCertificateKeyStoreUrl=${MYSQL_SSL_CERT_PATH}