1.Tomcat-Native安装

使用StartSSL,Tomcat必须用apr方式启动(apr方式对于静态的内容,比默认的bio效率要高很多倍)

  • Windows下tomcat-native安装

直接复制tcnative-1.dll到bin目录下即可(需要重启Ecplise)才能体现

注意:不同的Tomcat,对应的tomcat-native版本也不同,向下兼容,可以去下载最新版的

比如: http://apache.fayea.com/tomcat/tomcat-connectors/native/1.1.32/binaries/tomcat-native-1.1.32-win32-bin.zip

PS:tomcat-native 一般都会带一个已经编译好的绿色openssl.exe,很好用,下面会用到

PS: eclipse可能不会自动带上这个参数,还是以bio模式运行,那就 在Run > Run Configuration > Tomcat xxx > Arguments的VM arguments里写上参数

-Djava.library.path="dll的放置路径"

  • Linux下tomcat-native安装

一般不用下载,在tomcat/bin目录下就有tomcat-native.tar.gz文件

先下载依赖包,注意需要装对应版本的openjdk-devel,其实就是openjdk的jdk,默认安装openjdk,其实是jre

$ yum install gcc gcc-java apr apr-devel openssl openssl-devel libgcc.x86_64
或者
$ apt-get install libapr1.0-dev libssl-dev...

然后,一般这样就可以了(注意apr的路径,如果默认路径,一般可以不配置,用tomcat的执行账户编译运行)

一般在 $tomcat/bin/tomcat-native-1.1.32-src/jni/native 下编译

$ ./configure --with-apr=/usr/bin/apr-1-config \
$ --with-java-home=/usr/lib/jvm/java-1.7.0-openjdk.x86_64/ \
$ --with-ssl=yes \
$ --prefix=/home/www/tomcat
$ make
$ make install

设置环境变量(可以设定到/etc/profile 或者.bash_profile里)

export LD_LIBRARY_PATH=/home/www/tomcat/lib
export LD_RUN_PATH=/home/www/tomcat/lib

安装完之后,启动tomcat

一月 13, 2015 3:43:58 下午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler ["http-apr-8888"]
一月 13, 2015 3:43:58 下午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler ["http-apr-443"]
一月 13, 2015 3:43:58 下午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler ["ajp-apr-8009"]

http-apr-8888........说明tomcat已经在使用apr模式(默认是 http-bio-8888)

2.申请StartSSL免费证书

申请StartSSL证书,请参考 http://www.cnblogs.com/kreo/p/4221379.html

申请完后你会有一下三个文件,ssl.crt(公钥),ssl.key(密钥),ssl.p12(PKCS12格式的证书)

  • 查看证书的内容
$ keytool -list -rfc -keystore ssl.p12 -storetype pkcs12 

如下,记下别名(alias),本文是 startcom pfx certificate (一般都是这个)

  • 生成keystore
$ keytool -importkeystore -srckeystore ssl.p12 -srcstoretype PKCS12 -destkeystore keystore -srcalias "startcom pfx certificate" -destkeypass 123456

srcalias 是上面查到的别名

destkeypass 是默认加密密码,可能会忽略,重新输入一次即可

执行完之后,会在目录下生成名为keystore的文件

  • 合并证书

这步主要是为了FireFox,因为FireFox会要求提供根证书

下载StartSSL CA证书

http://cert.startssl.com/certs/ca.pem

下载StartSSL Class1 Sub CA

http://cert.startssl.com/certs/sub.class1.server.ca.pem

然后把ca.pem和sub.class1.server.ca.pem,加在ssl.crt后面

记事本加一下就可以,这里要注意,每个证书都要有

-----BEGIN CERTIFICATE-----

-----END CERTIFICATE-----

这2个开始结束标记,第一个结束和第二个开始标记不能在一行,不然会报错

  • 使用OpenSSL加解密功能,改变加密方式,使Tomcat不用启动就输入私匙密码
$ copy ssl.key ssl.key.tmp
$ openssl rsa -in ssl.key.tmp -out ssl.key

3.Tomcat配置证书

<Connector SSLEnabled="true" URIEncoding="UTF-8" clientAuth="false"
SSLCACertificateFile="D:/WorkSpace/ssl/ssl.crt"
SSLCertificateFile="D:/WorkSpace/ssl/ssl.crt"
SSLCertificateKeyFile="D:/WorkSpace/ssl/ssl.key"
keystoreFile="D:/WorkSpace/ssl/keystore" keystorePass="changeit" keystoreType="PKCS12"
maxThreads="150" port="443" protocol="HTTP/1.1" scheme="https" secure="true" sslProtocol="TLS"/>

4.把证书导入jre

$ keytool -import -alias cacerts -keystore "%JAVA_HOME%\jre\lib\security\cacerts" -file D:\ssl.crt -trustcacerts

最好所有jre都导一遍,以免出现PKIX path building failed错误

Tomcat7 安装StartSSL证书笔记的更多相关文章

  1. Android安装器学习笔记(一)

    Android安装器学习笔记(一) 一.Android应用的四种安装方式: 1.通过系统应用PackageInstaller.apk进行安装,安装过程中会让用户确认 2.系统程序安装:在开机的时候自动 ...

  2. 解决Firefox不信任StartSSL证书问题

    从2016年的11月份开始,firefox \  chrome \ apple 等陆续不再信任  StartSSL 的证书,导致一些使用  StartSSL 的证书的网站访问遇到了麻烦, firefo ...

  3. 安装.cer证书并将证书从.cer格式转化为.pem格式

    ## 安装.cer证书并将证书从.cer格式转化为.pem格式 ### 安装.cer证书到本地 打开*运行*窗口 输入MMC.exe, 单击*确定* 在打开的控制台1的窗口中. 选择*文件*, 选择* ...

  4. debain 8安装为知笔记(how to install wiznote in debain 8)

    刚装了debain8后想安装为知笔记,百度之后发现为知笔记原来是开源软件.代码托管在github上:https://github.com/WizTeam/WizQTClient 但是上面只有Ubunt ...

  5. TortoiseGit和msysGit安装及使用笔记(windows下使用上传数据到GitHub)[转]

    TortoiseGit和msysGit安装及使用笔记(windows下使用上传数据到GitHub) Git-1.7.11-preview+GitExtensions244SetupComplete+T ...

  6. startssl证书firefox支持配置

    解决Firefox不信任StartSSL证书问题 wget http://cert.startssl.com/certs/ca.pem wget http://cert.startssl.com/ce ...

  7. centos6 安装配置ss笔记

    2018-05-17 centos6 安装配置ss笔记 操作环境:Centos 6 x86_64 bbr 服务器地址:美国 1.准备VPS 在https://www.bwh1.net可购买,购买时已默 ...

  8. 免费获取SSL证书/一键安装SSL证书/https加密

    因为我用的是恒创的香港服务器 虽然价格相较于大促的阿里云贵一些,但是有一个有点不用备案... 安装步骤: 1.登录云主机控制面板, 在 其他管理 中找到并进入 SSL证书 设置. 注意:如拥有多个域名 ...

  9. pc安装完成charles成功,小米安装crt证书失败

    问题描述: 今天在学习爬虫爬取APP内容时,需要安装crt证书.根据静谧大大的书,前面都挺顺利的.但在我的小米手机上安装crt证书时,出现了错误.手机显示无法安装. 解决之道: 1.不要用小米手机自带 ...

随机推荐

  1. 操作SQLite数据库

    本文摘自: http://docs.blackberry.com/en/developers/deliverables/25108/Creating_and_deleting_SQLite_datab ...

  2. 【jacob word】使用jacob,合并多个word为一个word文件

    将几个word文件合并到一个word文件,使用注意点: 1.后面附项目运用的jar包jacob-1.9, 2.并且jacob运用中,需要将附件内的jacob.dll放到windows/system32 ...

  3. LoadRunner之自定义HTTP请求

    LoadRunner之自定义HTTP请求 性能测试开发脚本时使用的都是同样的模式.对在性能测试规划时指定的典型业务逻辑场景进行录制,形成基本的脚本骨架. 录制脚本后需要对脚本进行编辑,以满足性能测试需 ...

  4. Hadoop_10_12虚拟机01_虚拟机NAT方式联网【自己的亲测笔记】

      NAT方式 1.查看网络信息--ifconfig(同windows中的ipconfig相同) 主要关注的是第三行内容,分别是Ip地址.广播地址.子网掩码 2.安装完系统后需要配置三个地方--IP地 ...

  5. 贪心/字符串处理 Codeforces Round #291 (Div. 2) A. Chewbaсca and Number

    题目传送门 /* WA了好几次,除了第一次不知道string不用'\0'外 都是欠考虑造成的 */ #include <cstdio> #include <cmath> #in ...

  6. Spark Streaming实时计算框架介绍

    随着大数据的发展,人们对大数据的处理要求也越来越高,原有的批处理框架MapReduce适合离线计算,却无法满足实时性要求较高的业务,如实时推荐.用户行为分析等. Spark Streaming是建立在 ...

  7. Codeforces Round #206 (Div. 2) A. Vasya and Digital Root

    #include <iostream> using namespace std; int main(){ int k,d; cin >> k >>d; ) { k ...

  8. 使用jQuery操作Cookies的实现代码

    Cookie是由服务器端生成,发送给User-Agent(一般是浏览器),浏览器会将Cookie的key/value保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是 ...

  9. 【BZOJ】2002: [Hnoi2010]Bounce 弹飞绵羊(lct)

    http://www.lydsy.com/JudgeOnline/problem.php?id=2002 (BZOJ挂了,还没在BZOJ测,先是在wikioi测过了,,) 囧.在军训时立志要学lct! ...

  10. Graph database_neo4j 底层存储结构分析(3)

    3.3  通用的Store 类型 3.3.1    id 类型 下面是 neo4j db 中,每种Store都有自己的ID文件(即后缀.id 文件),它们的格式都是一样的. [test00]$ls - ...