Tomcat从安装到配置Https SSL证书

2021-04-30 17:27

阅读:462

标签:time   简单的   官网   inux   img   性能   内网   tool   非阻塞   

为什么要写本文?

今天一个群友在群里问怎么给Tomcat配置SSL,也就是HTTPS,他买的阿里云的服务器,自带公网ip,还找到了免费的SSL证书

既然@我了,我就帮忙搞一搞呗,我就要了一个带sudo的用户,开始了踩坑之路

踩到坑的原因还是因为自己对Linux不够了解,所以记下来,告诫自己戒骄戒躁

安装Tomcat

演示用Centos 7,Tomcat版本8.5.50,需要先安装JDK,这里用的openjdk

下载Tomcat http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.50/bin/apache-tomcat-8.5.50.tar.gz

$ cd ~
$ wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.50/bin/apache-tomcat-8.5.50.tar.gz #下载到家目录
$ tar zxvf apache-tomcat-8.5.50.tar.gz #解压tomcat
$ cd apache-tomcat-8.5.50
$ bin/startup.sh #启动tomcat
$ tail -f logs/catalina.out #查看日志输出

你会发现Linux下tomcat启动特别慢,原因在于Tomcat获取随机数使用/dev/./random在不能产生新的随机数时会阻塞程序,参考Linux中的随机数文件 /dev/random /dev/urandom,知道问题在哪里我们修改一下bin/catalina.sh,使其使用非阻塞的/dev/urandom

vim bin/catalina.sh

在256行附近为JAVA_OPTS添加指定默认随机数-Djava.security.egd=file:/dev/./urandom,保存退出

技术图片

重启tomcat

$ bin/shutdown.sh
$ bin/startup.sh
$ tail -f logs/catalina.out

这次启动就非常快了

访问或者查看是否正确启动8080>

安装

查看启动日志的时候,你可能会发现有个库好像没有找到

用官网的说法是:

简单来说,是针对操作系统优化,大幅度提升服务器性能的运行时环境

最简单的解决办法是安装,更多细节参考

修改端口为

默认的端口是,当我们只写或域名时会默认访问端口,配置一下还挺有用的

在行左右修改为,保存退出

技术图片

重启,命令与上边一致,不再赘述

如果你和我一样,使用的也是用户,那么此时你可能要被坑了,“我访问”怎么没反应啊?

这是因为默认非用户可直接使用的端口号要大于我今天就坑在这里好久,之前一直使用用户一点事没有,这才发现这个问题,改安全组、关防火墙、改配置一把梭没查到问题,改到怀疑人生

配置证书

首先从证书颁发机构网站下载证书文件和密码,证书文件后缀,密码一般是,有时使用配置密码会失败,这里就使用转化文件

先复制证书与密码到当前目录,这里放在用户家目录中

转换证书为

查看密码,这里可以复制一下,马上会用到你的证书这里的名称你可以改成别的,只要以结尾就可以

输入次密码,粘贴刚才复制的密码即可,你会发现已经生成

配置

在大约行,修改原来的为可以使用其它高版本协议,详情参考

技术图片

如图,处填写的绝对路径,填写证书密码(刚才生成时填写的与相同的密码)

修改默认配置的为,使其它端口转发到端口拥有加密功能

在中输入,一般应该成功替换处(含注释)

保存退出,重启

后续

一般来说看到这里,你的应该已经绑上证书了

由于这是一次踩坑的记录,再提几嘴可能碰到的问题:

  • 服务器由安全组配置入站出站规则,默认入站全禁,出站全开,要注意配置与端口入站放行
  • 某些地区的阿里安全组只能使用专用网络,区别于经典网络的公网与内网可单独配置,专用网络安全组默认标灰内网为不可修改,通过查询阿里的文档,发现专用网络安全组配置在公网与内网中均会生效
  • 非用户默认没有以下端口使用的权力

从安装到配置证书

标签:   简单的   官网         性能   内网      非阻塞   

原文地址:


评论


亲,登录后才可以留言!