linux系统下配置tomcat 服务端https加密

原理:
将证书(也可以叫公钥)+私钥转化成 jks类型的keystore文件,在tomcat的server.xml中配置开启
踩坑:
1、多数文章都是针对自己生成证书,配置双向加密,其过程有生成,合并,导出,配置服务端,配置客户端等等,看的一塌糊涂
2、多数文章都是以实验为参考,误以为生成的keystore文件名可以随意命名,直接使用拷贝命令的方式生成了一个tomcat.keystore文件
正确的命令方式应该是(证书名.keystore),或者说是生成证书时的CN名称
3、clientAuth="true"这个是给双向认证的时候用的,需要配置成false
4、开始配置使用tomcat.keystore这个名称的时候,用内网浏览器访问的时候是正常,但是接下来使用公网通过真正申请证书那个域名访问的时候就访问不了
然后查找原因,各种测试,各种修改配置,内网浏览器测试也访问不了,这里个人猜测是开始的时候tomcat认为配置了一个证书,然后按照规则提供了访问
但是后来使用真正域名访问的时候,tomcat接收了一个证书内容和自己的一样,但是名称或者是说CN名称不一致,然后tomcat就不在提供服务了

过程:
1、将证书转为keystore形式,中间转换成p12的名字可以随意
a、先转为p12格式
openssl pkcs12 -export -in ./www.123.com.cn.cer -inkey ./server.key -out ./projectX.p12
记住输入的密码
b、将p12转为.keystore格式
keytool -importkeystore -v -srckeystore ./projectX.p12 -srcstoretype pkcs12 -srcstorepass 123456 -destkeystore ./www.123.com.cn.keystore -deststoretype jks -deststorepass 123456
2、配置tomcat下server.xml文件
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="/usr/local/cert/www.123.com.cn.keystore.keystore"
keystorePass="123456" />

原文地址:https://blog.51cto.com/19840202/2454950

时间: 2024-10-14 17:57:52

linux系统下配置tomcat 服务端https加密的相关文章

linux 系统下配置tomcat,并给tomcat赋予最高操作权限,启动tomcat和关闭tomcat

配置tomcat服器 红颜色的字是路径,蓝颜色字是命令 (1)官方网站下载tomcat压缩包.apache-tomcat-7.0.57.tar.gz (2)进入你指定的tomact目录下,将压缩包放入该目录下,利用命令解压该压缩包. 命令:sudo tar apache-tomcat-7.0.57.tar.gz(3)该tomcat能否运行的前提是,你已经在linux系统环境下成功配置了jdk环境 (4)由于权限问题,可能不能启动tomcat.因此要给该tomcat赋予最高权限 命令:进入到tom

Linux系统下配置Tomcat

安装完Tomcat之后,配置Tomcat环境变量. vim /etc/profile.d/tomcat.sh CATALINA_BASE=tomcat安装路径PATH=$CATALINA_BASE/bin:$PATHexport PATH CATALINA_BASE source /etc/profile.d/tomcat.sh 修改tomcat的server.xml (vim /tomcat安装路径/conf/server.xml) 修改连接标签connect:1端口号2将AJP改成HTTP/

linux系统下重启tomcat的shell脚本

linux系统下重启tomcat的shell脚本: tomcat_home=/opt/apache-tomcat-6.0.32 #找到tomcat进程的id并kill掉 ps -ef |grep tomcat |awk {'print $2'} | sed -e "s/^/kill -9 /g" | sh - #删除日志文件,如果你不先删除可以不要下面一行 rm $tomcat_home/logs/* -rf #删除tomcat的临时目录 rm $tomcat_home/work/*

linux系统下部署TOMCAT异常:java.net.UnknownHostException

原文出自:http://www.myexception.cn/operating-system/444024.html linux系统下部署TOMCAT错误:java.net.UnknownHostException今天在修改linux环境中 /etc/hosts文件时候,保存之后,访问页面的时候突然这个错,后来网上查了下,解决了java.net.UnknownHostException: vps**: vps**        at java.net.InetAddress.getLocalH

Linux系统下分割tomcat日志

在Linux系统下,tomcat日志catalina.out并不会像window系统下,按日期进行重写备份,因此在Linux系统下会造成日志文件过大的情况,本文介绍采用 cronolog工具进行如在window下的效果,做到按日期自动分割日志,过程如下: 1.在Linux安装cronolog,本文中采用的是cronolog-1.6.2版本 [[email protected] src]# tar zxvf cronolog-1.6.2.tar.gz [[email protected] cron

虚拟机Linux系统下配置网络

虚拟机上安装Redhat9.0后是没有网络的,而本来的Windows系统是可以上网的,此时想在Redhat上网就需要在Linux系统上配置网络,以下是笔者自己配置的一点心得. 1.电脑本机系统打开网络连接,启用VMnet1和VMnet8(设置—>主页—>网络和Internet—>更改适配器选项) 2.打开虚拟机,选中RedHat,在虚拟机设置中,将网络连接模式设为“Bridged”,确定.3.启动Redhat操作系统.打开终端. 4.输入命令:ifconfig  回车 这是我配置成功以后

关于Linux系统下基于Tomcat部署和升级war包的详细过程

1.首先Linux先安装java,Tomcat 中间件规范要求: 1)         软件必须下载到/services/download_soft_v        --------(用xftp上传到此目录) 2)         软件必须安装到/services/current_apps        --------------(将上传的java和tomcat 复制或者移动到此目录下) 操作步骤: 1)         利用xftp把软件包传到服务器上 2)         先上传至/ho

Linux系统下配置环境变量

一.环境变量文件介绍 转自:http://blog.csdn.net/cscmaker/article/details/7261921 Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登录到系统的用户都要读取的系统变量,而用户级的环境变量则是该用户使用系统时加载的环境变量. 所以管理环境变量的文件也分为系统级和用户级的,下面贴一个网上找到的讲的比较明白的文件介绍(略作修改)[1]: 1.系统级: (1)/etc/profile:该文件是用户登录时,操作系统定制用户环境时使用的第一个

linux系统下安装tomcat服务器

一.首先需要关闭linux防火墙(重启后生效) chkconfig iptables off 二.从官网上下载Linux合适版本的tomcat,我现在下来的文件为apache-tomcat-8.5.30.tar.gz 三.使用ftp工具上传tomcat文件到linux的/usr/local目录下 四.解压该文件 tar -zxvf apache-tomcat-8.5.30.tar.gz 五.解压成功后,进入tomcat的bin目录下,执行下面代码启动tomcat ./startup.sh 六.打