Linux 服务器下 tomcat9的安装部署(SSL证书部署)以及遇到的问题解决

Linux 服务器下 tomcat9的安装部署(安全证书)以及遇到的问题解决

1、安装tomcat首先要安装好JAVA环境这里就不多讲了,大家自行百度

2、tomcat9安装包安装包下载9.0.0.M17 core tar.gz下载

3、安装:

解压:tar -zxvf xx.tar.gz -C /usr/local/

重命名:mv /apache-tomcat tomcat9

测试运行 :进入tomcat9/bin 文件夹下 运行 ./startup.shLinux 服务器下 tomcat9的安装部署(SSL证书部署)以及遇到的问题解决_第1张图片

打开浏览器 http://ip:8080 测试

4、SSL证书部署参考链接

4.1、准备好JKS格式的证书

4.2、配置conf/server.xml文件

配置前:


    
        
    

配置后:


    
        
    
 

注:

certificateKeystorePassword为jks密码;

certificateKeyAlias为jks别名,没有特殊情况的别名就是申请的证书域名。

5、tomcat启动慢(造成关闭tomcat时报错)

问题一:装完tomcat9后我发现tomcat启动非常慢(大约得等六七分钟),将wepapps文件夹下的几个项目删掉几个速度还是没有提上去

问题二:开启tomcat几分钟后没反应,在执行./shutdown 会报错:

Linux 服务器下 tomcat9的安装部署(SSL证书部署)以及遇到的问题解决_第2张图片

解决方案如下(参考链接):

有两种解决办法:

1)在Tomcat环境中解决

可以通过配置JRE使用非阻塞的Entropy Source。

在catalina.sh中加入这么一行:-Djava.security.egd=file:/dev/./urandom 即可。

加入后再启动Tomcat,整个启动耗时下降到Server startup in 2912 ms。

2)在JVM环境中解决

打开$JAVA_PATH/jre/lib/security/Java.security这个文件,找到下面的内容:

securerandom.source=file:/dev/random

替换成

securerandom.source=file:/dev/./random

6、tomcat从 http转成https,并且去掉端口号

6.1、tomcat能使用https ,经过SSL证书部署已经可以进行https访问,端口号8443

6.2、同时去除http(8080)和https(8443)端口号

进入tomcat9/conf/server.xml进行配置


更改为

 


    
        
    
 

更改为


    
        
    
    

6.3强制https访问

在tomcat9/conf/web.xml中的 后面加上这样一段:

      
          
        CLIENT-CERT  
        Client Cert Users-only Area  
      
      
          
          
            SSL  
            /*  
          
          
            CONFIDENTIAL  
          
      

保存,重启tomcat服务

7、jsvc将tomcat配置成服务(在全局开启或关闭tomcat)

7.1、在/usr/local/tomcat9/bin中有commons-daemon-native.tar.gz 压缩包

7.2、解压commons-daemon-native.tar.gz #tar -zxvf commons-daemon-native.tar.gz

7.3、解压完成,出现commons-daemon-1.0.15-native-src文件夹(目录)

7.4、执行configure 文件

cd commons-daemon-1.0.15-native-src/unix ./configure

7.5、编译 [root@localhost ~]# make

7.6、 编译完成后出现jsvc文件夹,复制jsvc到/usr/local/tomcat9/bin目录下面 [root@localhost ~]# cp jsvc ../../

7.7、在/etc/init.d/目录下编写tomcat8启动服务配置文件。 [root@localhost ~]#cd /etc/init.d/ [root@localhost ~]# vi tomcat9

#!/bin/bash
#startup script for tomcat on linux

# chkconfig: 2345 10 90
# description: tomcat sever ….

#filename tomcat.sh

JAVA_HOME=/usr/local/java/jdk1.8.0_121
JRE_HOME=$JAVA_HOME/jre
CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
TOMCAT_HOME=/usr/local/tomcat9

################################################

start_tomcat=$TOMCAT_HOME/bin/startup.sh
stop_tomcat=$TOMCAT_HOME/bin/shutdown.sh

start() {
echo -n “Starting tomcat: ”
${start_tomcat} start
echo “tomcat start ok”
}

stop() {
echo -n “Shutdown tomcat”
${stop_tomcat} stop
echo “tomcat stop ok”
}

#how we were called

case “$1” in
start)
start
;;
stop)
stop
;;
restart)
stop
sleep 10
start
;;
*)
echo “Usage: $0 {start|stop|restart}”
esac

exit 0

7.8、录入完成,按Esc键。输入: wq保存退出并赋予/etc/init.d/tomcat9文件可执行权限 [root@localhost~]# chmod 777 /etc/init.d/tomcat9

7.9、[root@localhost~] #chkconfig –add tomcat8 ##添加tomcat服务

7.10、[root@localhost~] #chkconfig –list |grep tomcat8 ##查看tomcat服务是否被添加

7.11、[root@localhost~] # service tomcat8 start ##启动tomcat服务

啊累死了!

你可能感兴趣的:(linux)