`
cuker919
  • 浏览: 97701 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Tomcat配置https环境(Windows+Linux)

 
阅读更多
Tomcat配置https环境(Windows+Linux)

windows下的配置主要是参考:http://blog.csdn.net/supersky07/article/details/7407523

我需要的主要还是linux下的配置,不过windows下和linux下的原理应该差不多,并且windows下讲解比较清楚,因而记录下来以便于进行对比。

Windows下Tomcat配置https环境:

(1)进入到jdk下的bin目录

(2)输入如下指令“keytool -v -genkey -alias tomcat -keyalg RSA -keystore d:/tomcat.keystore”


d:/tomcat.keystore是将生成的tomcat.keystore放到d盘根目录下。注意若要放到c盘,在win7系统下,需要以管理员身份进入到命令行中进行操作,否则是无法创建tomcat.keystore的。本例放到d盘下。
如何以管理员身份进入到命令行下呢?开始->搜索框中输入cmd->等待(注意不回车)->出现cmd.exe->右键“以管理员身份运行”即可。

解释:

keytool -genkey:自动使用默认的算法生成公钥和私钥

-alias[名称]:给证书取个别名

-keyalg:制定密钥的算法,如果需要制定密钥的长度,可以再加上keysize参数,密钥长度默认为1024位,使用DSA算法时,密钥长度必须在512到1024之间,并且是64的整数倍

-keystore:参数可以指定密钥库的名称。密钥库其实是存放和证书文件,密钥库对应的文件如果不存在会自动创建。

-validity:证书的有效日期,默认是90天

-keypass changeit:不添加证书密码

-storepass changeit:不添加存储证书的密码

输入相关信息后,最后确认,便会在tomcat根目录下生成server.key文件。

(3)输入keystore密码


密码任意,此处以123456为例,要记住这个密码,之后在进行server.xml配置时需要使用。

(4)输入名字、组织单位、组织、市、省、国家等信息

(5)输入之后会出现确认的提示

此时输入y,并回车。此时创建完成keystore。
进入到D盘根目录下可以看到已经生成的tomcat.xml

(6)输入tomcat的主密码


可以直接回车,默认为同keystore的密码一样。
之后,会显示正在存储即完成。

(7)进入tomcat文件夹

找到conf目录下的sever.xml并进行编辑

将所有以<Connector port="8443" 开头的connector注释。

(8)在sever.xml中添加加载keystore的代码


注意方框中的keystore的密码,就是刚才我们设置的“123456”.
编辑完成后关闭并保存sever.xml。

(9)启动tomcat。

若出现如下错误“Keystore was tampered with,or password was incorrect”,即第(8)步设的密码出错了。请核对密码,重新编写sever.xml。

(10)启动成功后,使用https://127.0.0.1:8443 访问页面

页面成功打开即tomcat下的https配置成功。

(11)应用程序HTTP自动跳转到HTTPS

在应用程序中web.xml中加入:

<security-constraint>

<web-resource-collection >

<web-resource-name >SSL</web-resource-name>

<url-pattern>/*</url-pattern>

</web-resource-collection>

<user-data-constraint>

<transport-guarantee>CONFIDENTIAL</transport-guarantee>

</user-data-constraint>

</security-constraint>

(12)注意事项

1. 生成证书的时间,如果IE客户端所在机器的时间早于证书生效时间,或者晚于有效时间,IE会提示“该安全证书已到期或还未生效”

2.如果IE提示“安全证书上的名称无效或者与站点名称不匹配”,则是由生成证书时填写的服务器所在主机的域名“您的名字与姓氏是什么?”/“What is your first and last name?”不正确引起的

支持特定页面采用HTTPS传输,普通页面采用HTTP传输:

HTTPS相比HTTP来说,最大的好处就是安全,但是为了安全付出的代价是牺牲了性能。

所有我们需要采取控制,对特定需要https的页面采用https传输,普通页面采取http传输。

我们采用了过滤器,过滤器中的逻辑是这样子的,分为四种情况:

1.当前协议是HTTPS,当前请求的URL是需要采取HTTPS传输的URL,直接请求页面

2.当前协议是HTTPS,当前请求的URL是不需要采取HTTPS传输的URL,重定向到HTTP的端口

3.当前协议是HTTP,当前请求的URL是不需要采取HTTPS传输的URL,直接请求该页面

4.当前协议是HTTP,当前请求的URL是需要采取HTTPS传输的URL,重定向到HTTPS的端口。

Linux的参考网址:http://wenku.baidu.com/view/5f7c090016fc700abb68fc4c.html

1:安装jdk,
[root@localhost ~]# ls jdk-1_5_0_19-linux-i586.bin
jdk-1_5_0_19-linux-i586.bin
[root@localhost ~]# pwd
/root
[root@localhost ~]# chmod a+x jdk-1_5_0_19-linux-i586.bin
[root@localhost ~]# ./jdk-1_5_0_19-linux-i586.bin

在当前目录下生成jdk1.5.0_19目录。
我把它移到/usr/local目录下。
[root@localhost ~]# mv jdk1.5.0_19 /usr/local/
[root@localhost local]# ln -s jdk1.5.0_19 jdk

下面是配置路径:
[root@localhost local]# vi /etc/profile
在文件的最后加入:
export JAVA_HOME=/usr/local/jdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

然后运行如下命令使得不重启机器就生效:
[root@localhost local]# source /etc/profile
2:安装tomcat, 其实上面配置路径就是为了tomcat能正常启动, 因为tomcat启动时需要用到到jdk,

[root@localhost local]# tar zxvf apache-tomcat-5.5.26.tar.gz
[root@localhost local]# ln -s apache-tomcat-5.5.26 tomcat5.5

3:生成证书:
[root@localhost ~]# keytool -genkey -alias .keystore -keyalg RSA
Enter keystore password: hellohello
What is your first and last name?
[Unknown]: liu #这项要和你linux server的机器名一样,这样有好处!查linux server的机器名,可以用hostname命令
What is the name of your organizational unit?
[Unknown]: bea
What is the name of your organization?
[Unknown]: bea
What is the name of your City or Locality?
[Unknown]: suzhou
What is the name of your State or Province?
[Unknown]: suzhou
What is the two-letter country code for this unit?
[Unknown]: cn
Is CN=liu, OU=bea, O=bea, L=suzhou, ST=suzhou, C=cn correct?
[no]: yes

Enter key password for <.keystore>
(RETURN if same as keystore password): hellohello

尤其注意:两次输入的密码一定要一样!而且生成的.keystore的位置在~下(我用的是root,故在/root下)
[root@localhost ~]# find / -name .keystore
/root/.keystore
然后复制该文件到/usr/local/tomcat5.5下(我tomcat安装在/usr/local目录下!)
查看该文件的时候用ls -a
4:对server.xml做配置,
[root@localhost ~]# cd /usr/local/tomcat5.5/
[root@localhost tomcat5.5]# ls
bin common conf LICENSE logs NOTICE RELEASE-NOTES RUNNING.txt server shared temp webapps work
[root@localhost tomcat5.5]# pwd
/usr/local/tomcat5.5
[root@localhost tomcat5.5]# ls -a
. .. bin common conf .keystore LICENSE logs NOTICE RELEASE-NOTES RUNNING.txt server shared temp webapps work
[root@localhost tomcat5.5]# cd conf/
[root@localhost conf]# ls
Catalina catalina.policy catalina.properties context.xml logging.properties server-minimal.xml server.xml tomcat-users.xml web.xml
[root@localhost conf]# pwd
/usr/local/tomcat5.5/conf
[root@localhost conf]# vi server.xml

修改部分如下:
先把关于下面的注视去掉:
<Connector port="443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
keystoreFile="/usr/local/tomcat/.keystore"
keystorePass="hellohello"
clientAuth="false" sslProtocol="TLS"
/>
粗体是我修改的部分
4: 启动tomcat
[root@localhost conf]# cd /usr/local/tomcat5.5/
[root@localhost tomcat5.5]# ls
bin common conf LICENSE logs NOTICE RELEASE-NOTES RUNNING.txt server shared temp webapps work
[root@localhost tomcat5.5]# cd bin/
[root@localhost bin]# ls
bootstrap.jar commons-logging-api-1.1.1.jar jmxaccessor-tasks.xml shutdown.bat tomcat5w.exe version.bat
catalina.bat cpappend.bat jsvc.tar.gz shutdown.sh tomcat-juli.jar version.sh
catalina.sh digest.bat service.bat startup.bat tomcat-native.tar.gz
catalina-tasks.xml digest.sh setclasspath.bat startup.sh tool-wrapper.bat
commons-daemon.jar jkstatus-tasks.xml setclasspath.sh tomcat5.exe tool-wrapper.sh
[root@localhost bin]# pwd
/usr/local/tomcat5.5/bin
[root@localhost bin]# ./startup.sh
Using CATALINA_BASE: /usr/local/tomcat5.5
Using CATALINA_HOME: /usr/local/tomcat5.5
Using CATALINA_TMPDIR: /usr/local/tomcat5.5/temp
Using JRE_HOME: /usr/local/jdk
[root@localhost bin]# netstat -antl | grep 443
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN
[root@localhost bin]#
这里tomcat已经启动了。
5:测试:启动浏览器
分享到:
评论

相关推荐

    Tomcat在Windows与Linux环境下的安装与配置教程+Tomcat如何安装与配置

    tomcat安装及配置教程:Tomcat在Windows与Linux环境下的安装与配置教程+Tomcat如何安装与配置; tomcat安装及配置教程:Tomcat在Windows与Linux环境下的安装与配置教程+Tomcat如何安装与配置; tomcat安装及配置教程...

    MyEclipse安装过程+Tomcat配置+JDK安装+环境变量配置

    二、Tomcat配置 Tomcat是一款开源的Servlet容器,用于运行Java Web应用程序。配置Tomcat包括以下步骤: 1. 下载:从Apache官网下载Tomcat的zip或tar.gz文件。 2. 解压:将下载的文件解压到任意目录,推荐避免中文...

    Tomcat 服务器windows和linux 版本

    本压缩包包含Tomcat在Windows和Linux两个操作系统上的不同版本,旨在提供跨平台的灵活性,满足开发者在各种环境下的需求。 在Windows系统上,Tomcat安装和配置相对简单,适合初学者快速上手。下载对应版本的Tomcat ...

    tomcat8安装包(含windows和linux版本).zip

    这个压缩包包含了Windows和Linux两个操作系统平台的安装版本,使得用户可以在不同的操作系统环境下方便地安装和使用Tomcat。 在Windows系统中,Tomcat通常以服务的形式运行,允许用户通过控制台或图形界面启动、...

    nginx_https+tomcat_http配置.docx

    以上步骤涵盖了在Windows和Linux环境下配置Nginx作为HTTPS反向代理并将请求转发至Tomcat HTTP服务器的过程。正确配置后,用户可以通过HTTPS协议访问部署在Tomcat上的应用,提高了安全性。此外,通过调整Nginx的配置...

    jdk+tomcat+Eclipse(JAVA环境开发配置)

    2. **Eclipse中的Tomcat配置**:在"Server"视图中,右键点击"Runtime Environments",选择"New",然后选择Apache Tomcat版本,浏览到你的Tomcat安装目录并完成配置。接着,创建一个新的服务器实例,将你的Web项目...

    window tomcat项目迁移到linux

    - 配置文件差异:比如server.xml, context.xml等Tomcat配置文件可能需要调整以适应Linux环境。 - 环境依赖:检查项目是否有特定于Windows的库或服务,可能需要寻找Linux下的替代品。 - shell脚本:Windows批处理文件...

    Apache+Tomcat+Linux集群和负载均衡

    Tomcat作为后端应用服务器,同时利用Linux系统强大的稳定性和安全性来构建一个能够有效分发请求、提高响应速度和服务质量的Web应用集群环境。 #### 二、关键技术概念 1. **Apache**: 开源Web服务器软件,常用于...

    apache-tomcat7.0.100windows和linux版本安全版本.zip

    Apache Tomcat 7.0.100 是一个流行的开源软件...无论是Windows还是Linux环境,都需要了解其基本配置、安全设置和管理,以确保服务器的稳定性和安全性。正确配置和管理Tomcat,能够有效地提升Web应用的性能和用户体验。

    tomcat配置环境变量

    文件“tomcat如何配置环境变量.doc”应该包含了更详细的步骤和可能遇到的问题解决方案,建议初学者详细阅读并按照文档中的指导进行操作,以确保Tomcat配置的正确无误。在实际操作中,如果遇到问题,可以查阅官方文档...

    apache-tomcat8.5.51-windows和linux版本安全版本.zip

    此版本的Tomcat针对Windows和Linux操作系统进行了优化,确保在这些平台上运行的安全性和稳定性。 1. **Apache Tomcat简介** Apache Tomcat是一个轻量级的应用服务器,主要处理基于Java技术的Web应用。它是Apache...

    linux/windows版本tomcat7

    1. **环境变量设置**:无论是Linux还是Windows,都需要配置`JAVA_HOME`环境变量,指向Java JDK的安装路径,确保Tomcat能找到Java运行环境。 2. **修改配置文件**:根据需求可以编辑`conf/server.xml`,例如调整端口...

    tomcat-10.0.5(window 版本 + linux 版本)

    **Tomcat在Windows和Linux上的安装与配置** 1. **Windows安装**:解压`apache-tomcat-10.0.5.zip`文件,将目录放置在期望的位置,设置环境变量CATALINA_HOME指向Tomcat的安装目录。通过bin目录下的startup.bat启动...

    keytool+tomcat配置HTTPS双向证书认证

    Keytool+Tomcat配置HTTPS双向证书认证 Keytool 是 Java 中的一个命令行工具,用于生成和管理数字证书。Tomcat 是一个流行的 Web 服务器,可以使用 SSL/TLS 加密来保护数据传输。下面是使用 Keytool 生成证书和配置 ...

    apache-tomcat(win+Linux).zip

    总结,这个压缩包提供了在Windows和Linux环境下运行Apache Tomcat所需的一切,使得开发者可以在不同操作系统上轻松部署和管理Java Web应用。无论是初学者还是经验丰富的开发者,都能从中受益。通过了解和掌握这些...

    Linux+JDK+Tomcat+Oracle

    本文将基于“Linux+JDK+Tomcat+Oracle”这一主题,深入解析如何在Linux操作系统下安装配置JDK(Java Development Kit)、Apache Tomcat以及Oracle数据库,形成一个完整的Java Web应用程序运行平台。 ### Linux系统...

    tomcat-9.0.8 包含windows和linux版

    总的来说,Apache Tomcat 9.0.8 提供了在Windows和Linux上运行Java Web应用的解决方案,其跨平台的特性使得开发者可以在不同的操作系统环境下开发和测试应用,而无需担心兼容性问题。无论是在企业级服务器还是个人...

    tomcat7,tomcat8包含windows喝linux版本的

    Windows版本通常更适合初学者或桌面环境,而Linux版本由于其稳定性和服务器环境的兼容性,常被用于生产环境。 在配置和使用Tomcat时,有几个关键的概念需要注意: 1. **conf目录**:存放Tomcat的配置文件,如...

    安装Jdk+tomcat+apache+PHP+mysql(linux).pdf

    在Linux环境下搭建一个完整的Web开发环境,包括JDK、Tomcat、Apache、PHP和MySQL,是许多开发者在初期阶段必须掌握的基本技能。本教程将详细解释如何在基于RedHat 9(内核2.4.20-8)的操作系统上进行这些组件的安装...

Global site tag (gtag.js) - Google Analytics