专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Java教程 » tomcathttps:在tomcat中实现https安全连接的思路方法 »正文

tomcathttps:在tomcat中实现https安全连接的思路方法

来源: 发布时间:星期四, 2008年12月18日 浏览:33次 评论:0
SSL介绍 SSL, 或者Secure Socket Layer种允许web浏览器和web服务器通过个安全连接进行交流技术这意味着将被发送数据在端被翻译成密码传送出去然后在另端解开密码再进行处理这是个双向过程也就是浏览器和服务器都需要在发送数据的前对它们进行加密 SSL协定个重要方面是认证(Authentication)这就是说在你开始试图通过个安全连接和个web服务器交流时候这个服务器会要求你浏览器出示组证件通过“鉴定”方式来证明这就是你所声明网站WebSite 在某些情况下服务器还会要求你web浏览器认证书证明你就是你所说那个人这就是所知“客户认证”尽管实际情况中更多地用在商务-对-商务(B2B)交易而不是对个人用户 但大多数有SSL功能web服务器不要求客户认证(Client Authentication) 证书 为了能实施SSL个web服务器对每个接受安全连接外部接口(IP 地址)必须要有相应证书(Certicate)有关这个设计理论是个服务器必须提供某种合理保证以证明这个服务器主人就是你所认为那个人这个证书要陈述和这个网站WebSite相关联公司以及这个网站WebSite所有者或系统管理员些基本联系信息 这个证书由所有人以密码方式签字其他人非常难伪造对于进行电子商务(e-commerce)网站WebSite或其他身份认证至关重要任何商业交易认证书要向大家所熟知认证权威(Certicate Authority (CA))如VeriSign或Thawte来购买这样证书可用电子技术证明属实实际上认证权威单位会担保它发出认证书真实性如果你信任发出认证书认证权威单位你就可以相信这个认证书是有效 在许多情况下认证并不是真正使人担忧系统管理员或许只想要保证被服务器传送和接收数据是秘密不会被连接线上偷窃者盗窃到庆幸Java提供相对简单被称为keytool命令行工具可以简单地产生“自己签名”证书自己签名证书只是用户产生证书没有正式在大家所熟知认证权威那里注册过因此不能确保它真实性但却能保证数据传输安全性 认证也许很重要也许不重要完全决定于网站WebSite需要 用Tomcat来配置SSL主要有下面这么两大步骤: 、生成证书 1、 在命令行下执行: %Java_home%\bin\keytool -genkey -alias tomcat -keyalg RSA 在此命令中keytool是JDK自带产生证书工具把RSA运算法则作为主要安全运算法则这保证了和其它服务器和组件兼容性 这个命令会在用户home directory产生个叫做" .keystore " 新文件在执行后你首先被要求出示keystore密码Tomcat使用默认密码是" changeit "(全都是小写字母)如果你愿意你可以指定你自己密码你还需要在server.xml配置文件里指定自己密码这在以后会有描述 2、 你会被要求出示有关这个认证书般性信息如公司联系人名称等等这些信息会显示给那些试图访问你里安全网页用户以确保这里提供信息和他们期望相对应 3、 你会被要求出示密钥(key)密码也就是这个认证书所特有密码(和其它储存在同个keystore文件里认证书区别)你必须在这里使用和keystore密码相同密码(目前keytool会提示你按ENTER键会自动帮你做这些) 如果切顺利你现在就拥有了个可以被你服务器使用有认证书keystore文件 2、配置tomcat 第 2个大步骤是把secure 配置在$CATALINA_HOME/conf/server.xml文件里$CATALINA_HOME代表安装Tomcat目录个例子是SSL连接器<Connector>元素被包括在和Tomcat起安装缺省server.xml文件里它看起来象是这样: $CATALINA_HOME/conf/server.xml <-- Define a SSL Coyote HTTP/1.1 Connector _disibledevent="123456")有关其它各种选项详细信息可查阅Server Configuration Reference 在完成这些配置更改后必须象重新启动Tomcat然后你就可以通过SSL访问Tomcat支持任何web应用只不过指令需要像下面这样: http://localhost:8443
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: