当前位置:文档之家› Tomcat6的SSL双向验证

Tomcat6的SSL双向验证

Tomcat6的SSL双向验证
Tomcat6的SSL双向验证

Tomcat6的SSL双向验证及X509v3证书制作

一、概述

关于Tomcat的SSL配置的文章网上已有很多,但是大多是单向验证,本文只是一个完成双向认证的配置,并

二、环境准备

apache-tomcat-6.0.20

下载apache-tomcat-6.0.20-windows-x86.zip版本。安装到本地,如:D:\Server\apache-tomcat-6.0.20。本文中使用$Tomcat_Home指代Tomcat 安装目录,此处指向D:\Server\apache-tomcat-6.0.20。

OpenSSL

下载openssl-0.9.8k_WIN32.zip,该工具用于生成证书。安装到本地,如D:\Openssl。本文中使用$OpenSSL_Home指代OpenSSL的安装目录,指向D:\Openssl。

三、服务器证书制作

生成CA 证书的RSA 密钥对

openssl genrsa -out ca-key.pem 1024

genrsa 用于生成RSA 密钥对的OpenSSL 命令

-out 令生成的密钥对保存到文件ca-key.pem

1024 RSA 模数位数,在一定程度上表征了密钥强度

生成待签名证书

openssl req -new -out ca-req.csr -key ca-key.pem -config https://www.doczj.com/doc/2c6756603.html,f

req 用于生成证书请求的OpenSSL 命令

-new 生成一个新的证书请求

-key 指定ca-key.pem 为证书所使用的密钥对文件。

创建CA自签名证书

openssl x509 -req -in ca-req.csr -extfile https://www.doczj.com/doc/2c6756603.html,f -extensions v3_ca -signkey

ca-key.pem -out ca-cert.pem

生成服务器密钥对,注意keyPass,storepass 要一样

keytool -genkey -alias tomcat -validity 3650 -keyalg RSA -keysize 1024 -keypass

abcdef -storepass abcdef -dname

"cn=192.168.1.1,ou=department,o=company,l=Beijing,st=Beijing,c=CN" -keystore tomcat.jks

生成待签名证书

keytool -certreq -alias aisce -sigalg MD5withRSA -file c:\root\tomcat-req.csr -keypass abcdef -keystore tomcat.jks -storepass abcdef

创建CA签名的服务器证书

openssl x509 -req -in tomcat-req.csr -extfile https://www.doczj.com/doc/2c6756603.html,f -extensions usr_cert -CA

ca-cert.pem -CAkey ca-key.pem -out tomcat-cert.pem –CAcreateserial

把CA签名后的server端证书导入keystore,先导入根证书,再导入服务器证书keytool -import -v -trustcacerts -noprompt -storepass abcdef -alias root_ca -file

ca-cert.pem -keystore tomcat.jks

keytool -import -v -storepass abcdef -alias tomcat -file tomcat-cert.pem -keystore tomcat.jks

导入信任的CA根证书到Java位置,用作将来对客户端证书的验证

keytool -import -v -trustcacerts -storepass changeit -alias root_ca -file ca-cert.pem

-keystore cacerts.jks

创建客户端用户证书

产生用户一密钥对

openssl genrsa -out user1-key.pem 1024

生成待签名证书

openssl req -new -out user1-req.csr -key user1-key.pem -config https://www.doczj.com/doc/2c6756603.html,f

创建用户一证书

openssl x509 -req -in user1-req.csr -extfile https://www.doczj.com/doc/2c6756603.html,f -extensions usr_cert -CA

ca-cert.pem -CAkey ca-key.pem -out user1-cert.pem

将客户端证书转换为PKCS12格式

openssl pkcs12 -export -in user1-cert.pem -out user1-cert.p12 -inkey user1-key.pem 点将生成的用户客户端证书导入IE浏览器

Tomcat SSL 服务端配置

修改$Tomcat_Home/conf/server.xml

maxThreads="150" scheme="https" secure="true"

clientAuth="true" sslProtocol="TLS"

keystoreFile="tomcat.jks" keystorePass="secret" enableLookups="true" truststoreFile="cacerts.jks" truststorePass="secret" />

有的Tomcat版本配置如下

port="8443" SSLEnabled="true"

maxThreads="150" scheme="https" secure="true"

clientAuth="true" sslProtocol="TLS"

keystoreFile="tomcat.jks" keystorePass="abcdef"

truststoreFile="cacerts.jks" truststorePass="abcdef" />

启动Tomcat

用IE浏览器访问主机地址https://192.168.1.1

确定后可访问相关页面

SSL证书验证过程解读

SSL证书验证过程解读及申请使用注意事项 SSL证书和我们日常用的身份证类似,是一个支持HTTPS网站的身份证明,由受信任的数字证书颁发机构CA(如沃通CA)验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能。SSL证书里面包含了网站的域名,证书有效期,证书的颁发机构以及用于加密传输密码的公钥等信息,由于公钥加密的密码只能被在申请证书时生成的私钥解密,因此浏览器在生成密码之前需要先核对当前访问的域名与证书上绑定的域名是否一致,同时还要对证书的颁发机构进行验证,如果验证失败浏览器会给出证书错误的提示。 本文将对SSL证书的验证过程以及个人用户在访问HTTPS网站时,对SSL证书的使用需要注意哪些安全方面的问题进行描述。 一、数字证书的类型 实际上,我们使用的数字证书分很多种类型,SSL证书只是其中的一种。证书的格式是由X.509标准定义。SSL证书负责传输公钥,是一种PKI(Public Key Infrastructure,公钥基础结构)证书。 我们常见的数字证书根据用途不同大致有以下几种: 1、SSL证书:用于加密HTTP协议,也就是HTTPS。 2、代码签名证书:用于签名二进制文件,比如Windows内核驱动,Firefox插件,Java 代码签名等等。 3、客户端证书:用于加密邮件。 4、双因素证书,网银专业版使用的USB Key里面用的就是这种类型的证书。 这些证书都是由受认证的证书颁发机构CA(Certificate Authority)来颁发,针对企业与个人的不同,可申请的证书的类型也不同,价格也不同。CA机构颁发的证书都是受信任的证书,对于SSL证书来说,如果访问的网站与证书绑定的网站一致就可以通过浏览器的验证而不会提示错误。 二、SSL证书申请与规则 SSL证书可以向CA机构通过付费的方式申请,也有CA机构提供免费SSL证书如沃通CA。 CA机构颁发的证书有效期一般只有一年到三年不等,过期之后还要再次申请,在ssl 证书应用中企业网站应用较多。但是随着个人网站的增多,以及免费SSL证书的推出,个人网站ssl证书应用数量也在飞速增加。在百度开放收录https网站后,预计https网站将迎来井喷。 在申请SSL证书时需要向CA机构提供网站域名,营业执照,以及申请人的身份信息等。网站的域名非常重要,申请人必须证明自己对域名有所有权。此外,一个证书一般只绑定一个域名,比如你要申请域名时绑定的域名是https://www.doczj.com/doc/2c6756603.html,,那么只有在浏览器地址是

SSL与TLS 区别和联系 ssl证书类型区分

SSL与TLS 区别和联系 ssl证书类型区 分 什么是ssl SSL:(Secure Socket Layer,安全套接字层),位于可靠的面向连接的网络层协议和应用层协议之间的一种协议层。SSL通过互相认证、使用数字签名确保完整性、使用加密确保私密性,以实现客户端和服务器之间的安全通讯。 SSL协议可分为两层:SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。 什么是tls 安全传输层协议(TLS)用于在两个通信应用程序之间提供保密性和数据完整性。TLS记录协议用于封装各种高层协议。作为这种封装协议之一的握手协议允许服务器与客户机在应用程序协议传输和接收其第一个数据字节前彼此之间相互认证,协商加密算法和加密密钥。该协议由两层组成:TLS 记录协议(TLS Record)和TLS 握手协议(TLS Handshake) Ssl与tls的关系 ,是SSL 3.0的后续版本。在TLS与SSL3.0之间存在着显著的差别,主要是它们所支持的加密算法不同,所以TLS与SSL3.0不能互操作。 SSL是Netscape开发的专门用户保护Web通讯的,目前版本为3.0。最新版本的TLS(Transport Layer Security,传输层安全协议)是IETF(Internet Engineering Task Force,Internet工程任务组)制定的一种新的协议。最新版本的TLS 1.0,它建立在SSL 3.0协议规范之上,是SSL 3.0的后续版本。两者差别极小,可以理解为SSL 3.1。 Ssl与tls的功能 1. 在互联网上传输加密过的资料以达到防窃取的目的。 2. 保持从端点A到端点B的传送路途中资料的完整性。 3. 透过SSL证书内的公共金钥加密资料传输至服务器端,服务器端用私密金钥解密来证明自己的身份。 何谓有效无效ssl(tls)证书?

实验4 SSL加密HTTP应用

实验4 HTTP应用SSL [实验目的] 理解SSL(Security Socket Layer)安全机制原理; 掌握数字证书应用; 利用SSL加密HTTP通道加强IIS安全。 [实验环境] windows 2003 操作系统微软证书服务软件,IIS web站点,ASP功能。 [相关知识] SSL(加密套接字协议层)位于HTTP层和TCP层之间,建立用户与服务器之间的加密通信,确保所传递信息的安全性。SSL是工作在公共密钥和私人密钥基础上的,任何用户都可以获得公共密钥来加密数据,但解密数据必须要通过相应的私人密钥。使用SSL安全机制时,首先客户端与服务器建立连接,服务器把它的数字证书与公共密钥一并发送给客户端,客户端随机生成会话密钥,用从服务器得到的公共密钥对会话密钥进行加密,并把会话密钥在网络上传递给服务器,而会话密钥只有在服务器端用私人密钥才能解密,这样,客户端和服务器端就建立了唯一的安全通道。 建立了SSL安全机制后,只有SSL允许的客户才能与SSL允许的Web站点进行通信,并且在使用URL资源定位器时,输入https:// ,而不是http://。 [实验步骤]: 1、安装证书服务(windows组件); 2、建立WEB站点、配置的IIS管理器来申请一个数字证书。iis配置“目录安全性”——“安 全通信”——“服务器证书”; 3、 IIS里的WEB站点“ASP证书页面”最终合成提交的证书; http://localhost/CertSrv/default.asp 。将证书复制到文件,向CA提交申请; 4、证书服务CA中心来颁发证书,并生成证书文件*.cer; 5、 WEB站点启用证书(处理挂起的证书请求),并打开SSL通道; 6、验证HTTPS://。 参考步骤如下: 1、安装证书服务(windows组件); 以WIN2000服务器首先需要在控制面板里的填加删除WINDOWS组件中去安装证书服务,这个服务在默认安装中是没有安装在系统里的,需要安装。

ssl 协议实现

SSL协议的分析及实现 文章出处:计算机与信息技术作者:令晓静田红心发布时间:2005-11-01 (西安电子科技大学ISN国家重点实验室,中国西安,710071) 1引言 SSL是一种在客户端和服务器端之间建立安全通道的协议。SSL一经提出,就在Internet上得到广泛的应用。SSL最常用来保护Web的安全。为了保护存有敏感信息Web的服务器的安全,消除用户在Internet上数据传输的安全顾虑。 OpenSSL是一个支持SSL认证的服务器.它是一个源码开放的自由软件,支持多种操作系统。OpenSSL软件的目的是实现一个完整的、健壮的、商业级的开放源码工具,通过强大的加密算法来实现建立在传输层之上的安全性。OpenSSL包含一套SSL协议的完整接口,应用程序应用它们可以很方便的建立起安全套接层,进而能够通过网络进行安全的数据传输。 2 SSL协议概述 SSL 是Secure socket Layer英文缩写,它的中文意思是安全套接层协议,指使用公钥和私钥技术组合的安全网络通讯协议。SSL协议是网景公司(Netscape)推出的基于 WEB应用的安全协议,SSL协议指定了一种在应用程序协议(如Http、Telenet、NMTP和FTP等)和TCP/IP协议之间提供数据安全性分层的机制,它为TCP/IP连接提供数据加密、服务器认证、消息完整性以及可选的客户机认证,主要用于提高应用程序之间数据的安全性,对传送的数据进行加密和隐藏,确保数据在传送中不被改变,即确保数据的完整性。 SSL 以对称密码技术和公开密码技术相结合,可以实现如下三个通信目标:(1)秘密性: SSL客户机和服务器之间传送的数据都经过了加密处理,网络中的非法窃听者所获取的信息都将是无意义的密文信息。 ( 2)完整性: SSL利用密码算法和散列(HASH)函数,通过对传输信息特征值的提取来保证信息的完整性,确保要传输 的信息全部到达目的地,可以避免服务器和客户机之间的信息受到破坏。 (3)认证性:利用证书技术和可信的第三方认证,可以让客户机和服务器相互识别对方的身份。为了验证证书持有者是其合法用户(而不是冒名用户), SSL要求证书持有者在握手时相互交换数字证书,通过验证来保证对方身份的合法性。 3 SSL协议的体系结构 SSL协议位于TCP/IP协议模型的网络层和应用层之间,使用TCP来提供一种可靠的端到端的安全服务,它是客户/服务器应用之间的通信不被攻击窃听,并且始终对服务器进行认证,还可以选择对客户进行认证。SSL协议在应用层通信之前就已经完成加密算法、通信密钥的协商以及服务器认证工作,在此之后,应用层协议所传送的数据都被加密。SSL实际上是共同工作的两层协议组成,如图1所示。从体系结构图可以看出SSL安全协议实际是SSL握手协议、SSL修改密文协议、SSL警告协议和SSL记录协议组成的一个协议族。

如何通过SSL证书开启服务器443端口

如何通过SSL证书开启服务器443端口 前阵子遇到个问题,因为我们的网站是外贸网站,需要通过Paypal付款,但是,客户通过PP付款之后居然不能生成订单号,后来发现服务器的443端口是关闭状态,好了,问题来了:如何开启服务器的443端口呢? 深圳国际快递https://www.doczj.com/doc/2c6756603.html,在这里分享一下开启443端口的经验: 第一:当然是配置硬件,把防火墙令443端口放行!具体办法朋友可以去百度一下哈,其实落伍里面也有! 第二,创建SSL证书,我个人觉得这个比较重要,下面把具体的方法分享给一下。 #LoadModule ssl_module modules/mod_ssl.so 的#去掉,开启SSL功能。 然后我们要新建一个SSL虚拟目录,监听443端口 一般情况下我使用centos的虚拟列表都会放到/etc/httpd/conf.d/目录下 依旧是在这个目录下新建一个ssl.conf,并且在你的网站列表新建一个ssl文件夹,我的习惯是/var/www/vhosts/ssl 将你的server.crt和ca-server.crt文件以及你原来生成的server.key文件一起上传到ssl文件夹内。 进入/etc/httpd/conf.d/ 输入 vi ssl.conf 使用vi编辑器编辑ssl.conf内容如下 DocumentRoot "/var/www/vhosts/site_dir/httpdocs" SSLEngine on SSLProtocol all -SSLv2 SSLCertificateFile /var/www/vhosts/ssl/server.crt SSLCertificateKeyFile /var/www/vhosts/ssl/server.key SSLCACertificateFile /var/www/vhosts/ssl/ca-server.crt SetEnvIf User-Agent ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 然后将你的域名强制https进行访问 将 RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 当然,这个证书是在自己服务器上创建的,自己使用还是可以的,但是在浏览器中,这

使用SSL加密远程桌面连接

使用SSL加密远程桌面连接 windows的远程桌面功能操作服务器有一定的安全隐患,也就是说数据传输的安全级不够高,虽然传输信息进行了一定的加密,但黑客高手还是很容易将其还原成本来信息的。其实通过一定加密和认证手段完全可以打造安全的远程桌面,本文讲得是通过SSL加密远程桌面的方法来加强VPS的安全性。 提示:如果你使用的是windows2003,但是没有安装最新的SP1补丁的话还是不能够使用SSL加密的远程桌面认证方式。因此建议各个公司马上将服务器升级到windows2003+SP1。 一、安装证书颁发机构: 首先要将服务器升级到最新版本windows2003,然后还需要通过windows update或网站将service packet1补丁包安装。因为只有安装了SP1的indows2003才具备通过SSL加密的远程桌面功能。以下所有操作都是对服务器而言的,只有服务器经过设置容许支持SSL加密认证,客户端才可以通过远程桌面访问程序正常连接。 安装证书颁发机构(证书服务)的过程参照“SERVER2003证书颁发机构安装与配置”一文章。 二、申请证书: IIS启动后我们就可以通过网页来申请证书了。 第一步:打开证书颁发机构所在服务器的IE浏览器,在地址栏处输入 http://ip/certsrv/例如服务器地址为192.168.1.1,则输入 http://192.168.1.1/certsrv 如果IIS工作正常,证书服务安装正确的话会出现microsoft证书服务界面。 我们在该界面中选择“申请一个证书”。 第三步:在申请证书界面选择“高级证书申请”。

在高级证书申请界面选择“创建并向此CA提交一个申请”。 在高级证书申请填写界面需要我们修改的地方比较多,首先输入姓名,这个姓名要填写服务器的IP地址。 提示:如果高级证书姓名填写的是其他信息,那么在配置SSL加密认证时会出现配置信息与服务器名不符合的错误。所以务必填写服务器的IP地址。 第六步:电子邮件和公司,部门,地区等信息随意填写。 第七步:需要的证书类型选择“服务器身份验证证书”。 第八步:密钥选项设置为“创建新密钥集”。 第九步:密钥用户设置为“交换”。 第十步:将最下方的“标记密钥为可导出”与“将证书保存在本地计算机存储”前打对勾。至此高级证书申请参数填写完毕。

用SSL安全协议实现Web服务器的安全性

用SSL安全协议实现WEB服务器的安全性 现今SSL安全协议广泛地用在Internet和Intranet的服务器产品和客户端产品中,用于安全地传送数据,集中到每个WEB服务器和浏览器中,从而来保证来用户都可以与Web 站点安全交流。本文将详细介绍SSL安全协议及在WEB服务器安全的应用。 一、SSL安全协议在WEB服务器中的应用 1、我们为提供具有真正安全连接的高速安全套接层SSL)交易,可以将PCI卡形式的SSL卸载(offloading)设备直接安装到Web服务器上,这种做法的好处是:(1)从客户机到安全Web服务器的数据安全性; (2)由于卸载工具执行所有SSL处理过程并完成TCP/IP协商,因此大大提高了吞吐量; (3)简化了密钥的管理和维护。 安全性加大在实现向电子商务和其它安全Web站点的服务器增加SSL加速和卸载设备的结果是提高了交易处理速度。但是由于设备是作为应用被安装在网络上的,因此设备与安全服务器之间的数据是未加密的。将SSL卸载设备作为PCI扩展卡直接安装在安全服务器上,保证了从浏览器到服务器的连接安全性。 SSL可以用于在线交易时保护象信用卡号以及股票交易明细这类敏感信息。受SSL保护的网页具有"https"前缀,而非标准的"http"前缀 2、新型专用网络设备SSL加速器可以使Web站点通过在优化的硬件和软件中进行所

有的SSL处理来满足性能和安全性的需要。 当具有SSL功能的浏览器(Navigator、IE)与Web服务器(Apache、IIS)通信时,它们利用数字证书确认对方的身份。数字证书是由可信赖的第三方发放的,并被用于生成公共密钥。 当最初的认证完成后,浏览器向服务器发送48字节利用服务器公共密钥加密的主密钥,然后Web服务器利用自己的私有密钥解密这个主密钥。最后,浏览器和服务器在会话过程中用来加解密的对称密钥集合就生成了。加密算法可以为每次会话显式地配置或协商,最广泛使用的加密标准为"数据加密标准"(DES)和RC4。 一旦完成上述启动过程,安全通道就建立了,保密的数据传输就可以开始了。尽管初始认证和密钥生成对于用户是透明的,但对于Web服务器来说,它们远非透明。由于必须为每次用户会话执行启动过程,因而给服务器CPU造成了沉重负担并产生了严重的性能瓶颈。据测试,当处理安全的SSL会话时,标准的Web服务器只能处理1%到10%的正常负载。 二、应作的处理 密码在加解密数据时,使用两种类型的密钥。私有密钥被发给各实体并且永远不向外透露,公共密钥可以任意分发。这两种密钥对于认证过程是必不可少的。使用公钥加密的数据不能使用同一个密钥进行解密,必须使用私有密钥进行解密。 SSL使用复杂的数学公式进行数据加密和解密,这些公式的复杂性根据密码的强度不同

Linux下利用openssl 生成SSL证书步骤

Linux下利用openssl 生成SSL证书步骤 1、概念 首先要有一个CA根证书,然后用CA根证书来签发用户证书。 用户进行证书申请:一般先生成一个私钥,然后用私钥生成证书请求(证书请求里应含有公钥信息),再利用证书服务器的CA根证书来签发证书。 2、后缀详解 .key格式:私有的密钥 .csr格式:证书签名请求(证书请求文件),含有公钥信息,certificate signing request 的缩写 .crt格式:证书文件,certificate的缩写 .crl格式:证书吊销列表,Certificate Revocation List的缩写 .pem格式:用于导出,导入证书时候的证书的格式,有证书开头,结尾的格式 3、添加 index.txt 和 serial 文件 cd /etc/pki/CA/ touch /etc/pki/CA/index.txt touch /etc/pki/CA/serial echo 01 > /etc/pki/CA/serial 4、CA根证书的生成 4.1 生成CA私钥(.key) openssl genrsa -out ca.key 2048 [root@CA]# openssl genrsa -out ca.key 2048 Generating RSA private key, 2048 bit long modulus .............+++ .....+++ e is 65537 (0x10001) 4.2 生成CA证书请求(.csr) openssl req -new -key ca.key -out ca.csr [root@CA]# openssl req -new -key ca.key -out ca.csr You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value,

IBM HTTP Server 服务器证书配置SSL证书

IBM HTTP Server 服务器证书安装配置指南 深圳市沃通电子商务服务有限公司 2007-09

一、环境说明 服务器端:Websphere4.0(solaris8) 客户端:Win2000 p IE5.0 二、证书申请下载 1.产生证书请求 密钥文件由密钥管理器(ikeyman)产生的,在Solaris系统操作步骤如下: 2.1新建密钥数据库 a、启动密钥管理器: #./ikeyman b、点击密钥管理器的”key database file”,选择新建。接受创建默认的key.kdb或输入相应选项,点击OK

c、设置密钥口令,注意口令强度,最好是至少8位,至少包括一个大写字母,一个小写字母和一个数字。选定将口令保存到文件中选项,这样会产生一 个key.sth文件,点击OK

2.2下载安装Web服务器证书 产生证书请求 选择“personal certificate requests”,在对话框右边选择“New“,创建新的密钥和证书请求,在公用名称中填入从CFCA获得的参考号,其他依据实际情况填写,将生成的证书申请请求(CSR文件)提交给CFCA。 申请标准版时,生成CSR时按如下方式填写: 组织名(Organazation 简称“O”):请输入您的单位名称的英文简称。 组织单位名(Organization Unit Name 简称“OU”):请输入CFCA standard server。 通用名(Common Name 简称“CN”):请输入您的域名。 国家名(Country Name,简称“C”):输入CN,代表中国。 省或洲际名(State or Province Name)输入省份名称,根据实际情况填写如Beijing。 地方名(Locality Name)输城市名称,根据实际情况填写如Beijing。 申请高级版时,生成CSR时按如下方式填写: 组织名(Organazation 简称“O”):请输入您的单位名称的英文简称。

SSL协议及其应用

SSL协议及其应用 文/关振胜 目前,随着Internet的快速发展,互联网上的信息安全越来越引起人们的关注。特别是近年来网上银行、电子商务和电子政务的发展,如何保证传输信息,特别是交易信息的保密性、完整性已成为继续解决的问题。安全套接层协议(Se curity Socket Layer Protocol , 简称SSL)是Internet上进行保密通信的一个安全协议。 一、 SSL协议概述 安全套接层协议SSL是网景公司(Netscape)提出的基于公钥密码机制的网络安全协议,用于在客户端浏览器软件与Web服务器之间建立一条安全通道,实现Internet上信息传送的保密性。它包括服务器认证、客户认证(可选)、SS L链路上的数据完整性和SSL链路上数据保密性。现在国内外一些对保密性要求较高的网上银行、电子商务和电子政务等系统大多数是以SSL协议为基础建立的,SSL协议已成为Web安全方面的工业标准。目前广泛采用的是SSL v3版。S SL提供的面向连接的安全性作用,具有以下三个基本功能:(1)连接是秘密的,在初始握手定义会话密钥后,用对称密码(例如用DES)加密数据。(2)连接是可认证的,实体的身份能够用公钥密码(例如RSA、DSS等)进行认证。(3)连接是可靠的,消息传输包括利用安全Hash函数产生的带密钥MAC(Message A uthentication Code :报文鉴别码) 二、SSL的组成 SSL协议由两层组成,分别是握手协议层和记录协议层,握手协议建立在记录协议之上,此外还有警告协议,更改密码说明协议和应用数据协议等对话协议和管理提供支持的子协议。其组成如图一所示: 图一:SSL协议的组成及其在TCP/IP中的位置 在上图中的每一层,三者可以包括长度、描述和内容字段。SSL发出消息是将数据分为可管理的块、压缩、使用MAC和加密并发出加密的结果。接受消息需要解密、验证、解压和重组,再把结果发往更高一层的客户。

SSL证书配置

1.确定配置好java的环境变量 2.生成密钥库 新建一个密钥临时目录/home/genkey,并cd到/home/genkey 参数alias的为密钥标识第2、3、4步的命令中的alias必须完全一致 输入以下命令: keytool -genkey -alias tomcat -keyalg RSA -keysize 1024 -validity 3650 -keypass changeit -storepass changeit -keystore server.keystore -validity 3600 按照提示输入信息,第一个名字与姓氏必须为localhost,其他可以随意填写。 执行成功后/home/genkey下生成了一个server.keystore文件。 Tomcat: 3.导出证书 keytool -export -trustcacerts -alias tomcat -file server.cer -keystore server.keystore -storepass changeit 执行成功后/home/genkey下生成了一个server.cer文件。

4.导入到java信任库中 keytool -import -trustcacerts -alias tomcat -file server.cer -keystore /opt/Java/jdk1.6.0_35/jre/lib/security/cacerts -storepass changeit /opt/Java/jdk1.6.0_35修改为服务器java安装目录再执行 5.修改tomcat配置 打开tomcat目录下conf/server.xml,修改keystoreFile及keystorePass WAS: 6.进入was控制台界面

SSL证书工具使用说明

天威诚信SSL证书工具使用说明 天威诚信SSL证书工具专业版,集CSR生成、CSR校验、证书格式转换和证书配置检测于一体,在客户端上即可完成CSR 在线自动生成并能快速校验CSR信息,实现不同证书间的格式互转,快速有效的检测出证书的安装状态,操作简单,易于上手,是SSL证书安装使用过程中不可或缺的得力干将。 一,CSR生成 按照工具提示的信息填写您申请证书的真实信息,点击生成CSR文件。下图为填写示例:

*注:目前主流密钥算法为RSA,长度为2048位,签名算法为SHA256。 通过点击保存私钥文件和CSR文件,保存文件到本地。私钥文件您需要在本地备份并妥善保管,CSR申请文件需要提交给商务人员。 二,CSR校验 字符串校验:您可以打开制作的CSR文件,并把字符串复制到空白框中并点击“验证CSR 文件”。

文件校验:通过添加本地CSR文件并进行验证。 二,证书格式转换 1,PEM转JKS 1,首先准备好server.pem证书文件和server.key私钥文件。 2,将证书签发邮件中的包含服务器证书代码的文本复制出来(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”)粘贴到记事本等文本编辑器中。在服务器证书代码文本结尾,回车换行不留空行,并粘贴中级CA证书代码(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”,每串证书代码之间均需要使用回车换行不留空行),修改文件扩展名,保存包含多段证书代码的文本文件为server.pem文件。 3,在源证书文件中录入server.pem,源私钥文件中录入server.key文件。(如果您的.key 私钥文件没有设置密码,源私钥密码处可以为空) 4,在“目标证书别名”选择中这是JKS文件密钥别名,并在“目标证书密码”中设置JKS 文件密码。

通过HTTPS加密方式访问web service方法

通过HTTPS加密方式访问web service方法 web service在企业应用中常常被用作不同系统之间的接口方式。但是如果没有任何安全机制的话,显然是难以委以重任的。比较直接的web service加密方式就是使用HTTPS 方式(SSL证书加密)加密连接,并且只允许持有信任证书的客户端连接,即SSL双向认证。这样就保证了连接来源的可信度以及数据在传输过程中没有被窃取或篡改。通过HTTPS加密方式访问web service具体方法如下: 【准备工作】 (1)检查JDK的环境变量是否正确。本文使用JDK 1.6 (2)准备web服务器,这里选用TOMCAT 6.0 (3)准备web service服务端和客户端。 【生成证书】 这里用到的文件,这里存放在D:/SSL/文件夹内,其中D:/SSL/server/内的文件是要交给服务器用的,D:/SSL/client/内的文件是要交给客户端用的。 1生成服务端证书 开始-运行-CMD-在dos窗口执行下执行命令: keytool -genkey -v -alias tomcat -keyalg RSA -keystore D:/SSL/server/tomcat.keystore -dname "CN=127.0.0.1,OU=zlj,O=zlj,L=Peking,ST=Peking,C=CN" -validity 3650 -storepass zljzlj -keypass zljzlj 说明: keytool 是JDK提供的证书生成工具,所有参数的用法参见keytool –help -genkey 创建新证书 -v 详细信息 -alias tomcat 以”tomcat”作为该证书的别名。这里可以根据需要修改 -keyalg RSA 指定算法 -keystore D:/SSL/server/tomcat.keystore 保存路径及文件名

OpenSSL来制作证书,在IIS中配置HTTPS(SSL)笔记

info@https://www.doczj.com/doc/2c6756603.html, 使用OpenSSL来制作证书,在IIS中配置HTTPS(SSL)笔记 下载Win32编译的openssl版本0.9.8e. 1.获取IIS证书请求:打开IIS,右键单击【默认网站】,在【目录安全性】选项卡中点击【服务器证书】按钮,【下一步】,【新建证书】,【现在准备证书请求--下一步】,输入【名称】,输入【单位】和【部门】,输入【公用名称】,选择【国家】并输入【省】和【市县】并【下一步】,【下一步】,【下一步】,【完成】,IIS的证书请求已经获取,就是C:\certreq.txt。这里请牢记输入的信息。 2.准备openssl工作环境:把openssl(编译后的版本)解压到D:\OpenSSL-0.9.8e\下, 在bin目录下建立目录demoCA,在demoCA下建立private和newcerts目录, 并新建index.txt,内容为空 如果没有serial文件,则到openssl网站上下载openssl的源文件,解压后,到apps\demoCA下,拷贝serial文件过来,两个目录两个文件都放到新建的 demoCA下。 3.生成自签名根证书: openssl req -x509 -newkey rsa:1024 -keyout ca.key -out ca.cer -days 3650 -config D:\OpenSSL-0.9.8e\https://www.doczj.com/doc/2c6756603.html,f PEM pass phrase: password // 根证书私钥密码 Verifying - Enter PEM pass phrase: password Country Name: CN // 两个字母的国家代号 State or Province Name: HB // 省份名称 Locality Name: WUHAN // 城市名称 Organization Name: Skyworth TTG // 公司名称 Organizational Unit Name: Service // 部门名称 Common Name: https://www.doczj.com/doc/2c6756603.html, // 你的姓名(要是生成服务器端的证书一定要输入域名或者ip地址) Email Address: admin@https://www.doczj.com/doc/2c6756603.html, // Email地址

Nginx 支持SSL加密代理 具体配置方法

Nginx 支持SSL加密代理具体配置方法 一、安装nginx时,需要按照如下方式编译: ./configure --prefix=/home/nginx --with-md5=/usr/lib --with-sha1=/usr/lib --with-cc-opt="- I /usr/include/pcre -I /usr/include/openssl" --with-http_ssl_module make -j10 make install 二、具体配置 1、修改监听端口【https监听端口为443】; listen 443;#ssl端口 listen 80;#用户习惯用http访问,加上80; 2、SSL 配置 upstream cdn_https://www.doczj.com/doc/2c6756603.html, { server 192.168.100.2:80; } server { server_name cdn_https://www.doczj.com/doc/2c6756603.html, include port.conf; ssl on; ssl_certificate ${nginx_install_dir}/conf/server.crt ssl_certificate_key ${nginx_install_dir}/conf/server.key error_page 497 "https://$host$uri?$args"; location / { proxy_pass https://cdn_https://www.doczj.com/doc/2c6756603.html, include proxy.conf; auth_basic "status"; auth_basic_user_file trac.passwd; } } 备注: auth_basic "status";指定认证方式为htpasswd类型,auth_basic_user_file指定password文件为trac.passwd,对应${nginx_install_dir}/conf/trac.passwd。htpasswd是apache里的一个小工具,apt-get install apache2-utils后可以得到它,或者干脆就在这里创建:https://www.doczj.com/doc/2c6756603.html,/htpasswd.php,把生成结果贴到trac.passwd里就可以了。

制作和使用SSL证书

制作和使用SSL证书 在Linux环境下,一般都安装有OPENSSL。下面的内容就是用OPENSSL快速制作root 证书以及客户端证书的步骤和方法。 1、初始准备工作 1)创建一个我们制作证书的工作目录 # mkdir CA # cd CA # mkdir newcerts private 2)制作一个我们创建证书时需要的配置文件,内容可以参考见 # cd CA # vi 3)创建我们自己的证书库的索引 # echo '01' >serial # touch 2、制作一个root证书 执行下面的命令 # openssl req -new -x509 -extensions v3_ca -keyout private/ \ -out -days 3650 -config ./ 在屏幕上会出现如下的交互内容,按照提示相应的信息。注意,一定要记住PEM,这个在以后生成客户端证书时都需要。 Using configuration from ./ Generating a 1024 bit RSA private key .......++++++ ..........................++++++ writing new private key to 'private/' Enter PEM pass phrase:demo Verifying password - Enter PEM pass phrase:demo ----- You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value,

证书, ssl,CA加密与解密实战例子

加密与解密研究学习 编写:laich Openssl RSA 加密与解密 理论 RSA是什么:RSA公钥加密算法是1977年由Ron Rivest、Adi Shamirh和LenAdleman在(美国麻省理工学院)开发的。RSA取名来自开发他们三者的名字。RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。目前该加密方式广泛用于网上银行、数字签名等场合。RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。 OpenSSL是什么:众多的密码算法、公钥基础设施标准以及SSL协议,或许这些有趣的功能会让你产生实现所有这些算法和标准的想法。 实践操作 以Java为例 这是windos7 下Openssl 路径:C:\openssl\bin openssl version -a 先来生成私钥: openssl genrsa -out rsa_private_key.pem 1024

会在bin 目录下生成 rsa_private_key.pem 生成的内容: -----BEGIN RSA PRIVATE KEY----- MIICXAIBAAKBgQDbJkpMThepmY82P4wYACp1OB8e8zE66tGfTpfIQu5a/29O8KkQ UklbVgPKh+rNZHFT6srrr0sFEpbIc0CZc75S4aXd58K9+smVcizgijzKC+y47ggf zVBhXHsaEvEcH+IMAW7VKZ4rhdydYUgP+i+XmBTyhXc9cBhR2LoAuS/mDwIDAQAB AoGABKh2sdKDHD7AVYXaQ3RVcrJjrvO6Wyc8l2dDQKVzjYmaYxIodclZ99AHOpnS +tSkuATolUPfk1cGz3HrsJdON0i02E/44U5DY1gVM1YJdJ5Wxwty1Hd57ph96yjy cmH1Vl0UMRB4Cmaq0bYzpnmv0Ks1+nvMIacl8sE17RYHxqkCQQDtwkbgDHxb9o2E osy/7qCIapSOFui6sJaMCAgMFDOrhv7DRd3BTebVsKrjwJntty9Mr86UeGr+2Pqk FFIzDcO1AkEA6/aD83YRQs8PYEyef1ztdOrS66KTFpgPd/VufaeNaTJgyM8S2jxC uGavl48OJz+OJckrs4BNJ0JMhHbytn3lMwJAMLJc7+C+y9soyyTJCPqoGKizupKI okwu2Yl/lHHCz3v7zCUQMVpyUAw6RCGbpWuinXNYvWIYkBAC7f5Xg6trDQJBAK4w oWAM/NkQ+gzhAvCKrVDuOR5yOZsoTeMEb7ibBC1wXzpeg1BPxAFU7LM5i/01Ub5b L8OnJ02gB9SR6sMFVTkCQAk0W60+Yn4jaXAtvxy9gMDfAeYoVz30quCZXWitc406 QFhQPj8In5dKF4Ku92BamEyzoj5X7OtTdbYCwEpTAbg= -----END RSA PRIVATE KEY----- 根据私钥生成公钥 openssl rsa -in rsa_private_key.pem -out rsa_public_key.pem -pubout 同样会在bin目录下生成rsa_public_key.pem 生成内容: -----BEGIN PUBLIC KEY----- MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDbJkpMThepmY82P4wYACp1OB8e 8zE66tGfTpfIQu5a/29O8KkQUklbVgPKh+rNZHFT6srrr0sFEpbIc0CZc75S4aXd 58K9+smVcizgijzKC+y47ggfzVBhXHsaEvEcH+IMAW7VKZ4rhdydYUgP+i+XmBTy hXc9cBhR2LoAuS/mDwIDAQAB -----END PUBLIC KEY----- 这时候的私钥还不能直接被使用,需要进行PKCS#8编码:

防火墙与WEB应用中SSL的设置

请大家直接在一个WORD文档中完成,文件名为“学号+姓名”,文件格式为: 实验思考题 班级:09电商B2 学号:2009550202 姓名:陈龙 实验内容:防火墙与WEB应用中SSL的设置 实验时间:2012-6-11 实验思考题回答: 1. 防火墙的主要功能是什么? (1)过滤进出网络的数据 (2)管理进出网络的访问行为 (3)封堵某些禁止的业务 (4)记录进出网络的信息和活动 (5)对网络攻击进行检测和告警 2. 防火墙不能对付那些安全威胁,它的局限 性在哪些方面? (1)防火墙难于防内 防火墙的安全控制只能作用于外对内或内对外,即:对外可屏 蔽内部网的拓扑结构,封锁外部网上的用户连接内部网上的重要 站点或某些端口,对内可屏蔽外部危险站点,但它很难解决内部 网控制内部人员的安全问题。即防外不防内。而据权威部门统计 结果表明,网络上的安全攻击事件有70%以上来自内部攻击。 (2)防火墙难于管理和配置,易造成安全漏洞 防火墙的管理及配置相当复杂,要想成功的维护防火墙,要 求防火墙管理员对网络安全攻击的手段及其与系统配置的关系有 相当深刻的了解。防火墙的安全策略无法进行集中管理。一般来 说,由多个系统(路由器、过滤器、代理服务器、网关、堡垒主 机)组成的防火墙,管理上有所疏忽是在所难免的。根据美国财 经杂志统计资料表明,30%的入侵发生在有防火墙的情况下。 (3)防火墙的安全控制主要是基于IP地址的,难于为用户在防火墙 内外提供一致的安全策略。许多防火墙对用户的安全控制主要是 基于用户所用机器的IP地址而不是用户身份,这样就很难为同一

用户在防火墙内外提供一致的安全控制策略,限制了企业网的物理范围。 (4) 防火墙只实现了粗粒度的访问控制 防火墙只实现了粗粒度的访问控制,且不能与企业内部使用的其它安全机制(如访问控制)集成使用,这样,企业就必须为内部的身份验证和访问控制管理维护单独的数据库。 (5). 防火墙不能防范不经过防火墙的攻击。 (6). 防火墙对用户不完全透明,可能带来传输延迟、瓶颈及单点失效。 (7). 防火墙不能完全防止受病毒感染的文件或软件的传输。 (8). 防火墙不能有效地防范数据驱动式攻击。 3. 我国目前的防火墙产品有哪些?请对他们 作简要了解。 瑞星个人防火墙。收费。防护效果非常好。推荐。 天网个人防火墙。收费。防护效果很赞,简单易用,但是很久没更新了,不推荐。 江民个人防火墙。收费。防护不错。不过更新不是太及时。一般推荐。 风云防火墙。免费。防护效果不错。推荐。 4. 建立认证中心CA 应考虑哪些方面的问 题? 所要面临的信息安全问题,包括身份认证、数据传输保密、数据防篡改和操作防抵赖等问题。 5. 中国金融认证中心是一个什么机构?他由 谁建立的,承担什么责任? 中国金融认证中心(China Financial Certification Authority),简称CFCA,是经中国人民银行和国家信息安全管理机构批准成立的国家级权威的安全认证机构,是重要的国家金融信息安全基础设施之一。  中国金融认证中心( China Finance Certification Authority 缩写CFCA ),是由中国人民银行牵头,联合浦发银行,中国工商银行、中国银行、中国农业银行、中国建设银行、交通银行、招商

相关主题
文本预览
相关文档 最新文档