Home > Chinese - 中文 > Tomcat6下配置HTTPS

Tomcat6下配置HTTPS

我使用的JDK版本为JDK7,使用的的Tomcat版本为6.0.24;配置Tomcat下的HTTPS其实很简单,只需要完成两步工作就可以了;操作系统为Windows 7。

一、生成“服务器证书文件”

我把生成的“服务器证书文件”取名为tomcat.key(也可以取成abc.keystore,随自己喜欢就好)。简单起见,我把tomcat.key放在C盘根目录下面(我的配置环境为windows,linux类似)。
首先使用JDK自带的工具keytool生成一个“服务器证书”,取名为tomcat.key。

C:\Users\Administrator>keytool -genkey -alias tomcat -keyalg RSA -keystore C:\to
mcat.key
输入keystore密码:
再次输入新密码:
您的名字与姓氏是什么?
[Unknown]:  beelun
您的组织单位名称是什么?
[Unknown]:  beelun
您的组织名称是什么?
[Unknown]:  beelun
您所在的城市或区域名称是什么?
[Unknown]:  beijing
您所在的州或省份名称是什么?
[Unknown]:  beijing
该单位的两字母国家代码是什么
[Unknown]:  cn
CN=beelun, OU=beelun, O=beelun, L=beijing, ST=beijing, C=cn 正确吗?
[否]:  y

输入<tomcat>的主密码
(如果和 keystore 密码相同,按回车):

C:\Users\Administrator>jdk -version
‘jdk’ is not recognized as an internal or external command,
operable program or batch file.

C:\Users\Administrator>java -version
java version “1.7.0-ea”
Java(TM) SE Runtime Environment (build 1.7.0-ea-b23)
Java HotSpot(TM) Client VM (build 12.0-b01, mixed mode, sharing)

C:\Users\Administrator>

按照提示,输入密码。我输入的密码为123456(注意:此密码在配置server.xml时需要)。其他信息按照提示输入就可以,在输入tomcat主密码时,我直接键入回车,使其和keystore的密码保持一致。

此时,在C盘下面就生成了一个PCKS1.2格式的数字证书文件C:\tomcat.key。

二、配置server.xml文件

修改tomcat\conf目录下面的server.xml文件,添加一项:

<Connector protocol=”org.apache.coyote.http11.Http11Protocol”
port=”8443″ minSpareThreads=”5″ maxSpareThreads=”75″
enableLookups=”true” disableUploadTimeout=”true”
acceptCount=”100″  maxThreads=”200″
scheme=”https” secure=”true” SSLEnabled=”true”
keystoreFile=”C:\tomcat.key” keystorePass=”123456″
clientAuth=”false” sslProtocol=”TLS”/>

需要注意一行“keystoreFile=”C:\tomcat.key” keystorePass=”123456″”,其中keystorefile是你生成的“服务器证书文件”,keystorePass是该服务证书文件的密码。

三、在浏览器地址栏里输入 https://localhost:8443/ 检验一下就OK了。

Update
From http://forums.java.net/jive/message.jspa?messageID=282519

I found some hints on the web that
CN should be the fully-qualified domain name of your server host

I replaced “localhost” with “pc_name”.”domain_name”
and it worked. They (pc_name and domain_name) are concatenated by dot.

Note:
My “domain_name” contains dots too.

I tested certificates on the same PC, but maybe this help you.

Categories: Chinese - 中文 Tags: , ,
  1. No comments yet.
  1. No trackbacks yet.