tomcat使用自签名证书实现https加密访问
部署好java环境和tomcat之后
执行以下语句
#生成证书,keytool是java工具命令,-genkey生成证书,-alias证书名称,-keyalg应该是指算法,-keystore是证书存储路径
keytool -genkey -alias tomcat -keyalg RSA -keystore /root/.keystore
#进入root目录下,即证书存储路径下
cd /root
#完成自我认证
keytool -selfcert -alias tomcat -keystore .keystore
#导出生成的证书到当前目录下
keytool -export -alias tomcat -keystore .keystore -storepass 123456 -rfc -file tomcat.cer
#修改server.xml文件,主要是在8443那部分内容那里去掉注释,修改端口号,添加keystoreFile值和keystorePass值,以下有截图
vi server.xml
注意:姓名与形式那里,最好写域名(应该也可以写ip),其他随便写,我的密码是123456
密码我输入的是123456
要将这个以下生成的tomcat.cer复制到我们要访问这个tomcat服务的电脑中
还需要修改一下tomcat的conf目录下的server.xml文件,复制8443那部分,去掉注释,修改端口并添加一下参数keystoreFile="/root/.keystore" keystorePass="123456",修改完成后重启tomcat
这种方式相当于单机认证而已了,也就是说要访问端的电脑要导入对应的证书才会显示认证正常
所以我们需要在要访问这个tomcat的电脑上再配置一下
修改hosts文件,将对应的域名映射到ip。因为证书里,我们是认证的域名而已
C:\Windows\System32\drivers\etc
使用IE浏览器访问,导入证书,导入之后可能需要重启浏览器才能正常显示
直接访问域名,发现,正常
访问ip,会显示证书错误
参考链接:https://www.cnblogs.com/sixiweb/p/3339698.html